Cardinality Dalam Relationship Model di Power BI




Salah satu hal yang menarik di workshop DGPL kemarin adalah pembahasan soal relationship antar table yang terlihat pada Model View. Beberapa menanyakan berulang tentang Cardinality dan Cross-filter Direction pada pemodelan tersebut.

Setiap hubungan model (relationship) dalam Power BI akan didefinisikan oleh jenis kardinalitas-nya. Ada empat opsi jenis kardinalitas, yang masing2 mewakili karakteristik data dari kolom terkait "Dari" dan "Ke". Empat opsi, tersebut dengan notasinya (perhatikan pada Model view ada tanda “1 > * ” )

- One-to-Many, à(1 : *)
- Many-to-One, à(* : 1)
- One-to-One (1 : 1)
- Many-to-Many (* : *)

Ini sebenarnya berhubungan dengan pemodelan relasional yang dikenal sebagai Skema Bintang (Star Schema), yg terdiri dari dua table yakni : Tabel Dimensi dan Tabel Fakta.

𝗗𝗶𝗺𝗲𝗻𝘀𝗶𝗼𝗻 𝗧𝗮𝗯𝗹𝗲 ( atau juga dikenal sebagai 𝗟𝗼𝗼𝗸𝘂𝗽 𝗧𝗮𝗯𝗹𝗲)
Merupakan tabel pencarian yang menyimpan atribut deskriptif tentang setiap dimensi dalam model seperti misalnya : 𝗽𝗲𝗹𝗮𝗻𝗴𝗴𝗮𝗻, 𝗽𝗿𝗼𝗱𝘂𝗸, 𝗸𝗮𝗿𝘆𝗮𝘄𝗮𝗻, 𝘁𝗲𝗺𝗽𝗮𝘁, dan konsep lainnya termasuk 𝘄𝗮𝗸𝘁𝘂.

Dan Tabel yg paling sering kita temukan di dalam Skema Bintang adalah tabel dimensi 𝗧𝗮𝗻𝗴𝗴𝗮𝗹, yang bertindak sebagai pengidentifikasi unik, dan kolom deskriptif.

sedangkan
𝗙𝗮𝗰𝘁 𝗧𝗮𝗯𝗹𝗲 (𝗗𝗮𝘁𝗮 𝗧𝗮𝗯𝗹𝗲)
Tabel data ini menampung nilai atau metrik terukur yang mendorong wawasan. Tabel ini menyimpan data mentah dan kuantitatif, menyimpan pengamatan atau kejadian, dan dapat berupa seperti misalnya : 𝗸𝘂𝗮𝗻𝘁𝗶𝘁𝗮𝘀 𝗽𝗲𝘀𝗮𝗻𝗮𝗻 𝗽𝗲𝗻𝗷𝘂𝗮𝗹𝗮𝗻, 𝗽𝗲𝗻𝗱𝗮𝗽𝗮𝘁𝗮𝗻, 𝘀𝗮𝗹𝗱𝗼 𝘀𝘁𝗼𝗸, 𝗻𝗶𝗹𝗮𝗶 𝘁𝘂𝗸𝗮𝗿, 𝘀𝘂𝗵𝘂, dll. Tabel fakta ini berisi kolom kunci dimensi yang berhubungan dengan Dimension Tables, dan kolom ukuran numerik.

𝗖𝗶𝗿𝗶 𝘆𝗮𝗻𝗴 𝗺𝘂𝗱𝗮𝗵 𝗱𝗶𝗹𝗶𝗵𝗮𝘁 𝗮𝗱𝗮𝗹𝗮𝗵 :
Pada Umumnya, tabel dimensi berisi jumlah baris yang relatif sedikit. Sedangkan Tabel fakta dapat berisi jumlah baris yang sangat besar dan terus bertambah seiring waktu. Nah makin jelas kan?

Kembali ke masalah relationship di atas,
Pengertian cardinality One-to-Many à(1 : *) adalah bahwa Nama pada kolom dalam Tabel “Dari”, hanya akan muncul 1 (satu) kali saja (Unique), sedangkan saat terhubung pada Tabel “Ke”, Nama dari kolom / Tabel tersebut bisa muncul beberapa kali.

Misalnya
Pada Kolom "Geo" pada Tabel "Location" ada nama negara India, USA dan Canada dsb yang masing2 hanya muncul sekali. Tetapi saat berada di Tabel "Sales Person" nama2 India, USA dan Canada bisa mencul beberapa kali, puluhan atau bahkan ratusan kali tergantung pada informasi terjadinya penjualan pada yg tampak pada kolom "Date" atau "Product" dsb. 

Cukup jelas?
Lihat gambar Skema Bintang di bawah ini.
Mohon maaf jika postingan ini terlalu teknikal. Hanya untuk memperjelas saja.

#cardinality #relationshipmodel #powerbi #starschema #modelview #dimensiontable #facttable


RMunadji

No comments: