...
O Algoritimo processa os dados da Camada Silver como Input e os resultados são registrado nesta camada. Essa camada é onde está o Output final gerado pelo modelo, sendo a camada demaior valor.
Camada Bronze
Para ambos os dados de produção e laboratório utilizamos funções padrões que dependem do pacote unidecode
...
path_exists(path):
Verifica se o caminho que foi passado existe
Input: caminho a ser verificado
Output: True/False a depender da existência
...
executa(path_origin, path_destination):
Importa dados do S3 Storage, corrrige nome das colunas removendo caracteres especiais e salva a tabela na camada bronze
Input: caminho de origem dos dados e destino
...
Dados de Produção
O notebook utilizado para este processamento se encontra no seguinte caminho dentro do repositório:
Path: jobs/dev/03__layers/01__bronze/2023-02-03__bronze__variaveis_de_producao
É necessário a instalação do pacote unidecode para remoção de caracteres especiais para os nomes das colunas.
...
Verificamos a existencia da pasta para carregamento de dados de origem no Amazon S3 Storage por meio da função path_exists
Função que executa a carga de dados, remove caracteres especiais e salva a tabela na Após a execução os dados são enviados para a Camada Bronze no hive_metastorage
dentro do DataBricks. A tabela é salva no banco de dados golden_batch__bronze
com o nome golden_batch__bronze.database__production_line
.
...
Dados de Laboratório
O notebook utilizado para este processamento se encontra no seguinte caminho dentro do repositório:
Path: jobs/dev/03__layers/01__bronze/2023-02-03__bronze__variaveis_de_laboratorio
Após a execução os dados são enviados para a Camada Bronze no hive_metastorage
dentro do DataBricks. A tabela é salva no banco de dados golden_batch__bronze
com o nome golden_batch__bronze.database__productionlaboratory_linevariables
.
...
Executa funções em conjunto as funções citadas:
...
Camada Silver
Dados de Produção
...
A tabela foi salva como Pandas Dataframe e os nomes das colunas foram padronizados
...
As colunas com valores nulos foram indetificadas e aquelas com apenas valores nulos foram removidas
...
Foram ideintificados os valores unicos das colunas do tipo string e removido as colunas que não continham informações relevantes
...
O formato da tabela foi mudado do formato wide para o formato long
...
os valores nulos foram removidos
...
E os dados foram transformado no objeto Spark Dataframe e registrados na Camada Silver . A tabela é salva no banco de dados golden_batch__silver
com o nome golden_batch__silver.database__production_line
.
...
...
Dados de Laboratóro
O notebook utilizado para este processamento se encontra no seguinte caminho dentro do repositório:
Path: jobs/dev/03__layers/02__silver/2023_03_09__silver__variaveis_de_laboratorio
É necessário a instalação do pacote slugify para a padronização dos caracteres em letras minúsculas para os nomes das colunas e utilização de underline como separador.
...
Foram importadas as bibliotecas necessárias
...
A tabela foi salva como Pandas Dataframe e os nomes das colunas foram padronizados
...
Foram selecionadas as colunas que serão utilizadas na camada silver
...
O formato da tabela foi mudado do formato wide para o formato long e forma excluidos os valores nulos
...
E os dados foram transformado no objeto Spark Dataframe e registrados na Camada Silver . A tabela é salva no banco de dados golden_batch__silver
com o nome golden_batch__silver.database__laboratory_variables
.
...