Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Para a automatização do algorítmo Golden Batch utilizamos as bases de dados salvos em parquet no Amazon S3 Storage. As bases utilizadas foram as tabelas de produção e de laboratório.

...

Path: Caminho_para_dados_de_laboratório

Camadas de Carregamento

O carregamento e tratamento dos dados é feito em camadas estruturadas, onde as tabelas são registradas em cada camada e o código de tratamento acessa apenas as tabelas desta mesma camada, criando blocos fechados de forma que os códigos podem ser desenvolvidos de forma indepedente.

  • Camada Bronze:

Onde ocorre o carregamento de dados de outras origens e salvo dentro do hive_metastorage sem a realização de tratamentos mais complexos.

  • Camada Silver:

Ocorre o tratamento das bases, ajustando os nomes de colunas e verificando a presença de nulos, os tipos registrados nas tabelas (string, inteiro, decimal e etc) e os valores presentes em cada uma das variáveis, além das mudanças de formato e junção de tabelas entre outros possiveis tratamentos.

  • Camada Gold:

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

Dados de Produção

É 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

Image Added

Função que executa a carga de dados, remove caracteres especiais e salva a tabela na Camada Bronze no hive_metastore dentro do DataBricks. A tabela é salva no banco de dados golden_batch__bronze na tabela golden_batch__bronze.database__production_line.

...

Executa funções em conjunto as funções citadas:

...

Camada Silver

Dados de Produção

É 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

...

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

...