Este repositório é o ponto de partida utilizado no livro Engenharia de Analytics para praticar:
- A preparação do ambiente descrita no Capítulo 12 (Databricks + GitHub + dbt Cloud).
- A modelagem dimensional guiada no Capítulo 15, com dbt executando os modelos Northwind.
O código aqui presente contém as seeds com os dados da Northwind. A branch de recursos a estrutura de staging, intermediate e marts e os exemplos de testes/documentação mostrados no livro. Use‑o como referência ou como base para seu fork ao longo dos capítulos.
- Crie uma conta Free Edition no Databricks e use o Serverless Starter Warehouse.
- No menu Catalog, crie os catálogos
raw,deveprodpara isolar os ambientes conforme indicado no livro. - Gere dois Access Tokens em User Settings → Developer:
dbt-developer(para desenvolvimento) edbt-production(para o target prod). - Anote o Server Hostname e o HTTP Path disponíveis na aba Connection details do warehouse; eles serão usados pelo dbt.
- Faça login no GitHub e crie um fork de github.com/engdeanalytics/northwind.
- Guarde a URL do seu fork (
https://github.com/<usuario>/<repo>); ela será conectada ao dbt Cloud. - Opcional: clone o seu fork (
git clone ...) para acompanhar o código localmente e adicione oupstreamapontando para o repositório oficial.
- No dbt Cloud, crie um novo projeto e escolha Databricks como plataforma.
- Informe Host, HTTP Path, Token (
dbt-developer) e o catálogodev. Use um schema exclusivo, comodbt_<seu_usuario>. - Conecte o fork criado na etapa anterior e finalize o assistente.
- No dbt Cloud IDE, rode
dbt deps,dbt seed(caso ainda não tenha carregado os dados) edbt run/dbt testpara validar o ambiente conforme o capítulo.
Se preferir replicar as etapas do capítulo 15 localmente (dbt Core + VS Code), siga o fluxo orientado no livro:
- Preparação
- Tenha Python 3.8+ instalado e crie um ambiente virtual:
python -m venv .venv && source .venv/bin/activate. - Instale o adaptador Databricks:
pip install dbt-databricks. - Clone o fork deste repositório e abra a pasta
/northwindno VS Code.
- Tenha Python 3.8+ instalado e crie um ambiente virtual:
- Profile do dbt
- No arquivo
~/.dbt/profiles.yml, configure o profilenorthwindcom os valores coletados na Seção 12.1:
northwind: target: dev outputs: dev: type: databricks catalog: dev schema: dbt_<seu_usuario> host: adb-XXXXXXXXXXXX.azuredatabricks.net http_path: /sql/1.0/warehouses/<WAREHOUSE_ID> token: dapiXXXXXXXXXXXXXXXX threads: 4
- Quando for promover para produção, adicione o target
prodreutilizando o tokendbt-productione o catálogoprod.
- No arquivo
- VS Code
- Selecione o interpretador Python do
.venve use o terminal integrado para executar os comandosdbt. - Extensões úteis: Python, SQLTools e dbt Power User para navegação rápida entre modelos.
- Selecione o interpretador Python do
- Execução
- Valide a conexão com
dbt debug. - Carregue as seeds (
dbt seed) exatamente como demonstrado no capítulo.
- Valide a conexão com
Ao seguir estas instruções você reproduz o laboratório completo descrito no livro, usando o Databricks como data warehouse e o projeto Northwind como base de código única para o Capítulo 12 e para os exercícios de modelagem do Capítulo 15.