Pular para conteúdo

Disponibilização dos dados em Nuvem

Sobre a implementação

Um amigo me questionou sobre as classes estarem disponíveis localmente, sendo que atualmente trabalhamos exclusivamente na nuvem. Achei a observação dele muito pertinente e percebi que seria extremamente importante escolher uma plataforma de nuvem, adaptar o código, implementar e, finalmente, disponibilizar os dados para que qualquer pessoa da organização possa acessá-los.

Para implementar tal processo na nuvem, escolhi o Google Cloud Platform. A seguir, apresento a arquitetura que desenhei. É importante destacar que a implementação abrange apenas a extração e o carregamento (Extract and Load) dos dados em um Data Warehouse. O processo de Tratamento e Limpeza será abordado em outra ocasião. Pretendo desenvolver na nuvem com PySpark, adaptando o que já tenho localmente, e implementar o mesmo tratamento utilizando SQL no BigQuery. O objetivo é apresentar algumas alternativas para realizar a etapa de Tratamento e Limpeza dos dados.

Outro ponto importante a ser observado é a orquestração que foi implementada utilizando a ferramenta: Cloud Composer. Essa ferramenta permite subir um servidor de Airflow e nele orquestrar os scripts. Neste primeiro momento, o objetivo é garantir a disponibilidade dos dados para que profissionais de ciência de dados, análise de dados e pessoas de negócios que possuam conhecimento em SQL, possam utilizá-los.

Desenho da arquitetura

Image title Arquitetura GCP

Vale lembrar que é de suma importância a criação de um bucket no storage e de um conjunto de dados no Bigquery. Abaixo o print com exemplos:

Image title
Storage

Image title
Bigquery

Códigos para implementar no GCP

Notbeooks de extração no Dataproc GCP

Códigos para o Cloud Composer

Scripts Cloud Composer GCP