Entendendo o Lakehouse
O que é um Lakehouse?
O Lakehouse é uma arquitetura moderna que combina o melhor de dois mundos: a flexibilidade de um Data Lake com a performance e governança de um Data Warehouse. No Microsoft Fabric, o Lakehouse é o componente central de armazenamento da plataforma.
Tradicionalmente, as empresas precisavam escolher entre:
- Data Lake: Armazena qualquer tipo de dado (estruturado, semi-estruturado, não estruturado) com baixo custo, mas sem performance para consultas analíticas
- Data Warehouse: Alta performance para consultas SQL, mas limitado a dados estruturados e com custo elevado
O Lakehouse elimina essa escolha, oferecendo um único repositório que suporta ambos os cenários.
Estrutura do Lakehouse
Um Lakehouse no Fabric possui duas áreas principais:
| Área | Descrição | Conteúdo |
|---|---|---|
| Tables/ | Tabelas Delta gerenciadas | Dados estruturados prontos para análise |
| Files/ | Armazenamento de arquivos | Dados brutos, staging, arquivos não estruturados |
Diagrama da Estrutura
┌─────────────────────────────────────────────────────────────────────────────┐
│ LAKEHOUSE: lh_corp_bronze │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────┐ ┌─────────────────────────────────┐ │
│ │ Tables/ │ │ Files/ │ │
│ │ │ │ │ │
│ │ └── dbo/ │ │ ├── landing/ │ │
│ │ ├── tb_raw_api_dollar_rate│ │ │ └── cotacao_2025.json │ │
│ │ ├── tb_raw_protheus_sa1 │ │ │ │ │
│ │ ├── tb_raw_protheus_sb1 │ │ ├── archive/ │ │
│ │ └── tb_raw_sharepoint_... │ │ │ └── 2025-01/ │ │
│ │ │ │ │ │ │
│ │ Formato: Delta Lake │ │ └── rejected/ │ │
│ │ Acesso: Spark, SQL, Direct │ │ └── erro_validacao.csv │ │
│ │ │ │ │ │
│ │ │ │ Formato: Qualquer (CSV, JSON) │ │
│ │ │ │ Acesso: Spark, Dataflow │ │
│ └─────────────────────────────────┘ └─────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Tables/ (Tabelas Delta)
- Formato Delta Lake (Parquet + log de transações)
- Suporte a operações ACID (Insert, Update, Delete, Merge)
- Versionamento automático (Time Travel)
- Otimizadas para consultas analíticas
Files/ (Arquivos)
- Landing zone para arquivos recém-chegados
- Armazenamento de arquivos brutos (CSV, JSON, Excel, PDF)
- Área de staging antes da transformação em tabelas
Schemas (Esquemas) no Lakehouse
Um Schema é um agrupamento lógico de tabelas dentro do Lakehouse. Funciona como uma "pasta" que organiza as tabelas por contexto ou domínio.
Por padrão, o Fabric cria o schema dbo (database owner), mas você pode criar schemas adicionais para melhor organização.
Diagrama de Schemas
┌─────────────────────────────────────────────────────────────────────────────┐
│ LAKEHOUSE: lh_corp_bronze │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ Tables/ │
│ │ │
│ ├── dbo/ ← Schema padrão │
│ │ ├── tb_raw_api_dollar_rate │
│ │ ├── tb_raw_protheus_sa1 │
│ │ ├── tb_raw_protheus_sb1 │
│ │ └── tb_raw_sharepoint_sales_goals │
│ │ │
│ ├── protheus/ ← Schema por fonte (opcional) │
│ │ ├── tb_raw_protheus_sa1 │
│ │ ├── tb_raw_protheus_sa3 │
│ │ ├── tb_raw_protheus_sb1 │
│ │ └── tb_raw_protheus_sd2 │
│ │ │
│ ├── api/ ← Schema por fonte (opcional) │
│ │ └── tb_raw_api_dollar_rate │
│ │ │
│ └── sharepoint/ ← Schema por fonte (opcional) │
│ └── tb_raw_sharepoint_sales_goals │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Referenciando Tabelas com Schema
| Formato | Exemplo |
|---|---|
[lakehouse].[schema].[tabela] | lh_corp_bronze.dbo.tb_raw_api_dollar_rate |
[schema].[tabela] | dbo.tb_raw_api_dollar_rate (quando Lakehouse é padrão) |
[tabela] | tb_raw_api_dollar_rate (assume schema dbo) |
Quando usar Schemas Customizados?
| Cenário | Recomendação |
|---|---|
| Projeto pequeno/médio | Use apenas dbo com pastas por domínio |
| Projeto grande com múltiplos domínios | Crie schemas por área de negócio |
| Necessidade de permissões granulares | Schemas permitem controle de acesso por grupo |
| Separar produção de staging | Schema staging para tabelas temporárias |
O Formato Delta Lake
O Delta Lake é o formato de armazenamento padrão do Lakehouse. Ele adiciona uma camada de confiabilidade sobre arquivos Parquet:
- Transações ACID: Garante consistência mesmo com falhas durante a escrita
- Schema Enforcement: Valida que os dados seguem a estrutura definida
- Time Travel: Permite consultar versões anteriores dos dados
- Otimização automática: Compactação e indexação para melhor performance
SQL Endpoint
Todo Lakehouse no Fabric possui automaticamente um SQL Analytics Endpoint, que permite:
- Consultar tabelas Delta usando T-SQL padrão
- Conectar ferramentas externas (Excel, Power BI Desktop, Power Apps)
- Criar Views para simplificar consultas
- Acesso sem necessidade de Spark ou Python
Formas de Acesso ao Lakehouse
┌─────────────────────────────────────────────────────────────────────────────┐
│ FORMAS DE ACESSO AO LAKEHOUSE │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────┐ │
│ │ LAKEHOUSE │ │
│ │ lh_corp_bronze │ │
│ └────────┬────────┘ │
│ │ │
│ ┌───────────────────┼───────────────────┐ │
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ Spark/Python │ │ SQL Endpoint │ │ Direct Lake │ │
│ │ │ │ │ │ │ │
│ │ • Notebooks │ │ • Consultas │ │ • Power BI │ │
│ │ • Pipelines │ │ • Excel │ │ • Sem refresh │ │
│ │ • Dataflows │ │ • Power Apps │ │ • Tempo real │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Endorsement (Endosso)
O Endorsement é um mecanismo de certificação do Fabric que indica o nível de confiabilidade de um artefato (Lakehouse, Semantic Model, Relatório, etc.). Ele ajuda os usuários a identificar quais itens são oficiais e confiáveis.
Níveis de Endorsement
| Nível | Ícone | Descrição | Quem pode aplicar |
|---|---|---|---|
| Nenhum | — | Artefato sem certificação | — |
| Promoted | 🔵 | Artefato pronto para uso, validado pelo owner | Proprietário do artefato |
| Certified | ✅ | Artefato oficialmente certificado pela organização | Administradores autorizados |
Diagrama de Endorsement
┌─────────────────────────────────────────────────────────────────────────────┐
│ NÍVEIS DE ENDORSEMENT │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │
│ │ │ │ PROMOTED │ │ CERTIFIED │ │
│ │ Sem Badge │ → │ │ → │ │ │
│ │ │ │ │ │ │ │
│ │ • Em desenvol- │ │ • Validado │ │ • Certificado │ │
│ │ vimento │ │ • Testado │ │ • Oficial │ │
│ │ • Não validado │ │ • Recomendado │ │ • Governado │ │
│ │ • Uso interno │ │ para uso │ │ • Fonte única │ │
│ │ │ │ │ │ da verdade │ │
│ └─────────────────┘ └─────────────────┘ └─────────────────┘ │
│ │
│ DEV/Testes Homologado Produção │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Como aplicar Endorsement
- Clique com botão direito no artefato (Lakehouse, Semantic Model, etc.)
- Selecione Settings (Configurações)
- Na seção Endorsement, escolha o nível desejado
- Para Certified, é necessário permissão de administrador
Boas Práticas de Endorsement
- Use Promoted para artefatos validados em ambiente de homologação
- Reserve Certified apenas para artefatos oficiais de produção
- Documente os critérios para certificação na governança
- Revise periodicamente os artefatos certificados
Quando usar Tables/ vs Files/
| Cenário | Usar |
|---|---|
| Dados prontos para análise | Tables/ |
| Arquivos recém-ingeridos aguardando processamento | Files/landing/ |
| Backup de arquivos originais | Files/archive/ |
| Arquivos com erro de validação | Files/rejected/ |
| Documentos não estruturados (PDF, imagens) | Files/ |
| Dados que serão consumidos por relatórios | Tables/ |
Benefícios do Lakehouse no Fabric
- Único repositório: Dados brutos e refinados no mesmo lugar
- Múltiplas engines: Acesse via Spark, SQL ou Direct Lake
- Governança integrada: Linhagem, catalogação e segurança nativas
- Custo otimizado: Armazenamento barato com performance quando necessário
- Direct Lake: Relatórios Power BI sem necessidade de importação
- Endorsement: Certificação de artefatos confiáveis
Entre em contato com o Time de Transformação Digital (TD) ou o Comitê de Dados.