Menguji pipeline data secara manual

ETL dan ELT di Python

Jake Roach

Data Engineer

Menguji pipeline data

Pipeline data harus diuji menyeluruh

  • Validasi bahwa data diekstrak, ditransformasi, dan dimuat sesuai harapan

$$

Validasi pipeline mengurangi upaya pemeliharaan pascadeploy

  • Temukan dan perbaiki isu kualitas data
  • Meningkatkan keandalan data

Alat dan teknik untuk menguji pipeline data

  • Pengujian end-to-end
  • Validasi data di "checkpoint"
  • Pengujian unit
ETL dan ELT di Python

Lingkungan pengujian dan produksi

Lingkungan pengujian dan produksi untuk membangun dan menjalankan pipeline data.

ETL dan ELT di Python

Menguji pipeline end-to-end

Pengujian end-to-end sebuah pipeline data.

Pengujian end-to-end

  • Pastikan pipeline berjalan berulang kali
  • Validasi data di checkpoint pipeline
  • Tinjauan sejawat, terapkan masukan
  • Pastikan akses konsumen dan kepuasan terhadap solusi
ETL dan ELT di Python

Validasi checkpoint 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 dan ELT di Python

Validasi DataFrame

# 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 dan ELT di Python

Ayo berlatih!

ETL dan ELT di Python

Preparing Video For Download...