Data warehouse merupakan metode dalam perancangan database yang menunjang Decision Support System (DSS) dan Executive Information System (EIS). Secara fisik data warehouse adalah database, tetapi perancangan data warehouse dan database sangat berbeda. Dalam perancangan database tradisional menggunakan prinsip normalisasi, sedangkan pada data warehouse normalisasi bukanlah cara yang terbaik.
Tahapan Dalam Proses Perancangan
- Memilih proses bisnis
- Memilih inti dari tabel fakta
- Memilih dimensi
- Memilih fakta yang terukur (umumnya numeric, additive quantities)
- Melengkapi tabel berdimensi
Star Schema
Mendesain struktur star schema, dimulai dengan menentukan data apa yang ingin dilihat oleh pengguna (besarannya) dan bagaim
ana pengguna melihat data tersebut (kondisi atau dimensinya). Dalam data warehouse, data-datanya akan disimpan dalam tabel fakta dan tabel dimensi. Nah, tabel fakta akan menyimpan data-data utama yang terukur besarannya, semisal jumlah siswa, banyaknya rupiah yang diperoleh, rata-rata IPK, dan sejenisnya. Untuk lebih menjelaskan data fakta, maka kondisi saat data tersebut diukur turut disampaikan. Data kondisi inilah yang dipetakan dalam bentuk data dimensi. Kondisi yang dipetakan dalam dimensi umumnya berupa kondisi waktu, kondisi produk atau item, dan kondisi geografinya.
Sementara tabel dimensi mendeskripsikan setiap nilai dari suatu dimensi dan dapat direlasikan ke tabel fakta jika diperlukan. Tabel dimensi memiliki primary key sederhana yang mengandung hanya satu atau dua kolom saja. Namun, tabel fakta akan memiliki sekumpulan foreign key yang disusun dari primary key komposit dan merupakan gabungan kolom-kolom tabel dimensi yang berelasi. Untuk lebih jelasnya, berikut contoh struktur star schema.
Dalam star schema, kueri yang terbentuk antara tabel fakta dan sejumlah tabel dimensi dinamakan star query. Setiap tabel dimensi direlasikan dengan tabel fakta berdasarkan kolom primary key dan foreign key, namun diantara masing-masing tabel dimensi tidak ada yang saling berelasi (tidak ada hubungan data). Kueri yang terbentuk menyebabkan proses eksekusi yang lebih optimal, karena rencana eksekusi kueri dalam DBMS akan lebih cepat dengan setiap tabel hanya berelasi dengan satu tabel yang lain.
Ada kalanya tabel dimensi mengandung data yang duplikat pada satu atau lebih kolom. Jika mengikuti azas normalisasi, maka struktur basis data yang terbentuk bukan lagi star schema namun akan menjadi snowflake schema.
Keuntungan :
- Sebih simple
- Mudah dipahami.
- Hasil dari proses query juga relatif lebih cepat.
- Boros dalam space.
Snowflake Schema
Struktur basis data ini lebih kompleks dari pada star schema, dengan menormalisasi tabel-tabel dimensi yang berukuran besar dengan satu atau lebih kolom yang memiliki duplikasi data. Misal jika tabel dimensi Product dinormalisasi maka akan menghasilkan struktur seperti berikut:
Tabel dimensi dinormalisasi untuk mengurangi redudansi data (duplikasi), sehingga struktur tabelnya akan lebih ramping. Dengan pengelompokan ini, data akan lebih mudah dibaca dan membantu pengembang aplikasi untuk menata desain antarmuka sistem dan filtering data. Struktur ini akan menghemat kapasitas storage, namun waktu eksekusi data akan lebih lama mengingat jumlah tabel dimensi yang direlasikan lebih banyak dan membutuhkan tambahan relasi foreign key. Kueri yang terbentuk lebih kompleks, yang mengakibatkan kinerja kueri menurun. Pada penerapan yang lebih umum, tabel dimensi tidak diturunkan dengan lebih banyak tabel dimensi lain dan pengaturan UI atau pengelompokan data diatur secara hard-coded di kode program aplikasinya.
Fokus penggunaan datawarehouse adalah kecepatan akses dan eksekusi data, bukanlah ukuran data yang lebih kecil atau struktur basis data yang lebih ramping. Sehingga bijaksana dalam menetapkan struktur data star maupun snowflake schema akan menentukan kinerja layanan datawarehouse yang dimiliki.
Fokus penggunaan datawarehouse adalah kecepatan akses dan eksekusi data, bukanlah ukuran data yang lebih kecil atau struktur basis data yang lebih ramping. Sehingga bijaksana dalam menetapkan struktur data star maupun snowflake schema akan menentukan kinerja layanan datawarehouse yang dimiliki.
Keuntungan model Snowflake
Pemakain space yang lebih sedikit
Update dan maintenance yang lebih mudah
Kerugian model ini yaitu:
Model lebih komplek dan rumit
Proses query lebih lambat
Performance yang kurang bagus
Sumber ::
1. Konsep Model Dimensional. http://kuli-kuliah.blogspot.com/2012/04/konsep-model-dimensional.html ( diakses tanggal 8 oktober 2013 )
2. Pengertian Datawarehose. http://dashboardxcelsius.blogspot.com/2012/08/pengertian-data-warehouse.html ( diakses tanggal 8 Oktober 2013 )
0 komentar:
Posting Komentar