Para a execução deste teste, você pode utilizar as ferramentas que estiver mais familiarizado, seguindo apenas as seguintes premissas:
- Os dados necessariamente devem ser armazenados em tabelas de banco de dados (MySQL, PostgreSQL, BigQuery, MS SQL, Oracle etc) e não em arquivos ou planilhas;
- Você deve necessariamente utilizar as linguagens SQL e Python nos processos de carga, consulta e transformação dos dados;
- Utilizar uma ferramenta que lhe permita criar os processos de ETL ou DAG’s para ingestão e transformação de dados;
- Você deve implementar um controle de versionamento para seus códigos
Para realizar a ingestão na camada landing, foi utilizado scripts python (excel_to_gbq). Nas demais camadas (raw, trusted e refnied) foi utilizado o framework DBT (data build tool) para criar os processos de transformação. Optei por essa ferramenta pela facilidade em se criar pipelines de dados de ponta a ponta, sempre visando as boas práticas de Engenharia de software (versionamento de código, DRY (Don't repeat yourself), linhagem de dados) e por orquestrar todo o modelo de dados automaticamente (cuidando das dependências).