Data mart pelaporan yang bisa dipercaya
Desain referensi untuk mengubah beberapa sistem operasional menjadi satu sumber terkelola bagi pelaporan manajemen dan regulasi.
IntisariAngka yang dilaporkan hanya sekredibel lineage-nya, jadi rancang pemeriksaannya sebelum dasbornya.
Desain referensi ilustratif. Menunjukkan cara saya mendekati jenis masalah ini, dan bukan catatan proyek yang pernah dikerjakan.
Masalah dan batasan
Masalah
Laporan dirakit manual dari beberapa sistem. Tiap siklus membawa perbaikan menit-akhir, definisi yang bergeser, dan pertanyaan: mengapa bulan ini tidak cocok dengan bulan lalu?
Batasan
- Angka harus dapat direproduksi untuk tanggal pelaporan mana pun di masa lalu.
- Pemilik bisnis menyepakati definisi sebelum dibangun.
- Sistem sumber tidak bisa diubah demi kebutuhan pelaporan.
- Tim yang menjalankan pipeline kecil.
Opsi yang dipertimbangkan
- Tidak dipilih
Bangun setiap laporan langsung di atas sistem sumber
Cepat untuk laporan pertama, tetapi definisi bergeser dan tiap siklus mengulang rekonsiliasi.
- Tidak dipilih
Gudang data pusat dengan transformasi saja
Struktur konsisten, tetapi kesalahan muncul di laporan karena tidak ada yang memeriksa batas masuknya.
- Dipilih
Mart terkelola dengan rekonsiliasi di batas masuk
Lebih banyak kesepakatan di awal, lebih sedikit perselisihan kemudian.
Arsitektur
Daratkan data tanpa diubah, rekonsiliasi di batas masuk terhadap total kontrol, lalu modelkan berdasarkan kamus metrik yang disetujui pemilik bisnis. Setiap angka dapat ditelusuri ke baris sumbernya.
Pilih komponen mana pun untuk melihat fungsinya dan bagaimana ia terhubung. Diagram ini ilustratif: menunjukkan bentuk sebuah solusi, bukan sistem tertentu.
Arsitektur referensi ilustratif
Sumber
Staging
Validasi
Kurasi
Laporan
Pilih sebuah komponen
Pilih blok mana pun untuk membaca fungsinya dan bagaimana ia terhubung dengan yang lain.
- Sistem operasional
- Sistem pencatatan yang tetap tidak berubah. Masing-masing punya pemilik data yang disebutkan namanya.
- Lapisan staging
- Salinan mentah didaratkan apa adanya, dengan cap waktu muat, sehingga proses apa pun dapat direproduksi.
- Pemeriksaan rekonsiliasi
- Jumlah baris, total kontrol, dan pemeriksaan aturan. Pemeriksaan yang gagal memblokir publikasi dan memberi tahu pemiliknya.
- Data mart terkurasi
- Dimodelkan berdasarkan kamus metrik terkelola, dengan riwayat disimpan untuk tanggal pelaporan masa lalu.
- Laporan dan tinjauan
- Laporan manajemen dan regulasi yang dibangun di lapisan terkurasi, disetujui oleh pemilik metrik.
Keputusan dan trade-off
Rekonsiliasi di batas masuk, saat data memasuki mart.
Trade-offMuatan pertama lebih lambat dan kegagalan lebih nyaring, tetapi perselisihan diselesaikan sekali, bukan di setiap laporan.
Modelkan mart berdasarkan kamus metrik yang terkelola.
Trade-offMemakan waktu pemangku kepentingan di awal, dan mencegah tiap tim membuat versi metriknya sendiri.
Pilih proses batch idempoten daripada streaming.
Trade-offData kurang segar, tetapi setiap proses dapat diulang dengan aman dan diaudit.
Cara pengerjaannya
Inventarisasi
Daftar laporan dan tulis setiap definisi metrik beserta pemiliknya.
Daratkan
Salin data sumber tanpa diubah ke staging, lalu terapkan transformasi bertipe yang teruji.
Rekonsiliasi
Jalankan pemeriksaan terhadap total kontrol dan blokir publikasi saat gagal.
Terbitkan
Sediakan lapisan terkurasi untuk alat pelaporan, didokumentasikan dari kamus.
Pelajaran dan langkah berikutnya
Status saat iniDesain referensi ilustratif. Belum diimplementasikan seperti yang dijelaskan.
Pelajaran: artefak yang paling berharga sering kali adalah kamus metrik, karena memberi bisnis dan engineering satu kosakata.
Langkah berikutnya
- Inventarisasi laporan berisiko tertinggi dan sepakati pemilik tiap metrik.
- Pilih total kontrol yang memblokir publikasi, dan siapa yang diberi tahu saat ada yang gagal.
- Uji coba alur staging-ke-mart pada satu laporan lebih dulu.
Karya terkait
Mari kita bahas
Jika masalah seperti ini terdengar akrab, saya ingin mendengar bagaimana ia muncul di tempat Anda.