Introdução
Esse projeto foi desenvolvido para a disciplina de Engenharia de Dados, que consta no desenvolvimento completo de uma pipeline de dados para um sistema de seguro de imóveis, partindo da criação de ambientes em cloud utilizando IaC (Terraform), seguindo para os processos de ingestão, transformação e carregamento dos dados utilizando Azure Databricks e Azure Datalake Storage Gen2. Ao final da pipeline, os dados manipulados são exibidos em um dashboard feito com Power BI.
Começando
Essas instruções permitirão que você obtenha uma cópia do projeto em operação na sua máquina local para fins de desenvolvimento e teste.
Pré-requisitos
Conta Microsoft/Azure
Existe a possibilidade de adquirir 14 dias gratuitos dos serviços premium ofertados pela Microsoft/Azure Verifique a disponibilidade no site
Instalação
-
Clone o repositório
-
Com sua conta Microsoft/Azure criada e apta para uso dos recursos pagos, no Portal Azure crie um workspace Azure Databricks seguindo a documentação fornecida pela Microsoft. Durante a execução deste processo, você irá criar um
resource group
. Salve o nome informado noresource group
pois ele será utilizado logo em seguida. -
Com o Terraform instalado e o resource group em mãos, no arquivo
/iac/variables.tf
troque a váriavel"resource_group_name"
para resource group que você criou previamente. -
Nesta etapa, iremos iniciar o deploy do nosso ambiente cloud. Após alterar a variável no último passo, acesse a pasta
/iac
e execute os seguintes comandos: -
Com a execução dos comandos finalizada, verifique no Portal Azure o
MS SQL Server
,MS SQL Database
e oADLS Gen2
contendo os containerslanding-zone
,bronze
,silver
egold
que foram criados no passo anterior. -
No Portal Azure, gere um
SAS TOKEN
para o contêinerlanding-zone
seguindo esta documentação. Guarde este token em um local seguro pois ele será utilizado no próximo passo. -
Na pasta
/data
, crie um arquivo chamado.env
com o mesmo conteúdo disponibilizado no arquivo de exemplo.env.example
e preencha as informações necessárias. -
No mesmo diretório, vamos iniciar o processo de população do nosso banco de dados. Verifique corretamente o preenchimento das váriaveis no arquivo
.env
e prossiga com os seguintes comandos:- Criar
venv
(ambiente virtual) do Python: - Ativar a
venv
criada:- Linux/MacOS:
- Windows:
- Instalar os pacotes necessários:
- Executar o script de população:
- Criar
- Acesse o
Portal Azure
e acesse o seu workspace Azure Databricks. Realize o upload dos notebooks encontrados em/etl
para o workspace. - Por fim, você pode executá-los separadamente ou elaborar um Job para orquestrar às execuções.
Ferramentas utilizadas
- Terraform - Automação de infraestrutura para provisionar e gerenciar recursos em qualquer nuvem ou data center.
- Azure Databricks - Análise e processamento de Big Data
- Azure SQL Server - Sistema de gerenciamento de banco de dados relacional
- Azure Datalake Storage Gen2 - Plataforma para armazenar, gerenciar e analisar dados na nuvem