Data Warehousing - Skema

Skema adalah deskripsi logis dari seluruh database. Ini mencakup nama dan deskripsi rekaman dari semua tipe rekaman termasuk semua item data terkait dan agregat. Sama seperti database, gudang data juga perlu memelihara skema. Database menggunakan model relasional, sedangkan gudang data menggunakan skema Star, Snowflake, dan Fact Constellation. Pada bab ini, kita akan membahas skema yang digunakan di gudang data.

Skema Bintang

  • Setiap dimensi dalam skema bintang diwakili dengan hanya tabel satu dimensi.

  • Tabel dimensi ini berisi kumpulan atribut.

  • Diagram berikut menunjukkan data penjualan suatu perusahaan terhadap empat dimensi, yaitu waktu, barang, cabang, dan lokasi.

  • Ada tabel fakta di tengah. Ini berisi kunci untuk masing-masing dari empat dimensi.

  • Tabel fakta juga memuat atribut yaitu dolar terjual dan unit terjual.

Note- Setiap dimensi hanya memiliki satu tabel dimensi dan setiap tabel memiliki sekumpulan atribut. Misalnya, tabel dimensi lokasi berisi kumpulan atribut {location_key, jalan, kota, provinsi_or_ negara, negara}. Batasan ini dapat menyebabkan redundansi data. Misalnya, "Vancouver" dan "Victoria" kedua kota tersebut berada di provinsi British Columbia, Kanada. Entri untuk kota-kota tersebut dapat menyebabkan redundansi data di sepanjang atribut provinsi_atau_negara dan negara.

Skema Kepingan Salju

  • Beberapa tabel dimensi dalam skema Kepingan Salju dinormalisasi.

  • Normalisasi membagi data menjadi tabel tambahan.

  • Tidak seperti skema Bintang, tabel dimensi dalam skema kepingan salju dinormalisasi. Misalnya, tabel dimensi item pada skema bintang dinormalisasi dan dipecah menjadi tabel dua dimensi, yaitu tabel item dan tabel pemasok.

  • Sekarang tabel dimensi item berisi atribut item_key, item_name, type, brand, dan supplier-key.

  • Kunci pemasok ditautkan ke tabel dimensi pemasok. Tabel dimensi pemasok berisi atribut supplier_key dan supplier_type.

Note - Karena normalisasi dalam skema Kepingan Salju, redundansi berkurang dan oleh karena itu, pemeliharaan dan penghematan ruang penyimpanan menjadi mudah.

Skema Konstelasi Fakta

  • Konstelasi fakta memiliki beberapa tabel fakta. Ini juga dikenal sebagai skema galaksi.

  • Diagram berikut menunjukkan dua tabel fakta, yaitu penjualan dan pengiriman.

  • Tabel fakta penjualan sama dengan yang ada di skema bintang.

  • Tabel fakta pengiriman memiliki lima dimensi, yaitu item_key, time_key, shipper_key, from_location, to_location.

  • Tabel fakta pengiriman juga memuat dua ukuran, yaitu dolar terjual dan unit terjual.

  • Dimungkinkan juga untuk berbagi tabel dimensi di antara tabel fakta. Misalnya, tabel dimensi waktu, item, dan lokasi dibagi antara tabel fakta penjualan dan pengiriman.

Definisi Skema

Skema multidimensi didefinisikan menggunakan Data Mining Query Language (DMQL). Dua primitif, definisi kubus dan definisi dimensi, dapat digunakan untuk mendefinisikan gudang data dan data mart.

Sintaks untuk Definisi Kubus

define cube < cube_name > [ < dimension-list > }: < measure_list >

Sintaks untuk Definisi Dimensi

define dimension < dimension_name > as ( < attribute_or_dimension_list > )

Definisi Skema Bintang

Skema bintang yang telah kita diskusikan dapat didefinisikan menggunakan Data Mining Query Language (DMQL) sebagai berikut -

define cube sales star [time, item, branch, location]:   
    	   
dollars sold = sum(sales in dollars), units sold = count(*)    	  

define dimension time as (time key, day, day of week, month, quarter, year)
define dimension item as (item key, item name, brand, type, supplier type)        	
define dimension branch as (branch key, branch name, branch type)              	
define dimension location as (location key, street, city, province or state, country)

Definisi Skema Kepingan Salju

Skema kepingan salju dapat didefinisikan menggunakan DMQL sebagai berikut -

define cube sales snowflake [time, item, branch, location]:

dollars sold = sum(sales in dollars), units sold = count(*)

define dimension time as (time key, day, day of week, month, quarter, year)
define dimension item as (item key, item name, brand, type, supplier (supplier key, supplier type))
define dimension branch as (branch key, branch name, branch type)
define dimension location as (location key, street, city (city key, city, province or state, country))

Definisi Skema Konstelasi Fakta

Skema konstelasi fakta dapat didefinisikan menggunakan DMQL sebagai berikut -

define cube sales [time, item, branch, location]:

dollars sold = sum(sales in dollars), units sold = count(*)

define dimension time as (time key, day, day of week, month, quarter, year)
define dimension item as (item key, item name, brand, type, supplier type)
define dimension branch as (branch key, branch name, branch type)
define dimension location as (location key, street, city, province or state,country)
define cube shipping [time, item, shipper, from location, to location]:

dollars cost = sum(cost in dollars), units shipped = count(*)

define dimension time as time in cube sales
define dimension item as item in cube sales
define dimension shipper as (shipper key, shipper name, location as location in cube sales, shipper type)
define dimension from location as location in cube sales
define dimension to location as location in cube sales