[data warehouse] - wordpress.com · 2016. 7. 26. · data warehouse ada untuk memfasilitasi queri...

31
[Data Warehouse] [6/C2 & 6/D2] [ Chapter 6] Pemodelan Data Warehouse Dedy Alamsyah, S.Kom, M.Kom [NIDN : 0410047807]

Upload: others

Post on 17-Mar-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

[Data Warehouse][6/C2 & 6/D2]

[ Chapter 6]Pemodelan Data Warehouse

Dedy Alamsyah, S.Kom, M.Kom[NIDN : 0410047807]

Page 2: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Ada dua pendekatan yang diterima sebagai “best practice” untuk memodelkan data pada data warehouse:

1. Relational Model (Immon Approach)

2. Multidimensional Model (Kimball Approach)

Pemodelan Data

Page 3: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Model relasional telah ada sejak tahun 70 an dan telahdiimplementasikan pada teknologi mesin database sepertiDB2, oracle, SQL Server dsb.

Tiap database dapat terdiri dari satu atau lebih table yang saling berhubungan (memiliki relasi)

Tiap table terdiri dari kolom yang bertindak sebagai atributdari data, masing2 kolom dapat memiliki karakteristik yang berbeda.

Dalam model relasional, data harus hadir dalam bentuknormal

Maksudnya normal ialah data telah tersusun dalam desain yang granularitasnya rendah

Model Relasional

Page 4: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Kelebihan dari model ini ialah desain yang disiplin dengandata yang detail.

1. Model ini fleksibel dan adaptif untuk dimanfaatkan dariberbagai sudut pandang dan kebutuhan.

2. Berbagai jenis “view” dapat ditampilkan oleh model ini.

Kekurangan model ini ialah tingkat komplesitas yang tinggiseiring dengan bertumbuhnya jenis informasi. Untukmenampilkan sebuah “view” yang spesifik

Kelebihan dan Kekurangan Model Relasional

Page 5: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Model Relasional

Page 6: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Sering juga disebut dengan multidimensional approach, star join approach, atau kimball approach

Strukturnya seperti bintang yang berelasi, (star-join)

Di tengah terdapat tabel fakta yang dikelilingi oleh tabeldimension

Kelebihan model ini ialah terfokus untuk menampilkan sebuah“view” khusus, sehingga tidak fleksibel untuk kebutuhan umum

Tabel fakta menyimpan data utama, berisi jumlah data teragregasi yang banyak seperti harga dan jumlah penjualan.

Tabel dimensi, umumnya lebih kecil dari tabel fakta berisiatribut yang menjelaskan tabel fakta, umumnya tabel terpisahuntuk tiap atribut.

Model Dimensional

Page 7: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Model Dimensional

Page 8: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Model Dimensional 2

Page 9: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Dimensional model memiliki scope (ruang lingkup) yang lebihkecil, karena requirement menentukan bentuk dari model.

Cocok untuk req departement atau sub departement

Dimensional model akan mengalami kesulitan saat banyakreq proses bermunculan untuk memanfaatkan data.

Secara sederhana, dimensional model hanya bisadioptimasi untuk satu proses req.

Relational model tidak memiliki optimasi, karena disimpanpada level granularitas terendah.

Tidak ada batasan untuk mengolah relational model, sehingga cocok untuk scope yang luas (model enterprise)

Perbedaan relational dengan Dimensional

Page 10: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harusmenyediakan dukungan query yang lebih efisien

Roll-up: data dirangkum dengan generalisasi

Dril-down: meningkatkan tingkat detail

Pivot: lintas tabulasi (juga disebut rotasi)

Potong dan iris: melakukan operasi proyeksi terhadapdimensi

Sorting: data diurut berdasarkan nilai ordinal

Selection: data tersedia dalam nilai atau range

Derived attributes: atribut dihitung oleh operasi dalam nilaiyang disimpan atau turunan

Query yang disediakan oleh Data Warehouse

Page 11: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Model storage multidimensi melibatkan 2 tipe tabel: tabeldimensi dan tabel fakta

Tabel dimensi terdiri dari tupel atribut tuples dari dimensi

Tabel fakta bisa digambarkan memiliki banyak tupel. Satutupel untuk satu fakta yang tercatat.

Fakta ini berisikan data dan dimensi mengidentifikasikanmasing-masing tupel dalam data tersebut

Fakta biasanya berisi nilai numerik seperti jumlah qty, besar nilai, besar nilai penjualan, dll.

Model Data Untuk Data Warehouse

Page 12: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Whalen et al.(2001, p236), tabel fakta adalah tabel di dalam data warehouse yang menjelaskan ukuran data bisnis.

Fakta berisi nilai dari sebuah kejadian atau transaksi tertentumisalnya penyimpanan uang di bank, penjualan produk, ataupesanan.

Tabel fakta menyimpan nilai numerik daripada karakter. Contohnya tabel fakta dapat berisi field seperti RegionID, SalespersonID, ItemID, dan CustomerID.

Tabel fakta dapat memiliki banyak foreign key yang berhubungan dengan tabel dimensi.

Tabel fakta menyimpan informasi penting dari data warehouse. Tabel fakta dapat menyimpan jutaan hinggamiliaran record dan memakan tempat penyimpanan hinggasatu terabyte.

Tabel Fakta

Page 13: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Tabel Fakta

Page 14: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Kimball (2008), tabel fakta merupakan dasar dari data warehouse, tabel faktamengandung pengukuran fundamental pada sebuah perusahaan

a) Concatenated key Baris dalam tabel fakta diidentifikasi dengan menggunakanprimary key dari tabel- tabel dimensi, maka primary key dari tabel fakta merupakangabungan primary key dari semua tabel dimensi.

b) Data grain Data grain merupakan tingkat detail untuk pengukuran. Sebagaicontoh, jumlah pemesanan berhubungan berhubungan dengan jumlah produktertentu pada suatu pesanan, tanggal tertentu, untuk pelanggan spesifik dandiperloeh oleh seorang perwakilan penjualan spesifik tertentu. Jika jumlah pesanandilihat sebgai jumlah untuk suatu produk perbulan, maka data grain-nya berbedadan pada tingkat yang lebih tinggi.

c) Fully additive measures Agregasi dari fully additive measures dilaksanakan denganpenjumlahan sederhana nilai-nilai atribut tersebut.

d) Semiadditive measures Semiadditive measures merupakan nilai yang tidak dapatlangsung dijumlahkan, sebagai contoh persentase keuntungan.

e) Tabel besar, tidak lebar Tabel fakta umumnya memiliki lebih sedikit atribut daripadatabel dimensi, namun memiliki jumlah record yang lebih banyak.

f) Sparse data Tabel fakta tidak perlu menyimpan record yang nilainya null. Makatabel fakta dapat memiliki gap

g) Degenerate dimensions Terdapat elemen-elemen data dari sistem operasionalyang bukan merupakan fakta ataupun dimensi, seperti nomor pesanan, tagihan, dan lain-lain. Namun atribut- atribut tersebut dapat berguna dalam jenis analisistertentu

Cara menentukan table Fakta

Page 15: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Whalen et al.(2001, p236), tabel dimensi digunakanuntuk menyempurnakan data yang ada pada tabel fakta ataumenjelaskannya dengan lebih detil.

Datanya merupakan karakter.

Tabel dimensi menyimpan informasi seperti region name, salesperson name, item description, customer name, dancustomer addresses.

Setiap tabel dimensi menyimpan baris dari data denganinformasi berupa karakter yang menjelaskan field yang berhubungan dengan tabel fakta dengan lebih detil.

Tabel dimensi lebih kecil dan memiliki baris yang sedikit dari tabelfakta, biasanya terdiri dari ratusan atau ribuan record.

Tabel dimensi menyimpan hanya satu baris data untuk setiapcustomer, sedangkan tabel fakta bisa memiliki banyak barisdata untuk beberapa transaksi bagi customerID yang sama

Tabel Dimensi

Page 16: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Ponniah (2001, p213) sebuah tabel dimensi memiliki karakteristiksebagai berikut :

a. Memiliki Dimension Table Key Primary key dari tabel dimensimengidentifikasi setiap baris dimensi secara unik.

b. Tabel Bersifat Lebar Sebuah tabel dimensi dapat memiliki banyak atributatau kolom.

c. Atribut Berupa Teks Dalam tabel dimensi akan jarang ditemukan nilai-nilaiangka untuk perhitungan. Atribut-atributnya mewakili deskripsi teks darikomponen dimensi bisnis.

d. Atribut tidak Terhubung Secara Langsung Terkadang dalam suatu tabeldimensi dapat ditemukan bahwa beberapa atributnya tidak terhubungdengan atribut lainnya secara langsung.

e. Tidak Ternormalisasi Atribut dalam tabel dimensi selalu digunakan secaraterus- menerus dalam query. Untuk efisiensi, sebaiknya query menggunakan atribut yang disalurkan secara langsung dari tabel dimensike tabel fakta, tanpa melalui tabel lainnya.

f. Drilling down, Rolling up Atribut dalam tabel dimensi menyediakankemampuan untuk mengambil dari tingkat agregasi yang tinggi ketingkat detail yang rendah.

Karakteristik Tabel Dimensi

Page 17: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Tabel Dimensi

Page 18: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Tabel Dimensi 2

Page 19: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Kimball (2003, p18), Dalam membuat desaindimensional digunakan 4 langkah :

1. Menentukan sumber data.

2. Mendeklarasi grain dari tabel fakta.

3. Masukkan dimensi untuk semua yang diketahuimengenai grain ini.

4. Masukkan fakta ukuran numerik sebenarnya ke grain tersebut.

Model Dimensional

Page 20: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Connolly dan Begg (2005, p1183), Skema bintang merupakansebuah struktur logikal yang memiliki sebuah tabel fakta yang terdiri daridata faktual di pusatnya, yang dikelilingi oleh tabel dimensi yang terdiridata referensi (dimana dapat didenormalisasi).

Menurut Ponniah (2001, p210), Star schema adalah teknik dasar desaindata untuk data warehouse. Struktur star schema adalah suatu strukturyang dapat dengan mudah dipahami dan digunakan oleh user sepertiyang terlihat pada gambar di slide berikutny. Struktur tersebutmencerminkan bagaimana user biasanya memandang ukuran-ukuran kritismengikuti dimensi-dimensi bisnis yang ada.

Menurut Hoffer et al (2005, p467), Star schema terdiri dari dua macamtabel, yaitu tabel fakta (fact table) dan tabel dimensi (dimension table). Tabel fakta mengandung fakta atau data kuantitatif mengenai sebuahbisnis seperti jumlah unit terjual, jumlah order, dan sebagainya. Tabeldimensi berisi data deskriptif mengenai subjek bisnis. Tabel dimensibiasanya adalah sebagai sumber attribute yang digunakan untukmengkualikasi, mengkategorikan, atau meringkas fakta dalam query, report, atau grafik.

Skema Bintang (Star Schema)

Page 21: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

1. Pusat dari star disebut fact table

2. Fact table mempunyai sebuah nilai aggregate dari data-data yang berasal dari tabel dimensi

3. Setiap tabel dimensi berelasi langsung dengan fact table

4. Tabel dimensi beisikan data tentang informasi atau waktu

5. Relasi antara fact table dengan dimensi-dimensinyaadalah 1 - N (one to many)

6. Primary key pada tabel dimensi akan menjadi key padafact table atau dapat diakatakan bahwa fact table memiliki kombinasi key dari tabel dimensi tersebut.

Karakteristik Model Skema Bintang

Page 22: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Model Skema Bintang

Page 23: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Mudah dipahami user Star schema menggambarkan dengan jelas bagaimana user berpikir dan

memerlukan data untuk query dan analisis. Star schema menggambarkanhubungan antar tabel sama seperti cara user melihat hubungan tersebut secaranormal.

Mengoptimalkan navigasi Star schema mengoptimalisasikan navigasi melalui database sehingga lebih

mudah dilihat. Meskipun hasil query terlihat kompleks, tetapi navigasi itumemudahkan user.

Paling cocok untuk pemrosesan query Star schema paling cocok untuk pemrosesan query karena skema ini berpusat

pada query. Tanpa bergantung pada banyak dimensi dan kompleksitas query, setiap query akan dengan mudah dijalankan, pertama dengan memilih baris daritable dimensi dan kemudian menemukan baris yang sama di table fakta.

STAR join dan STAR index Skema bintang mengizinkan software pemroses query untuk melakukan

pelaksanaan yang lebih baik. Itu dapat membuat perfoma skema spesifik yang dapat diimplementasikan dalam query. Susunan skema bintang lebih cocokuntuk teknik perfoma yang khusus seperti STARjoin dan STARindex

Keuntungan Skema Bintang

Page 24: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Ponniah (2001, p235), Snowflake schema merupakanvariasi lain dari skema bintang dimana tabel dimensi dariskema bintang dinormalisasi, seperti yang digambarkan padagambar 2.12. Prinsip dasar dari skema ini tidak jauh berbedadari star schema. Dalam menormalisasi tabel dimensi, adabeberapa pilihan yang dapat diperhatikan, antara lain :

Secara parsial, lakukan normalisasi hanya beberapa table dimensi saja, dan sisakan yang lain tetap utuh.

Secara lengkap atau parsial, lakukan normalisasi hanya padabeberapa tabel dimensi, dan tinggalkan yang tersisa denganutuh.

Secara parsial, lakukan normalisasi pada setiap table dimensi.

Secara lengkap, lakukan normalisasi pada setiap table dimensi.

Skema Snowflake (Snowflake Schema)

Page 25: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Model Skema Snowflake

Page 26: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Keuntungan dari skema snowflake ( Ponniah,2001,p238 ) adalah :

1. Memerlukan tempat penyimpanan yang lebih kecil

2. Struktur yang normal akan lebih mudah untuk diperbaharuidan dikelola

Keuntungan Skema Snowflake

Page 27: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Menurut Connolly dan Begg (2005, p1185), “StarflakeSchema adalah struktur yang diturunkan daripenggabungan konsep star schema dan snowflake schema”.

Lebih lanjut mereka menuturkan “Beberapa dimensimemiliki kemungkinan dibentuk dengan kedua konsep Star Schema dan Snowflake Schema, hal ini disesuaikandengan kebutuhan akan query yang dimiliki”.

Skema Starflake (Starflake Schema)

Page 28: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Contoh Model Skema Starflake

Page 29: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Snowflake Schema merupakan varian dari skema bintangdimana table-table dimensi tidak terdapat data yang di denormalisasi.

Snowflake Schema memberi kemudahan pada perawatandimensi, dikarenakan strukturnya yang lebih normalisasi.

Snowflake schema adalah model data dimensional yang memiliki sebuah tabel fakta sebagai pusatnya, dikelilingitabel-tabel dimensi yang ternormalisasi. Snowflake schema adalah sebuah variasi dari star schema dimana tabeldimensinya boleh memiliki dimensi.

Penggunaan tabel dimensi pada snowflake schema sangatlah mendasar, sedangkan pada star schema tidak. Snowflake schema dibuat berdasarkan OLTP sehingga semuadata akan termuat detail dalam setiap tabel fakta dan tabeldimensi.

Kesimpulan

Page 30: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Keduanya merupakan model-model dimensional, perbedaannya terletak pada implementasi fisikal. Skemasnowflake memberi kemudahan pada perawatan dimensi, dikarenakan strukturnya yang lebih normalisasi.

Skema bintang lebih efisien serta sederhana dalammembuat query dan mudah diakses secara langsung olehpengguna.

Jika data yang digunakan kompleks sebaiknyamenggunakan snowflake schema, namun jika data yang digunakan sederhana lebih baik kita menggunakan star schema.

Saran

Page 31: [Data Warehouse] - WordPress.com · 2016. 7. 26. · Data warehouse ada untuk memfasilitasi queri ad hoc yang terjadi sering dan kompleks. Untuk itu, data warehouse harus menyediakan

Selesai

Ada pertanyaan ???