Escrito por Tomaz Lanfredi Lago,
4 minutos de leitura
Seu projeto de data science vai falhar se você não investir em data engineering
Engenharia de dados é o alicerce para todos os projetos orientados a dados hoje em dia
No livro “Big Tech”, Evgeny Morozov traz uma visão bem alarmista do cenário do monopólio de dados e da transmissão da informação, por meio dos gigantes da tecnologia, como Google e Facebook. Mas, apesar da escrita em tom de distopia realista, quem vive essa realidade compreende que não são apenas as Big Techs que se aproveitam do volume de dados que podemos coletar e armazenar. Mesmo porque o custo de armazenamento de dados, desde que Cloud Computing se tornou algo cotidiano dentro das organizações, não é mais um empecilho na visão financeira nem tecnológica.
Então, executivos de todos os segmentos começaram a investir em projetos de big data e data science para tomar decisões a partir de dados, estar à frente dos concorrentes e, quem sabe, até criar um novo modelo de negócio ou oferta a partir dos insights que esses projetos podem gerar. Porém, por que Nick Heudecker, analista de dados da Gartner, afirma que 85% dos projetos do gênero são cases de insucesso? Boa parte desses problemas são resultantes da falha ou falta de um profissional ou equipe focada em data engineering no projeto.
Quando falamos sobre fracassos em projetos de big data e data science, existem quatro principais razões, segundo Andy Patrizio: integrações de dados pobres; gap de habilidades técnicas e de negócios; gaps de gerações tecnológicas e limitações de arquiteturas de software; e metas indefinidas. Dessas, apenas as metas indefinidas podem ser solucionadas sem um profissional de engenharia de dados. Para corrigir as outras três falhas, é necessário o apoio da área ou de profissionais exclusivos neste papel para o seu projeto.
Leia também: Engenheiro de dados, por que esse profissional é tão relevante em um projeto de data science?
Logo, antes de prosseguir, devemos deixar claro o que a área de engenharia de dados faz. Assim, para termos uma fonte confiável, trazemos a definição da Gartner (em tradução livre): “A principal responsabilidade dos engenheiros de dados é a de construir pipelines de dados que fornecem informações de qualidade prontas para análise. A construção de pipelines de dados geralmente exige múltiplas interações. Isso envolve o enriquecimento e a integração de datasets, o que é feito para construir uma entrada de dados significativa em apoio ao desenvolvimento do modelo. Requer um forte foco na integração, modelagem, otimização, qualidade, governança e segurança de dados.”
Voltando aos nossos problemas, vamos entendê-los e trazer em que contexto a engenharia de dados favorece o projeto.
Integrações de dados pobres
O papel de enriquecer os dados originados em diversos sistemas (como ERP, contábil, RH, mídias sociais, entre outros) pode ser simples, como o cruzamento de informações entre os dois ou mais sistemas, ou complexo, como a utilização de algoritmos de machine learning para clusterização dos dados.
Outro ponto extremamente importante é o de garantir a qualidade do dado na entrega, com tratamentos de nulos e dados inválidos para o formato que está sendo trabalhado. Esses tipos de atividades são complexas do ponto de vista técnico e tiram o foco estratégico do time de ciência de dados, que deveria estar pensando em negócio.
Gaps de habilidades técnicas e de negócios
O profissional de ciência de dados é considerado um unicórnio, por ser capaz de unir três importantes conhecimentos: de negócios, de estatísticas e de programação. Mas, após o processamento da hipótese do time de ciência de dados, precisamos entregar essa informação para os times de produto, gerenciais e executivos.
O CI/CD (continuous integration/continous deployment) é um processo bem conhecido pelos times de desenvolvimento e operações e faz parte dos princípios de DevOps. Porém, ao falar de CI/CD em dados, estamos falando de um pipeline que transforma o dataset de entrega do time de data science em algo pronto para consumo para os times de outras áreas, nos tipos de repositórios que esses times necessitam, de forma automatizada, controlada e gerenciada.
Gaps de gerações tecnológicas e de arquiteturas de software
Existem diversas evoluções tecnológicas e quesitos de arquitetura de software que devem constantemente ser considerados. Engenharia de dados resolve questionamentos técnicos, manutenibilidade e evolução dos pipelines e governança dos seus dados, garantindo que sempre hajam entregas consistentes e atualizadas. Assim, libera o time de ciência de dados para encontrar respostas para o questionamento de negócio que esteja analisando. Um alinhamento que busca manter a fluidez do negócio.
Metas indefinidas
Não saber o que perguntar para os seus dados é algo comum em projetos deste gênero. Muitas empresas procuram ter projetos de Big Data, Analytics e Data Science, mas, quando implementam, não sabem o que tirar de valor.
Por isso, é extremamente necessário que os cientistas de dados estejam por dentro da estratégia da organização e compreensão dos roadmaps de produtos, estando próximos das equipes de negócio. Nesse caso, o time de engenharia de dados trabalhará como suporte, garantindo que as metas sejam alcançadas a partir de dados disponíveis e confiáveis para consumo.
A engenharia de dados é o alicerce para todos os projetos orientados a dados hoje em dia. Essa área é que dará a garantia de sucesso para os seus projetos. Resumindo: não existe projeto de sucesso de ciência de dados sem uma boa engenharia.