Pruebas manuales de un pipeline de datos

ETL y ELT en Python

Jake Roach

Data Engineer

Probar pipelines de datos

Hay que probar bien los pipelines de datos

  • Valida que se extraen, transforman y cargan como se espera

$$

Validar pipelines reduce el mantenimiento tras el despliegue

  • Detecta y corrige problemas de calidad
  • Mejora la fiabilidad de los datos

Herramientas y técnicas para probar pipelines

  • Pruebas end-to-end
  • Validación en «checkpoints»
  • Pruebas unitarias
ETL y ELT en Python

Entornos de pruebas y de producción

Entornos de pruebas y producción para crear y ejecutar pipelines de datos.

ETL y ELT en Python

Probar un pipeline de extremo a extremo

Pruebas end-to-end de un pipeline de datos.

Pruebas end-to-end

  • Comprueba que el pipeline se ejecuta repetidamente
  • Valida datos en checkpoints del pipeline
  • Revisión por pares e incorporación de feedback
  • Asegura acceso y satisfacción de quienes lo consumen
ETL y ELT en Python

Validar checkpoints del pipeline

# Extrae, transforma y carga datos como parte de un pipeline
...

# Consulta los datos disponibles en una base Postgres
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 y ELT en Python

Validar DataFrames

# Extrae, transforma y carga datos como parte de un pipeline
...

# Consulta los datos disponibles en una base Postgres
loaded_data = pd.read_sql("SELECT * FROM clean_stock_data", con=db_engine)

# Compara ambos DataFrames.
print(clean_stock_data.equals(loaded_data))
True
ETL y ELT en Python

¡Vamos a practicar!

ETL y ELT en Python

Preparing Video For Download...