Ruční testování datového potrubí

ETL a ELT v Pythonu

Jake Roach

Data Engineer

Testování datových potrubí

Datová potrubí je třeba důkladně testovat

  • Ověřte, že data jsou extrahována, transformována a načtena správně

$$

Validace potrubí snižuje náklady na údržbu po nasazení

  • Identifikujte a opravte problémy s kvalitou dat
  • Zlepšuje spolehlivost dat

Nástroje a techniky pro testování datových potrubí

  • End-to-end testování
  • Ověřování dat v „kontrolních bodech"
  • Jednotkové testování
ETL a ELT v Pythonu

Testovací a produkční prostředí

Testovací a produkční prostředí pro budování a provoz datových potrubí.

ETL a ELT v Pythonu

End-to-end testování potrubí

End-to-end testování datového potrubí.

End-to-end testování

  • Ověřte, že potrubí opakovaně funguje správně
  • Validujte data v kontrolních bodech potrubí
  • Zapojte vzájemné hodnocení a zohledněte zpětnou vazbu
  • Zajistěte přístup uživatelů a jejich spokojenost s řešením
ETL a ELT v Pythonu

Ověřování kontrolních bodů potrubí

# 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 a ELT v Pythonu

Ověřování DataFramů

# 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 a ELT v Pythonu

Pojďme si procvičit!

ETL a ELT v Pythonu

Preparing Video For Download...