Daftar isi
Sebuah toko contoh mencatat transaksi di aplikasi kasir. Tim ingin menghitung penjualan harian, tetapi berkas yang diterima bisa berisi baris ganda atau tanggal kosong. Data engineering menyiapkan alur yang membawa data tersebut ke tempat analisis dengan pemeriksaan yang dapat diulang.
Dari sumber ke hasil
Sumber menghasilkan catatan transaksi. Proses ingest menyalin catatan ke penyimpanan mentah. Selanjutnya, transformasi memeriksa dan menyusun data menjadi tabel yang mudah dipakai. Hasil akhirnya bisa menjadi masukan untuk laporan, bukan laporan itu sendiri.
Simpan salinan mentah sebelum mengubahnya. Jika aturan pembersihan berubah, salinan itu memungkinkan tim membandingkan hasil baru dengan masukan awal. Batasi akses dan retensi sesuai kebutuhan data yang sebenarnya.
Contoh satu pemeriksaan
Untuk menghitung nilai transaksi yang memiliki pengenal dan jumlah, kueri berikut mengabaikan baris yang kehilangan salah satu nilai tersebut:
SELECT transaction_date, SUM(amount) AS total_amount
FROM transactions
WHERE transaction_id IS NOT NULL
AND amount IS NOT NULL
GROUP BY transaction_date;
Kueri ini belum menangani transaksi ganda atau tanggal kosong. Catat jumlah baris yang dikeluarkan dan periksa penyebabnya sebelum memakai hasil untuk keputusan. Mengganti nilai kosong dengan nol tanpa memahami artinya dapat menyembunyikan masalah sumber.
Istilah yang perlu dibedakan
| Istilah | Arti dalam contoh |
|---|---|
| Ingest | Menyalin transaksi dari sistem sumber. |
| Transformasi | Memeriksa dan menyusun transaksi untuk penggunaan berikutnya. |
| Pipeline | Rangkaian langkah yang menjalankan perpindahan dan transformasi. |
Mulailah dari satu pertanyaan yang dapat diperiksa, misalnya apakah jumlah baris mentah cocok dengan jumlah baris yang diterima dan ditolak. Lalu tentukan siapa yang perlu diberi tahu ketika pemeriksaan gagal.