Engenharia de Dados é a disciplina responsável por projetar, construir e manter os sistemas e pipelines que tornam os dados acessíveis, confiáveis e utilizáveis para análise, ciência de dados e produtos de dados.
O engenheiro de dados é o elo entre as fontes brutas de dados e os consumidores finais (analistas, cientistas de dados, sistemas de ML).
Ciclo de vida do dado
flowchart LR F([Fontes]) --> I[Ingestão] --> A[(Armazenamento)] --> T[Transformação] --> S[Serving] --> C([Consumo])
Cada etapa tem ferramentas e padrões específicos. O engenheiro de dados participa de todas elas, diferentemente de outras áreas, que vão atuar principalmente no consumo, por exemplo.
Diferenças entre os papéis de dados
| Papel | Foco principal |
|---|---|
| Engenheiro de Dados | Construir e manter pipelines, infraestrutura de dados |
| Analista de Dados | Explorar dados, criar dashboards e relatórios |
| Cientista de Dados | Modelos preditivos, estatística, ML |
| Engenheiro de ML | Colocar modelos em produção (MLOps) |
Responsabilidades típicas
- Ingestão de dados de diversas fontes (bancos relacionais, APIs, streaming)
- Construção e manutenção de pipeline-de-dados
- Modelagem e armazenamento em data-lake-lakehouse
- Garantia de qualidade, linhagem e observabilidade dos dados
- Orquestração e agendamento de jobs
- Governança: controle de acesso, catalogação, retenção
Linguagem dominante
Python é a linguagem padrão da engenharia de dados. Para maiores informações, ver python-engenharia-dados.
Ver também: mermaid-diagrams
Conceitos fundamentais
big-data pipeline-de-dados arquitetura-medalhao data-lake-lakehouse formatos-de-arquivo-datalake ferramentas-engenharia-dados dataops