Memahami Data Modeling dan Star Schema di Power BI

Pengenalan data modeling di Power BI: konsep star schema, tabel fakta dan dimensi, serta hubungan antar tabel.

Dari tabel tunggal ke model data

Saat pertama kali menggunakan Power BI, saya biasanya meletakkan semua kolom ke dalam satu tabel besar dan langsung membuat visualisasi. Untuk dataset kecil, pendekatan ini bisa bekerja. Tetapi seiring bertambahnya data dan kompleksitas laporan, satu tabel tunggal menjadi sulit dikelola, rentan terhadap duplikasi, dan menghasilkan hasil yang salah saat digunakan dalam visualisasi berbeda.

Di sinilah data modeling diperlukan.

Apa itu Star Schema?

Star schema (skema bintang) adalah pendekatan modeling data yang terdiri dari satu tabel fakta di tengah, dikelilingi oleh beberapa tabel dimensi.

  • Tabel fakta berisi data ukuran atau metrik yang dapat diagregasi, misalnya jumlah penjualan, quantity, dan revenue. Tabel ini biasanya berisi banyak baris.
  • Tabel dimensi berisi atribut deskriptif yang digunakan untuk menyaring, mengelompokkan, dan memberi label pada data fakta, misalnya pelanggan, produk, tanggal, dan toko.

Hubungan antara tabel fakta dan dimensi dibangun melalui kunci (key), biasanya satu arah: dimensi ke fakta.

Contoh struktur

Dalam proyek penjualan retail saya, saya membagi model menjadi:

  1. FactSales (tabel fakta): order_id, order_date_key, customer_key, product_key, store_key, quantity, revenue.
  2. DimDate (dimensi waktu): date_key, date, month, quarter, year, is_weekend.
  3. DimCustomer (dimensi pelanggan): customer_key, customer_name, city, segment.
  4. DimProduct (dimensi produk): product_key, product_name, category, brand.
  5. DimStore (dimensi toko): store_key, store_name, location, region.

DimDate, DimCustomer, DimProduct, dan DimStore terhubung ke FactSales melalui kunci masing-masing.

Keuntungan star schema

  • Performa lebih baik — Power BI (menggunakan engine VertiPaQ) mengoptimalkan model bintang dengan baik.
  • Mudah dipelihara — perubahan atribut pelanggan hanya diubah di DimCustomer, tidak perlu menyentuh tabel fakta.
  • Hasil agregasi akurat — menghindari duplikasi yang terjadi saat menggabungkan dua tabel fakta secara langsung.

Kesalahan umum

Salah satu kesalahan yang saya alami adalah membuat hubungan banyak-ke-banyak (many-to-many) antara dua tabel tanpa tabel jembatan. Ini menghasilkan jumlah yang tidak sesuai saat divisualisasikan. Solusinya adalah menormalisasi model atau menggunakan tabel jembatan yang sesuai.

Kesimpulan

Star schema adalah fondasi yang solid untuk membangun laporan Power BI yang terstruktur, performa baik, dan mudah dipercaya. Sebelum menarik visualisasi, luangkan waktu untuk merancang tabel fakta dan dimensi dengan benar.

Semua contoh dalam tulisan ini menggunakan data sintetis untuk demonstrasi pembelajaran.