Testando manualmente um pipeline de dados

ETL e ELT em Python

Jake Roach

Data Engineer

Testando pipelines de dados

Pipelines de dados devem ser bem testados

  • Valide extração, transformação e carga como esperado

$$

Validar pipelines reduz manutenção após o deploy

  • Identifique e corrija problemas de qualidade
  • Melhora a confiabilidade dos dados

Ferramentas e técnicas para testar pipelines

  • Teste ponta a ponta
  • Validação em “checkpoints”
  • Testes de unidade
ETL e ELT em Python

Ambientes de teste e produção

Ambientes de teste e produção para criar e executar pipelines de dados.

ETL e ELT em Python

Testando um pipeline ponta a ponta

Teste ponta a ponta de um pipeline de dados.

Teste ponta a ponta

  • Confirme que o pipeline roda repetidamente
  • Valide dados nos checkpoints do pipeline
  • Faça revisão por pares e incorpore feedback
  • Garanta acesso e satisfação de quem consome a solução
ETL e ELT em Python

Validando checkpoints do pipeline

# Extract, transform, and load data as part of a pipeline
...

# Take a look at the data made available in a Postgres database
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)
print(loaded_data.shape)
(6438, 4)
print(loaded_data.head())
         timestamps      volume     open     close
1997-05-15 13:30:00  1443120000  0.121875  0.097917
1997-05-16 13:30:00   294000000  0.098438  0.086458
1997-05-19 13:30:00   122136000  0.088021  0.085417
ETL e ELT em Python

Validando DataFrames

# Extract, transform, and load data, as part of a pipeline
...

# Take a look at the data made available in a Postgres database
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)

# Compare the two DataFrames.
print(clean_stock_data.equals(loaded_data))
True
ETL e ELT em Python

Vamos praticar!

ETL e ELT em Python

Preparing Video For Download...