Skip to content
Latchkey

O que é um data warehouse? A explicação do armazenamento analítico centralizado

Um data warehouse é um armazenamento centralizado otimizado para consultas analíticas rápidas sobre grandes volumes de dados estruturados e limpos.

Um data warehouse é onde uma organização reúne seus dados para responder perguntas. Diferente de um banco de dados transacional ajustado para muitas gravações pequenas, um warehouse é ajustado para grandes consultas analíticas de leitura intensa que percorrem milhões de linhas para produzir relatórios e dashboards.

O que é um data warehouse

Um data warehouse é um sistema que armazena dados integrados e estruturados de muitas fontes em um schema otimizado para análise. Os warehouses modernos na nuvem - Snowflake, BigQuery, Redshift - separam o armazenamento da computação e usam armazenamento colunar para que as consultas analíticas sejam rápidas.

Warehouse versus banco de dados transacional

Um banco de dados transacional (OLTP) alimenta uma aplicação e lida com muitas leituras e gravações pequenas. Um warehouse (OLAP) é construído para análise: consultas menos numerosas e maiores que agregam sobre tabelas enormes. Os dados fluem do primeiro para o segundo por meio de pipelines.

Como os dados entram

Os dados brutos são carregados no warehouse e depois transformados em tabelas limpas e modeladas, tipicamente com uma abordagem ELT usando uma ferramenta como o dbt. O resultado é um conjunto de tabelas em camadas em que analistas e pipelines de features de ML podem confiar.

Warehouses e CI

A lógica do warehouse existe no controle de versão como modelos SQL, e o CI constrói e testa esses modelos contra um schema temporário antes de eles chegarem às tabelas de produção.

Testing warehouse models in CI
steps:
  - run: dbt build --target ci      # build into a CI schema
  - run: dbt test --target ci       # validate before promote

Nota da Latchkey

Os jobs de CI do warehouse basicamente emitem SQL, então são leves em computação, mas sensíveis à confiabilidade da rede. Na Latchkey, o auto-retry ajuda um build longo do dbt a sobreviver a uma falha transitória de conexão com o warehouse, e o cache da toolchain mantém a inicialização do job rápida.

Principais conclusões

  • Um data warehouse é um armazenamento centralizado otimizado para consultas analíticas (OLAP) sobre grandes volumes de dados estruturados.
  • Ele difere de um banco de dados transacional, que é ajustado para muitas leituras e gravações pequenas.
  • As transformações do warehouse existem como SQL versionado e são construídas e testadas no CI antes de chegar à produção.

Guias relacionados