O que é engenharia de dados: pipelines, ETL, lakehouse e mais
Engenharia de dados é a área que constrói e mantém a estrutura que leva os dados dos sistemas de origem até quem vai usá-los. O engenheiro de dados cria pipelines que extraem, transformam e carregam dados (ETL ou ELT) para um data warehouse, data lake ou lakehouse, automatiza esses fluxos com orquestração e garante que os dados cheguem completos, corretos e no horário para análises, dashboards e modelos de IA.
Publicado em · Atualizado em
Para que serve a engenharia de dados
Em uma empresa, os dados nascem espalhados: vendas no ERP, clientes no CRM, cliques no site, pagamentos no gateway, planilhas em pastas compartilhadas. Sem engenharia, cada analista precisa ir buscar e juntar tudo à mão, cada um de um jeito, e os números nunca batem.
A engenharia de dados resolve isso criando um caminho único e automático: os dados saem das origens, passam por tratamento e chegam a um lugar central, organizados e confiáveis. Analistas, cientistas de dados, aplicações e modelos de IA consomem a partir dali. Se o analista é quem responde as perguntas, o engenheiro é quem garante que a matéria-prima esteja lá, certa e no horário. Entenda o outro lado em o que faz um analista de dados.
O que é um pipeline de dados
Um pipeline de dados é uma sequência automatizada de etapas que move e transforma dados de um ponto a outro. Um pipeline típico tem:
- Ingestão: buscar os dados na origem (banco de dados, API, arquivos, eventos).
- Armazenamento bruto: guardar uma cópia fiel do que chegou, para poder reprocessar.
- Transformação: limpar, padronizar, juntar e calcular.
- Disponibilização: entregar tabelas prontas para análise, dashboards ou sistemas.
- Monitoramento: avisar quando algo falha, atrasa ou chega com problema.
Um bom pipeline é idempotente (rodar duas vezes não duplica dados), observável (você sabe quando e por que falhou) e documentado.
ETL e ELT: qual a diferença
| ETL | ELT | |
|---|---|---|
| Ordem | Extrai, transforma e depois carrega | Extrai, carrega e transforma dentro do destino |
| Onde transforma | Em um servidor ou ferramenta no meio do caminho | No próprio data warehouse ou lakehouse, geralmente com SQL |
| Quando é mais comum | Ambientes tradicionais, destino com pouca capacidade de processamento | Nuvem, onde o destino processa grandes volumes com facilidade |
| Vantagem | Só dado tratado chega ao destino | Dado bruto preservado, transformações fáceis de refazer |
| Ferramentas típicas | Ferramentas de integração, scripts em Python | dbt, SQL no warehouse, Spark |
Na prática, muitas empresas usam os dois. A tendência em ambientes de nuvem é o ELT: carregar o bruto e transformar com SQL versionado, o que facilita auditar e corrigir.
Data warehouse, data lake e lakehouse
- Data warehouse: banco de dados feito para análise, com tabelas estruturadas e modelagem dimensional (fatos e dimensões). Ótimo para SQL e BI.
- Data lake: armazenamento barato de arquivos em qualquer formato (CSV, JSON, Parquet, imagens, logs). Flexível, mas sem governança vira um "pântano de dados" difícil de usar.
- Lakehouse: une os dois. Os dados ficam em arquivos no lake, em formatos de tabela abertos como Delta Lake ou Apache Iceberg, que trazem transações, controle de versão e desempenho de warehouse. Plataformas como Databricks e Microsoft Fabric seguem esse modelo.
Arquitetura medalhão: bronze, prata e ouro
A arquitetura medalhão é uma forma popular de organizar um lakehouse em camadas, cada uma com um nível de qualidade:
| Camada | O que guarda | Exemplo |
|---|---|---|
| Bronze | Dados brutos, como chegaram da origem, com data de carga | Pedidos exportados da API do e-commerce, em JSON |
| Prata | Dados limpos, tipados, sem duplicados e padronizados | Tabela de pedidos com datas e valores corretos, um registro por pedido |
| Ouro | Dados prontos para o negócio, agregados ou modelados em fatos e dimensões | Faturamento diário por loja e produto, usado no Power BI |
A vantagem é clara: se uma regra de negócio muda, você reprocessa a partir da prata ou da bronze sem buscar tudo de novo na origem.
Orquestração
Um pipeline real tem dezenas de tarefas que dependem umas das outras: só dá para calcular o faturamento depois de carregar pedidos e produtos. A orquestração define essa ordem, agenda as execuções, refaz tarefas que falharam e avisa a equipe. O Apache Airflow é a ferramenta mais conhecida; plataformas de nuvem têm orquestradores próprios, como os pipelines do Microsoft Fabric e do Azure Data Factory e os jobs do Databricks.
Batch e streaming
- Batch (lote): processa os dados em intervalos, por exemplo toda madrugada ou a cada hora. É a maioria dos casos e o mais simples de manter.
- Streaming: processa eventos assim que acontecem, em segundos. Usado em detecção de fraude, monitoramento de entregas, preços dinâmicos e alertas. Ferramentas como Apache Kafka transportam os eventos e Spark Structured Streaming ou serviços de nuvem processam.
A pergunta certa é: de quanto atraso o negócio aguenta? Se um dashboard é olhado uma vez por dia, streaming só adiciona custo e complexidade.
Qualidade de dados
Dado errado que chega rápido continua errado. Por isso o engenheiro inclui verificações nos pipelines:
- Completude: chegaram todas as linhas esperadas? Algum campo obrigatório veio vazio?
- Unicidade: há pedidos duplicados?
- Validade: datas no futuro, valores negativos, estados que não existem?
- Consistência: o total da camada ouro bate com o da origem?
- Atualidade: os dados chegaram no horário combinado?
Ferramentas como os testes do dbt automatizam boa parte disso. Quando um teste falha, o pipeline para ou alerta antes que o número errado chegue ao dashboard da diretoria.
Ferramentas da engenharia de dados
| Função | Ferramentas comuns |
|---|---|
| Linguagens | SQL e Python |
| Transformação | dbt, Spark (PySpark), SQL |
| Orquestração | Apache Airflow, Data Factory, pipelines do Fabric, jobs do Databricks |
| Streaming | Apache Kafka, Spark Structured Streaming |
| Plataformas | Databricks, Microsoft Fabric, Snowflake, BigQuery |
| Nuvem | AWS, Azure, Google Cloud |
| Formatos | Parquet, Delta Lake, Apache Iceberg |
| Engenharia de software | Git, terminal, Docker, testes, CI/CD |
Não é preciso aprender tudo. A base é SQL, Python, modelagem de dados e Git; depois, uma ferramenta de cada função e uma nuvem. Comparo as linguagens em SQL ou Python e mostro a ordem de estudo em como virar engenheiro de dados.
Exemplo prático de ponta a ponta
Uma rede de clínicas quer um dashboard diário de atendimentos e faturamento por unidade. Um desenho simples:
- Ingestão: todo dia às 2h, um job em Python lê os atendimentos do sistema da clínica por API e grava os arquivos na camada bronze.
- Prata: um processo em Spark ou SQL padroniza datas, remove registros duplicados e junta pacientes, médicos e convênios.
- Ouro: modelos em dbt criam a tabela fato de atendimentos e as dimensões de unidade, especialidade e calendário, com testes de unicidade e de valores obrigatórios.
- Orquestração: o Airflow executa tudo na ordem certa, refaz a ingestão se a API falhar e manda alerta se os testes quebrarem.
- Consumo: o Power BI se conecta à camada ouro e o dashboard está atualizado às 7h, quando os gestores chegam.
Esse mesmo desenho, com dados fictícios, é um excelente projeto de portfólio para quem está entrando na área.
Quer aprender engenharia de dados praticando? Na área do aluno da Educadados, a trilha Cloud e Engenharia de Dados do EducaLabs tem cursos interativos de Spark, Airflow, dbt, Kafka, Databricks, Microsoft Fabric, AWS, Azure e BigQuery, com simuladores e exercícios corrigidos na hora.
Conhecer a Formação Engenheiro de DadosEstá começando do zero? A base de SQL do curso de SQL vale para as duas carreiras.
Perguntas frequentes
Qual a diferença entre engenharia de dados e ciência de dados?
A engenharia de dados constrói a estrutura que coleta, trata e entrega os dados. A ciência de dados usa esses dados para criar modelos estatísticos e de machine learning que preveem ou classificam algo. Uma depende da outra: sem engenharia, o cientista passa a maior parte do tempo limpando dados.
Engenharia de dados precisa de programação?
Sim. SQL e Python são as linguagens principais e o engenheiro também usa Git, terminal e noções de engenharia de software, como testes e versionamento. O nível de programação exigido é maior do que para analista de dados.
O que é um pipeline de dados?
É uma sequência automatizada de etapas que leva os dados da origem até o destino: ingestão, armazenamento, transformação, disponibilização e monitoramento. Ele roda em horários definidos ou de forma contínua, sem depender de alguém fazer à mão.
O que é lakehouse?
É uma arquitetura que combina o armazenamento barato e flexível do data lake com os recursos de um data warehouse, como transações, controle de versão e consultas rápidas em SQL. Usa formatos abertos como Delta Lake e Apache Iceberg e está presente em plataformas como Databricks e Microsoft Fabric.
Para que serve a arquitetura medalhão?
Para organizar os dados em camadas de qualidade crescente: bronze com o dado bruto, prata com o dado limpo e padronizado e ouro com o dado pronto para o negócio. Isso facilita reprocessar, auditar e saber em que estado cada tabela está.
Dá para começar na área de dados direto pela engenharia?
Dá, principalmente para quem já tem afinidade com programação ou vem de TI. Para quem vem de outras áreas, começar como analista e depois migrar é um caminho comum, porque a base de SQL e de modelagem é a mesma.
Continue lendo
- Como virar engenheiro de dados: roteiro completo
- Formação Engenheiro de Dados
- SQL ou Python: por onde começar
- Carreira em tecnologia: como entrar em tech pelos dados
- Todos os guias de carreira e estudo em dados
Sobre o autor
Felipy Morais é analista e engenheiro de dados com mais de 6 anos de experiência, certificado Microsoft PL-300, DP-600 e DP-700 e Databricks Fundamentals. É fundador e instrutor da Educadados. Conheça a trajetória.