🔗 Data Lineage & Catalog¶
Ferramenta interativa para rastrear a origem, transformação e destino dos dados no Data Lake Lavoro.
🎯 O que é Data Lineage?¶
Data Lineage é o rastreamento do ciclo de vida dos dados — de onde vêm, como são transformados e para onde vão. No contexto do Data Lake Lavoro, isso significa mapear:
graph LR
A[📥 Fonte de Dados] -->|Extração| B[🥉 Bronze]
B -->|Transformação| C[🥈 Silver]
C -->|Agregação| D[🥇 Gold]
D -->|Consumo| E[📊 Power BI]
style A fill:#e3f2fd
style B fill:#cd7f32,color:#fff
style C fill:#c0c0c0
style D fill:#ffd700
style E fill:#f5f5f5
🛠️ Como Funciona¶
A ferramenta integra duas fontes de informação:
1. Google Cloud Data Lineage API¶
A API nativa do Google Cloud rastreia automaticamente:
- Linhagem no BigQuery: Qual tabela gerou qual outra tabela
- Transformações SQL: Quais colunas foram usadas em cada transformação
- Dependências entre datasets: Relacionamento entre projetos
2. Análise de Código (DAGs e SQL)¶
Complementando a API do Google, fazemos análise do código dos DAGs para capturar:
- Task Groups e suas dependências dentro de cada DAG
- Templates SQL referenciados por cada task
- Conexões entre projetos via
ExternalTaskSensor
Visualização com Pyvis¶
A visualização final é construída com Pyvis Network, gerando grafos interativos:
- Nós representam tabelas, views ou datasets
- Arestas representam transformações ou dependências
- Cores diferenciam as camadas (Bronze, Silver, Gold)
- Interativo: Zoom, drag, hover com detalhes
📖 Como Usar¶
Acessando a Ferramenta¶
A ferramenta está disponível como uma aplicação Streamlit hospedada no Cloud Run:
Dica
Use o filtro por projeto para focar em um domínio específico (ex: CDP, Operações, Lakehouse).
Funcionalidades Disponíveis¶
| Funcionalidade | Descrição |
|---|---|
| Lineage Visual | Grafo interativo mostrando o fluxo de dados |
| Catálogo de Tabelas | Inventário completo com metadados |
| Busca por Tabela | Encontre rapidamente qualquer tabela pelo nome |
| Filtro por Projeto | Visualize lineage de um projeto específico |
| Detalhes de Coluna | Veja tipos de dados e descrições de cada coluna |
🔍 Casos de Uso Práticos¶
1. Investigação de Impacto¶
"Se eu alterar a tabela
silver_cdp.protheus_cliente, quais tabelas Gold serão afetadas?"
Com o Lineage, você identifica visualmente todas as tabelas downstream que dependem dessa tabela Silver, permitindo avaliar o impacto antes de fazer alterações.
2. Debugging de Dados¶
"Os dados de faturamento no Power BI estão diferentes do esperado. De onde vêm esses números?"
Navegando pelo Lineage de trás pra frente (Gold → Silver → Bronze → Fonte), você localiza exatamente onde a transformação pode ter introduzido o erro.
3. Onboarding de Novos Membros¶
"Preciso entender como funciona o fluxo de dados de Estoque."
O Catalog oferece uma visão completa de todas as tabelas do projeto Operações, com descrições e o Lineage mostra visualmente como os dados fluem.
4. Auditoria e Compliance¶
"Quais fontes de dados alimentam o relatório gerencial de vendas?"
Rastreamento completo da fonte ao destino, garantindo rastreabilidade total dos dados.
📊 Catálogo de Dados¶
O Catálogo complementa o Lineage fornecendo metadados estruturados sobre cada tabela:
| Metadado | Descrição |
|---|---|
| Nome da Tabela | Nome completo (dataset.tabela) |
| Projeto | Lakehouse, CDP, Operações, Pessoas |
| Camada | Bronze, Silver ou Gold |
| Descrição | O que a tabela representa |
| Colunas | Lista completa com tipos e descrições |
| Particionamento | Campo e tipo de partição |
| Última Atualização | Data da última carga |
| Tamanho | Volume em GB e número de linhas |
🏗️ Arquitetura Técnica¶
graph TB
A[Google Data Lineage API] -->|Dados de Linhagem| C[Processamento Python]
B[Código dos DAGs] -->|Análise de Dependências| C
C -->|Gera Grafo| D[Pyvis Network]
D -->|Renderiza| E[Streamlit App]
E -->|Hospedado| F[Cloud Run]
style C fill:#4285f4,color:#fff
style E fill:#ff6f00,color:#fff
style F fill:#34a853,color:#fff
Stack Tecnológico¶
| Componente | Tecnologia |
|---|---|
| Backend | Python, Google Cloud Data Lineage API |
| Visualização | Pyvis Network (grafos interativos) |
| Frontend | Streamlit |
| Hospedagem | Cloud Run |
| Dados | BigQuery (metadados), Cloud Storage (cache) |
Manutenção
O Lineage é atualizado automaticamente a cada execução dos DAGs de produção. O Catálogo é refreshado diariamente.