Atualmente podemos dizer que um dos ativos mais valiosos de uma empresa são seus dados, com eles é possÃvel traçar as mais diversas estratégias de vendas, marketing ou até mesmo conhecer melhor os seus clientes e potenciais clientes.
Mas nem sempre essas informações são aproveitadas ao máximo ou até mesmo conhecidas, muitas vezes estão dispersos, espalhados em vários locais diferentes, sem nenhum padrão ou governança.
Para poder utilizar ao máximo os nossos dados podemos utilizar da prática de DataOps.
O que é DataOps?
Derivado do DevOps, o DataOps ou Data Operations é uma metodologia com uma série de práticas, processos e que utilizam de tecnologia e ferramentas para melhorar a velocidade, agilidade e melhora continua no processamento e tratamento de dados.
É aplicada de forma End-to-End, desde a preparação do dado até a criação de dashboads.
É muito importante para auxiliar as empresas a conhecer e utilizar os seus dados.
Com o crescimento da utilização da computação em Nuvem, muitas vezes podemos ficar perdidos em como aplicar essas práticas em determinada plataforma, já que, no DataOps não estamos presos a uma ferramenta especifica, pois o DataOps é um conceito e não um software.
Um dos benefÃcios da adoção de DataOps é juntar o uso das ferramentas de processamento de dados com este conceito junto com princÃpios de governança e segurança.
PrincÃpios do DataOps
Existe uma iniciativa que está sendo apoiada por alguns profissionais/empresas referente a DataOps, seria o site DataOpsManifesto, nele existem uma série de “princÃpios” que o DataOps segue, são eles:
- Satisfaça continuamente o seu cliente: A maior prioridade é satisfazer o cliente por meio da entrega antecipada e contÃnua de insights analÃticos valiosos de alguns minutos a semanas.
- Valor do trabalho analÃtico: A principal medida do desempenho da análise de dados é o grau em que as análises são entregues, incorporando dados precisos, a bases de dados e sistemas robustos.
- Abrace a mudança: São acolhidas as necessidades dos clientes e adotadas para gerar vantagem competitiva. O método de comunicação mais eficiente, eficaz e ágil com os clientes é a conversa face a face.
- É um esporte em equipe: As equipes analÃticas sempre terão uma variedade de funções, habilidades, ferramentas favoritas e tÃtulos. Uma diversidade de origens e opiniões aumenta a inovação e a produtividade.
- Interações diárias: Clientes, equipes analÃticas e operações devem trabalhar juntos diariamente durante todo o projeto.
- Auto-organização: Os melhores insights analÃticos, algoritmos, arquiteturas, requisitos e designs surgem de equipes auto-organizadas.
- Reduzir o heroÃsmo: À medida que o ritmo e a amplitude da necessidade de insights analÃticos aumentam, as equipes analÃticas devem se esforçar para reduzir o heroÃsmo e criar equipes e processos de análise de dados sustentáveis e escaláveis.
- Reflita: As equipes analÃticas devem ajustar seu desempenho operacional refletindo, em intervalos regulares, sobre o feedback fornecido por seus clientes, por eles mesmos e pelas estatÃsticas operacionais.
- Códigos: As equipes analÃticas usam uma variedade de ferramentas individuais para acessar, integrar, modelar e visualizar dados. Fundamentalmente, cada uma dessas ferramentas gera código e configuração que descrevem as ações realizadas nos dados para fornecer insights.
- Orquestração: Orquestração de dados, ferramentas, códigos, ambientes e equipes de trabalho são fatores-chave para o sucesso dos projetos de análise de dados.
- Faça tudo ser reproduzÃvel: São necessários resultados reproduzÃveis e é importante o versionamente de tudo: dados, configurações de hardware e software, código e configurações especÃficas de cada ferramenta utilizada.
- Ambientes descartáveis: É importante minimizar o custo para os membros das equipes de análise de dados fazerem testes e experimentos, proporcionando-lhes facilidade de criar ambientes técnicos descartáveis, isolados e seguros que reflitam o ambiente de produção.
- Simplicidade: A atenção contÃnua à excelência técnica e ao bom design aumenta a agilidade; bem como a simplicidade – a arte de maximizar a quantidade de trabalho não feito – é essencial.
- Análise de dados como se fosse uma fábrica: Os pipelines de análise de dados são análogos à s linhas de fabricação enxuta. Um conceito fundamental de DataOps é o foco no pensamento processual destinado a alcançar eficiência contÃnua na construção de insights analÃticos.
- A qualidade é primordial: Os pipelines de análise de dados devem ser construÃdos de forma que seja possÃvel detectar automaticamente erros no código, configuração e dados, e devem fornecer feedback contÃnuo aos operadores para evitar erros.
- Monitorar a qualidade e o desempenho: O objetivo é ter medidas de desempenho e qualidade que sejam monitoradas continuamente para detectar variações inesperadas e gerar estatÃsticas operacionais.
- Reuso: Um aspecto fundamental da eficiência de fabricação de insights analÃticos é evitar a repetição de trabalhos anteriores do indivÃduo ou da equipe.
- Melhorar os tempos dos ciclos: É importante minimizar o tempo e o esforço para transformar a necessidade de um cliente em uma idéia analÃtica, criá-la em desenvolvimento, liberá-la como um processo de produção repetÃvel e, finalmente, refatorar e reutilizar esse produto.
Hoje abordaremos como podemos aplicar o DataOps na Google Cloud Platform, quais componentes melhor se encaixam em cada umas das etapas do processamento de dados:
1 - Orquestração de pipeline de dados: no DataOps é recomendado que os processos estejam bem orquestrados. Para esta etapa podemos utilizar dentro do GCP:
- Cloud Composer: Um serviço de orquestração de fluxos de trabalho totalmente gerenciado criado no Apache Airflow.
2 - Monitoramento e alertas: um dos objetivos do DataOps é ter medidas de desempenho e qualidade que sejam monitoradas continuamente para detectar variações inesperadas e gerar estatÃsticas operacionais.
Para esta etapa podemos utilizar dentro do GCP:
- Cloud Monitoring: Serviço de monitoramento que permite acessar informações sobre o desempenho, a disponibilidade e a integridade dos aplicativos e da infraestrutura.
- Cloud Logging: Serviço de gerenciamento de registros em tempo real e totalmente gerenciado com armazenamento, pesquisa, análise e alertas em escala de exabytes.
3 - Data Analytics: Processo de examinar conjuntos de dados para encontrar tendências e tirar conclusões sobre as informações que eles contêm.
Para esta etapa podemos utilizar dentro do GCP:
- BigQuery: Data warehouse em várias nuvens sem servidor, altamente escalonável e econômico, desenvolvido para agilizar seus negócios.
- Looker: Plataforma de inteligência de negócios para exploração e descoberta de dados.
- Google Data Studio: Ferramenta para converter dados em relatórios e painéis informativos personalizáveis.
- Cloud AI Services: Serviços de IA do GCP.
4 - Data Preparation: Processo de reunir, combinar, estruturar e organizar dados para que possam ser usados em aplicações de business intelligence (BI), analytics e visualização de dados.
Para esta etapa podemos utilizar dentro do GCP:
- Data Catalog: O Data Catalog é um serviço de gerenciamento de metadados totalmente gerenciado e escalonável.
- Cloud Dataprep: Um serviço inteligente de dados na nuvem para exploração visual, limpeza e preparação de dados para análise e machine learning.
- Cloud DataForm: Serviço que permite construir em pipelines SQL no BigQuery sem escrever código ou gerenciar infraestrutura.
5 - Data Integration: Processo de combinar dados de vários sistemas de origem para criar conjuntos unificados de informações para usos operacionais e analÃticos.
Para esta etapa podemos utilizar dentro do GCP:
- Cloud Dataflow: Processamento unificado de dados de stream e em lote, sem servidor, rápido e econômico.
- Cloud Data Fusion: Integração de dados nativos da nuvem totalmente gerenciada e em qualquer escala.
6 - Data Capture: Etapa de coleta de dados, podendo ser em Batch ou Streaming.
Para esta etapa podemos utilizar dentro do GCP:
- Pub/Sub: O Pub/Sub (Publish/Subscribe) é um serviço de mensagens assÃncronas do GCP.
Permite armazenamento e entrega de mensagens em formato de tópicos e assinaturas.
7 - Development: O DataOps incentiva as equipes analÃticas a usarem ferramentas para poder gerenciar e versionar o código.
Para esta etapa podemos utilizar dentro do GCP:
- Cloud Source Repositories: Repositórios Git privados e repletos de recursos, hospedados no Google Cloud Platform.
8 - Deployment : No DataOps é importante o movimento continuo do código, configuração e processos dos ambientes de desenvolvimento para a produção.
Para esta etapa podemos utilizar dentro do GCP:
- Cloud Deployment Manager: serviço de implantação de infraestrutura que automatiza a criação e o gerenciamento dos recursos do Google Cloud.
Mas é sempre importante lembrar que para atingir o objetivo desejado, a equipe de DataOps deve aderir aos princÃpios de governança e segurança de dados e não somente no principio técnico as ferramentas usadas.
Referencias:
https://dataopsmanifesto.org/pt-pt/