Arquitetura

O que é um Data Warehouse — e quando você realmente precisa de um

Data warehouse é onde o dado deixa de ser "o que o sistema registrou" e passa a ser "o que a empresa entende". Abaixo: como ele se diferencia de lake e lakehouse, a arquitetura em camadas que times usam hoje e o que faz a conta subir.

Warehouse, lake e lakehouse em uma tabela mental

  • Data warehouse: tabelas estruturadas, schema na escrita, SQL rápido, governança forte.
  • Data lake: arquivos (Parquet, JSON, imagem, log) em storage barato, schema na leitura, flexível e desorganizado se ninguém cuidar.
  • Lakehouse: arquivos no storage com formato de tabela (Delta, Iceberg, Hudi) trazendo transação, time travel e evolução de schema.

A arquitetura em camadas que virou padrão

bronze / raw     → cópia fiel da origem, sem regra de negócio
silver / trusted → limpo, tipado, deduplicado, chaves validadas
gold / marts     → modelo dimensional, métricas oficiais para o BI

Cada camada tem um dono e um contrato. Analista consome gold; engenheiro debuga em bronze. Quando alguém liga o dashboard direto no raw, começa a divergência de números.

Por que não usar o banco de produção

-- no OLTP isso é ótimo: índice, resposta em milissegundos
select * from pedidos where id = 91827;

-- no OLTP isso é um incidente: varredura de milhões de linhas
-- competindo com o checkout do cliente
select uf, date_trunc('month', criado_em) as mes, sum(valor)
from pedidos
group by 1, 2;

Bancos analíticos guardam dados em colunas, comprimem e paralelizam a varredura. É outra engenharia para outro tipo de pergunta.

Particionamento e clustering: onde o custo mora

-- BigQuery: particiona por data e agrupa por chaves muito filtradas
create table analytics.fct_pedidos
partition by date(data_pedido)
cluster by uf, categoria as
select * from staging.pedidos;

-- consulta que lê só uma partição (barata)
select uf, sum(valor_total) as receita
from analytics.fct_pedidos
where data_pedido >= '2024-05-01'
  and data_pedido <  '2024-06-01'
group by uf;

A mesma pergunta sem filtro de partição pode custar 100x mais. Em warehouse moderno, otimizar é quase sempre "ler menos dado".

Checklist antes de escolher a ferramenta

  • Quantos GB/TB por mês e com que frequência os dados são consultados?
  • Quantas pessoas consultam ao mesmo tempo?
  • Precisa de streaming ou batch diário resolve?
  • Já existe uma cloud padrão na empresa? Integração vale mais que benchmark.
  • Quem vai governar acesso, PII e LGPD?
  • Qual o teto de custo mensal aceitável — e quem monitora?

Perguntas frequentes

O que é um data warehouse?
É um banco de dados otimizado para análise: reúne dados de vários sistemas em um modelo consistente e histórico, para responder perguntas de negócio rapidamente sem impactar os sistemas operacionais.
Qual a diferença entre data warehouse e data lake?
O warehouse guarda dado estruturado, modelado e governado, com schema definido na escrita. O lake guarda arquivo bruto de qualquer formato, com schema aplicado na leitura. O lakehouse tenta unir os dois usando formatos de tabela como Delta e Iceberg.
Qual a diferença entre OLTP e OLAP?
OLTP atende o sistema que roda a empresa: muitas escritas pequenas e leituras por chave. OLAP atende análise: varre milhões de linhas para agregar. Consultar relatório direto no banco de produção é o clássico erro de confundir os dois.
Quais data warehouses são mais usados?
BigQuery, Snowflake, Redshift, Databricks SQL, Microsoft Fabric e, em times menores ou em aprendizado, PostgreSQL e DuckDB. No Brasil, BigQuery e Databricks aparecem muito nas vagas.
Como reduzir o custo de um data warehouse?
Particione e clusterize as tabelas, evite SELECT *, materialize agregações usadas com frequência, use modelos incrementais no dbt e monitore as queries mais caras semanalmente.
Preciso de um data warehouse se tenho pouco dado?
Se tudo cabe em um Postgres e as consultas respondem rápido, comece por lá — inclusive com camadas separadas por schema. Migrar para um warehouse dedicado é uma decisão de volume, concorrência e custo, não de moda.

Pronto para assinar?

7 dias grátis. Depois, menos que um café por mês — cancele quando quiser.

Assinar — 7 dias grátis