-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
# bases com datachecks #620
Comments
Temos os seguintes campos para preenchimento do metadado Quality Check:
Existe a possibilidade de implementar um fluxo no prefect para ler e completar os metadados dos testes aplicados?
O uso dbt e prefect não facilita capturar os resultados e metadados de cada teste, o que torna o processo trabalho demais se o objetivo é só saber quais bases a gente passou quality-checks. Gostaria de não complicar muito o processo de capturar esse dado. Uma alternativa que me parece boa:
Gosto dessa opção pq dessa maneira, resolvemos o problema de maneira relativamente rápida, sem aumentar o trabalho dos analistas, ao mesmo tempo que deixamos as coisas bem padronizadas e que facilitam mudanças futuras. Tendo esse metadado preenchido conseguimos acompanhar quais são bases com datachecks direto dentro do metabase! Outros passos dentro dessa alternativa:
@rdahis o que acha? |
Primeiro, estou adorando essas descrições longas facilitando o trabalho assíncrono aqui. 👍 Pensamentos:
@d116626 tem alguma opinião também? Tem alguma ferramenta out-of-the-box capaz de entregar toda essa flexibilidade que gostaríamos, sem ter que reinventar a roda aqui? |
Vou numerar os pontos para responder mais diretamente
O que eu tinha imaginado nesse indicador é acompanhar quantas bases a gente parou para passar quality checks mas pensando nos dados, não nos metadados. Se nesse indicador incluirem checks para metadados acho que número de bases é um indicador ruim, pq como as coisas são bem generalizaveis a gente consegue ver para todas bases de uma vez só. Entendo que a construção de um painel que traga a qualidade dos metadados também é muito relevante, só que é uma outra tarefa. Sugiro que nesse momento eu foque em achar uma maneira de acompanhar o número de bases que passaram por quality checks na parte de dados e pegar a tarefa de montar o painel de qualidade dos metadados assim que terminar de compilar os demais indicadores da equipe dados desse semestre. Se vc concordar com isso nesse primeiro momento eu só faria o ponto "Rodar os testes DBT e guardar em quality_checks os resultados." Se der tempo desenvolvo esse processo como uma pipeline, mas tem alguns pontos que me fazem pensar que não é algo ideal:
O create_yaml.py é um script que a gente fez para montar o arquivo schema.yaml e .sql a partir da arquitetura. Para facilitar a vida de todo mundo o script também já inclui 3 testes a partir das informações da arquitetura: não nulidade de nenhuma coluna, chaves únicas e conexão com diretórios. A proposta seria colocar todos esses testes no description, pq o objetivo final dessa issue seria ter documentado os testes que cada base passou antes do final de janeiro e essa é a maneira que consigo visualizar como viável e adequada. Separar cada teste DBT:
Proposta |
Legal. Sempre bom dividir melhor os passos! Mais alguns pontos:
O que acha? Fazendo assim dá tranquilo para documentar todas as tabelas que passaram por testes de qualidade. |
Criei um
|
Faz sentido! |
Então @rdahis atualizações aqui! Chamei o @arthurfg pra me ajudar nessa parte de quality checks e ele encontrou um pacote excelente para o que a gente quer fazer. O pacote se chama elementary e é capaz de gerar reports automátizados e bem completos com os resultados de todos os testes que foram rodados no dbt. Acredito que o ideal seria a gente ter acesso a esse html para monitorar a qualidade dos dados em produção
o próximo passo seria descobrir o caminho para exportar esse relatório (a principio nao parece ser dificil e o @vncsna tem ajudado a gente com as coisas mais complicadas) Num próximo momento podemos pegar as informações que estão no BQ nesse conjunto elementary para montar os metadados do django e pensarmos em como colocar isso no front end para nossos usuários. O que acha? |
Aa adendo importante, vamos acompanhar o crescimento de custos no BQ para avaliar se rodar os testes toda atualização em prod está sendo muito caro ou não |
Para registrar, conversamos no Discord e dei o ok para implementarmos esse caminho e testar como fica. |
The text was updated successfully, but these errors were encountered: