Materi Pajak Untuk BOS tahun 2024 untuk madrasah MI,MTS, dan MA
Populating Data Warehouse
1. Populating Data
Warehouse
“When you are willing to make sacrifices for a
great cause, you will never be alone.”
TIF32604 Data Warehouse
Nova Eka Diana (nova.diana@yarsi.ac.id)
Fakultas Teknologi Informasi
Universitas YARSI
2. Konten
• Loading stage
• Create data firewall
• Populating normalized data store
• Populating dimension tables
• Populating fact tables
4. Stage Loading
• Sistem file
• Perhatikan nama file dan struktur direktori
• Pastikan punya hak akses dan permisi ke folder
stage
• Perhatikan kapasitas stage
• Basis data
• Jangan membuat indeks atau constraint
menangkap bad data (null, duplicate)
6. Pendekatan 1
• Simpan data-data sebelumnya dalam tabel yang
sama mudah diimplementasikan
• Tambahkan kolom loaded_timestamp yang
menyimpan informasi waktu suatu data
dimasukkan ke stage
• Indexing perlu dilakukan untuk memudahkan
pencarian data sebelumnya; juga jika stage tabel
diakses oleh banyak aplikasi
• Indexing berguna jika volume data besar
7. Pendekatan 2
• Simpan data untuk tiap harinya dalam tabel yang
terpisah memberikan performa yang lebih baik
• Dimulai dengan loading data Today ke stage
• Diikuti dengan data Day1, Day2, dst setelah proses
loading data sebelumnya berhasil dilakukan
8. Pendekatan 3
• Hanya memiliki satu buah tabel
• Lakukan proses truncate setiap kali sebelum proses
loading data akan dilakukan
• Tidak menyimpan data pada hari sebelumnya
• Harus diambil langsung ke database backup jika
ingin mengambil data dari beberapa hari
sebelumnya
10. Data Firewall
• Penting untuk menolak/memblok data-data yang
buruk masuk ke dalam data warehouse
11. Data Firewall
• Data firewall adalah program yang melakukan
pengecekan terhadap data yang masuk ke DW
• Ditempatkan diantara stage dan NDS
mengijinkan/menolak data tergantung pada data
quality rule yang dibuat
• Mempunyai mekanisme untuk melakukan
pelaporan data yang ditolak, oleh rule mana, dan
kapan terjadi
• Operasi yang dapat dilakukan:
• Menolak bad data
• Mengijinkan bad data masuk
• Memperbaiki data sebelum dimasukkan
13. Populating NDS
• Dalam arsitekture NDS+DDS
• Populasikan data ke dalam NDS
• Populasikan data dari NDS ke DDS
• Beberapa isu yang harus diperhatikan:
• Normalisasi data dalam stage harus
dinormalisasi agar sesuai dengan struktur NDS
• External table konversi data
• Key management perlu menjaga internal
data warehouse key
• Junction table memungkinkan implementasi
many-to-many relationship
20. Key Management
• Tujuan:
• Mempermudah integrasi dengan source kedua
• Mampu beradaptasi dengan perubahan key di
source sytem
• Surrogate key: data warehouse key (1, 2, 3, dst)
• Natural key: key dalam source system
30. Load Dimension Table
• Isu Penting:
• Incremental Loading
- hanya memasukkan records di NDS yang
berubah sejak ETL terakhir
- NDS menyediakan informasi last-updated
timestamp
• Key Management
- NDS+DDS: Menggunakan surrogate key yang
sama dengan NDS
- ODS+DDS: surrogate key perlu dibuat di DDS
31. Load Dimension Table (2)
• Isu Penting:
• Denormalization
Perlu dilakukan operasi join antara beberapa
tabel di NDS ketika akan dimasukkan ke DDS
• Slowly Changing Dimension (SCD)
•SCD 1(overwrite) mengganti dengan nilai baru
•SCD 2(rows) membuat baris baru yang terdiri atas nilai
baru dan nilai yang lama
•SCD 3(column) letakkan nilai yang lama dalam kolom
lain, dan masukkan nilai baru ke kolom utama
32. Load Fact Table
• Mekanisme dasar:
• Baca baris data dari NDS
• Mencari dimensional key
• Memasukkan key kedalam fact table