Lewati ke konten utama

Skema Star vs Skema Snowflake: Perbedaan & Kasus Penggunaan

Panduan ini mengulas skema star dan snowflake — dua cara umum untuk menata data dalam gudang data. Anda akan mempelajari cara kerjanya, perbedaannya, dan kapan menggunakan masing-masing agar sesuai dengan kebutuhan data Anda.
Diperbarui 16 Apr 2026  · 9 mnt baca

Jika Anda bekerja dengan gudang data, Anda tahu betapa pentingnya menata data agar efisien dan mudah dikelola. Namun, pernahkah Anda berpikir skema basis data mana yang paling sesuai dengan kebutuhan Anda? Ada dua kerangka utama yang bisa Anda gunakan untuk ini: skema star dan skema snowflake.

Skema star itu sederhana dan cepat — ideal ketika Anda perlu mengekstrak data untuk analisis dengan cepat. Di sisi lain, skema snowflake lebih terperinci. Skema ini memprioritaskan efisiensi penyimpanan dan pengelolaan relasi data yang kompleks. 

Dalam artikel ini, saya akan mengulas struktur kedua skema ini, menyoroti perbedaannya, dan menjabarkan keunggulannya. Pada akhirnya, Anda akan tahu di mana masing-masing skema cocok dan bagaimana memutuskan mana yang terbaik untuk proyek data Anda.

Apa itu Skema Star?

Skema star adalah cara mengorganisasi data dalam basis data, terutama di gudang data, untuk memudahkan dan mempercepat analisis. Di tengah, ada tabel utama yang disebut tabel fakta, yang menyimpan data terukur seperti penjualan atau pendapatan. Di sekelilingnya terdapat tabel dimensi, yang menambahkan detail seperti nama produk, informasi pelanggan, atau tanggal. Tata letak ini membentuk bentuk menyerupai bintang.

Star schema layout.

Tata letak skema star. Gambar oleh Penulis.

Mari lihat fitur utama skema star:

  • Tabel dimensi satu tingkat: Tabel dimensi terhubung langsung ke tabel fakta tanpa lapisan tambahan. Setiap tabel berfokus pada satu area, seperti produk, wilayah, atau waktu, sehingga mudah digunakan.
  • Desain terdenormalisasi: Dalam skema star, data terkait disimpan bersama dalam satu tabel menggunakan pendekatan terdenormalisasi. Misalnya, tabel produk dapat mencakup ID produk, nama, dan kategori di tempat yang sama. Meski ini dapat menyebabkan pengulangan data, kueri diproses lebih cepat.
  • Umum dalam gudang data: Skema star digunakan untuk analisis cepat. Skema ini mudah memfilter atau menghitung total, sehingga kemungkinan menjadi pilihan tepat untuk gudang data yang membutuhkan wawasan cepat.

Mari pahami ini dengan diagram skema star sederhana. Tabel fakta Sales berada di tengah. Tabel ini menyimpan data numerik yang ingin Anda analisis, seperti penjualan atau laba. Terhubung dengannya ada tabel dimensi dengan detail deskriptif, seperti nama produk, lokasi pelanggan, atau tanggal:

Real world example of star schema.

Contoh skema star. Gambar oleh Penulis. 

Berikut contoh SQL sederhana untuk menyiapkan skema star dengan tabel fakta Sales dan tabel dimensi untuk Product, Customer, dan Date:

-- Fact table
CREATE TABLE Sales (
    Sales_ID INT PRIMARY KEY,
    Product_ID INT,
    Customer_ID INT,
    Date_ID INT,
    Sales_Amount DECIMAL(10, 2),
    FOREIGN KEY (Product_ID) REFERENCES Product(Product_ID),
    FOREIGN KEY (Customer_ID) REFERENCES Customer(Customer_ID),
    FOREIGN KEY (Date_ID) REFERENCES Date(Date_ID)
);

-- Dimension table: Product
CREATE TABLE Product (
    Product_ID INT PRIMARY KEY,
    Product_Name VARCHAR(100),
    Category VARCHAR(50)
);

-- Dimension table: Customer
CREATE TABLE Customer (
    Customer_ID INT PRIMARY KEY,
    Customer_Name VARCHAR(100),
    Location VARCHAR(50)
);

-- Dimension table: Date
CREATE TABLE Date (
    Date_ID INT PRIMARY KEY,
    Date DATE,
    Year INT,
    Month VARCHAR(20)
);

Tata letak ini mempercepat kueri karena tidak ada join yang kompleks. Misalnya, kueri berikut mengambil total penjualan yang dikelompokkan menurut lokasi pelanggan, memanfaatkan join sederhana dari skema star:

SELECT c.Location, SUM(s.Sales_Amount) AS TotalSales
FROM Sales s
JOIN Customer c ON s.Customer_ID = c.Customer_ID
GROUP BY c.Location;

Namun, Anda harus menerima adanya redundansi data karena tabel dimensi dapat berisi informasi yang berulang.

Kelebihan dan keterbatasan skema star

Sekarang setelah Anda tahu apa itu skema star, mari lihat mengapa skema ini menonjol:

  • Performa kueri lebih cepat: Skema star menyederhanakan pengambilan data sehingga kueri menjadi cepat. Misalnya, jika saya ingin melihat tren penjualan, saya akan menggabungkan tabel fakta dengan tabel dimensi yang tepat. Dan yang terbaik, saya melakukan semua ini tanpa harus berurusan dengan relasi yang kompleks. Ini membuat kueri berjalan lebih cepat dan menghemat banyak waktu.
  • Mudah dipahami: Strukturnya logis dan mudah dipahami, bahkan bagi pengguna non-teknis. Anggota tim baru dapat dengan cepat memahami tabel mana yang berisi data yang mereka butuhkan, sehingga mempercepat analisis dan menyederhanakan pemeliharaan.

Meski banyak manfaatnya, skema star memiliki kekurangan. Seperti saya sebutkan sebelumnya, karena denormalisasi, tabel dimensi sering berisi informasi yang berulang, yang meningkatkan penggunaan penyimpanan. Misalnya, jika beberapa produk termasuk dalam kategori yang sama, nama kategori tersebut mungkin berulang di tiap produk, sehingga memakan ruang penyimpanan lebih besar.

Apa itu Skema Snowflake?

Skema snowflake adalah cara lain untuk mengorganisasi data. Dalam skema ini, tabel dimensi dipecah menjadi sub-dimensi yang lebih kecil agar data lebih tertata dan terperinci — layaknya kepingan salju di danau yang luas. 

Snowflake schema layout.

Tata letak skema snowflake. Gambar oleh Penulis.

Mari lihat fitur utama skema snowflake yang membedakannya dari skema lain:

  • Tabel dimensi multi-tingkat: Kita dapat menguraikan tabel dimensi menjadi tabel yang lebih kecil dan lebih spesifik. Misalnya, jika saya ingin melacak lokasi toko, alih-alih menaruh semua detail lokasi dalam satu tabel besar, saya bisa memecahnya menjadi tabel terpisah untuk negara, provinsi, dan kota. Dengan begitu, setiap tabel hanya memuat informasi yang diperlukan untuk mengurangi redundansi dan meningkatkan kerapian.
  • Normalisasi untuk efisiensi penyimpanan: Berbeda dengan skema star, skema snowflake mengikuti desain ternormalisasi, yang menghindari duplikasi data. Misalnya, alih-alih mengulang kategori produk seperti Electronics untuk setiap produk, saya bisa menyimpan kategori di tabel terpisah dan menautkannya ke tiap produk.
  • Cocok untuk lingkungan data yang kompleks: Skema snowflake paling efektif untuk lingkungan data yang kompleks karena menggunakan tabel multi-tingkat untuk menangani relasi rumit dan struktur data hierarkis.

Mari pahami ini dengan diagram skema snowflake sederhana. Di tengah ada tabel fakta, yang berisi data terukur. Tabel ini terhubung ke tabel dimensi yang mendeskripsikan fakta, dan tabel dimensi tersebut bercabang lagi ke tabel sub-dimensi, membentuk struktur seperti kepingan salju. 

Sebagai contoh, di sini saya memecah Product menjadi tabel Manufacturer dan Category serta tabel Customer menjadi tabel Transaction dan Location :

Real world example of snowflake schema.

Contoh skema snowflake. Gambar oleh Penulis.

Berikut contoh SQL yang menggambarkan skema snowflake di mana tabel Product dinormalisasi lebih lanjut menjadi tabel Category dan Manufacturer:

-- Fact table remains the same
CREATE TABLE Sales (
    Sales_ID INT PRIMARY KEY,
    Product_ID INT,
    Customer_ID INT,
    Date_ID INT,
    Sales_Amount DECIMAL(10, 2),
    FOREIGN KEY (Product_ID) REFERENCES Products(Product_ID),
    FOREIGN KEY (Customer_ID) REFERENCES Customers(Customer_ID),
    FOREIGN KEY (Date_ID) REFERENCES Dates(Date_ID)
);

-- Dimension table: Product
CREATE TABLE Product (
    Product_ID INT PRIMARY KEY,
    Product_Name VARCHAR(100),
    Category_ID INT,
    Manufacturer_ID INT,
    FOREIGN KEY (Category_ID) REFERENCES Category(Category_ID),
    FOREIGN KEY (Manufacturer_ID) REFERENCES Manufacturer(Manufacturer_ID)
);

-- Sub-dimension table: Category
CREATE TABLE Category (
    Category_ID INT PRIMARY KEY,
    Category_Name VARCHAR(50)
);

-- Sub-dimension table: Manufacturer
CREATE TABLE Manufacturer (
    Manufacturer_ID INT PRIMARY KEY,
    Manufacturer_Name VARCHAR(100)
);

Kueri berikut menghitung total penjualan berdasarkan kategori produk. Meskipun melibatkan lebih banyak join dibandingkan skema star, desain ini lebih efisien dalam penyimpanan:

SELECT cat.Category_Name, SUM(s.Sales_Amount) AS TotalSales
FROM Sales s
JOIN Product p ON s.Product_ID = p.Product_ID
JOIN Category cat ON p.Category_ID = cat.Category_ID
GROUP BY cat.Category_Name;

Kelebihan dan keterbatasan skema snowflake

Seperti skema star, skema snowflake juga memiliki keunggulannya sendiri. Mari lihat apa saja:

  • Redundansi data lebih sedikit: Normalisasi memastikan data yang sama tidak disimpan berulang kali, sehingga mengurangi duplikasi.
  • Penyimpanan efisien untuk dataset besar: Skema ini menghemat ruang penyimpanan dengan menghindari pengulangan data, sehingga ideal untuk mengelola dataset besar.

Namun, meski memiliki keunggulan, ada beberapa keterbatasan juga. Misalnya, kueri bisa lebih lambat karena ada lebih banyak join antar tabel. Selain itu, struktur multi-tingkat lebih menantang untuk dirancang dan dipelihara dibandingkan skema yang lebih sederhana seperti skema star. Jadi, gunakan ini hanya jika Anda memiliki tim DBA yang berpengalaman.

Saya menyarankan mengikuti kursus Database Design jika Anda ingin mempelajari lebih lanjut tentang menata data secara efisien untuk analisis. 

Menggunakan Pendekatan Hibrida

Dalam proyek nyata, umum untuk menggunakan kedua pola pada lapisan yang berbeda guna menggabungkan kekuatan dari kedua pendekatan:

  • Pertahankan struktur yang lebih ternormalisasi (snowflake) di lapisan gudang untuk konsistensi dan kemudahan pemeliharaan
  • Publikasikan mart berbentuk star atau view terdenormalisasi untuk BI dan pelaporan

Ini memungkinkan tim menyeimbangkan integritas dan tata kelola data dengan konsumsi analitik yang cepat dan sederhana.

Skema Star vs Skema Snowflake

Baik skema star maupun snowflake banyak digunakan dalam gudang data, namun karakteristik uniknya membuat keduanya cocok untuk kebutuhan yang berbeda. Mari lihat bagaimana skema ini berbeda dalam struktur, performa, kebutuhan penyimpanan, dan kasus penggunaan.

Struktur

Dalam skema star, semua tabel dimensi terhubung langsung ke satu tabel fakta pusat. Ini berarti semua data referensi Anda hanya selangkah dari data utama Anda, sehingga mudah dipahami dan digunakan.

Sebaliknya, skema snowflake memecah tabel dimensi menjadi tabel sub-dimensi yang lebih kecil dan lebih spesifik. Misalnya, Anda dapat memiliki tabel terpisah untuk negara, provinsi, dan kota alih-alih satu tabel lokasi. Walaupun ini menciptakan struktur yang lebih tertata dan terperinci, hal ini juga berarti dibutuhkan lebih banyak koneksi (atau join) untuk mengakses data — alasan utama mengapa skema snowflake lebih kompleks dibandingkan skema star.

Performa

Dalam hal kecepatan, skema star sering lebih unggul. Karena semua tabel dimensi terhubung langsung ke tabel fakta, kueri biasanya membutuhkan lebih sedikit join, yang berarti kinerja lebih cepat. Misalnya Anda ingin menganalisis penjualan berdasarkan wilayah — dalam kasus ini, Anda dapat menggunakan skema star untuk mengambil data dengan pemrosesan minimal.

Sebaliknya, skema Snowflake sering lebih lambat karena Anda harus terhubung melalui beberapa tabel untuk mengambil data. Setiap join menambah waktu pemrosesan, membuat skema snowflake kurang efisien untuk tugas yang memerlukan hasil kueri cepat.

Kursus Joining Data in SQL adalah pengantar yang sangat baik untuk mempelajari cara menggabungkan tabel, menerapkan teori himpunan relasional, dan bekerja dengan subkueri.

Kebutuhan penyimpanan

Skema star memerlukan lebih banyak ruang penyimpanan karena menyimpan informasi yang berulang dalam tabel dimensi. Misalnya, jika beberapa produk termasuk dalam kategori yang sama, nama kategori akan berulang di setiap produk, sehingga meningkatkan kebutuhan penyimpanan.

Namun, skema snowflake menormalisasi data agar semua informasi hanya disimpan sekali. Misalnya, alih-alih mengulang nama kategori, nama tersebut disimpan dalam tabel terpisah dan ditautkan ke tabel produk menggunakan foreign key. Desain ini menghemat ruang penyimpanan, sehingga ideal untuk dataset besar.

Kasus penggunaan

Skema star ideal untuk sistem online analytical processing (OLAP), pelaporan, dan tugas business intelligence. Kesederhanaannya membuatnya sempurna untuk skenario di mana kecepatan dan kemudahan penggunaan penting, seperti membuat dasbor cepat atau laporan penjualan.

Skema snowflake sering digunakan untuk analisis keuangan atau sistem manajemen hubungan pelanggan (CRM). Dalam kasus seperti ini, menata hierarki terperinci dan menghemat ruang penyimpanan lebih penting daripada kecepatan kueri.

Tabel perbandingan

Berikut perbandingan cepat antara skema star dan snowflake untuk membantu Anda memutuskan mana yang paling sesuai dengan kebutuhan data Anda. Saya menyoroti perbedaan utama pada tabel ini, berfokus pada struktur, performa, penyimpanan, dan kasus penggunaan:

Fitur

Skema star

Skema snowflake

Pendekatan hibrida

Struktur

Tabel fakta pusat ditautkan ke dimensi terdenormalisasi

Tabel fakta pusat ditautkan ke dimensi ternormalisasi

Model inti ternormalisasi, plus mart berbentuk star atau view terdenormalisasi untuk konsumsi

Kompleksitas

Sederhana, dengan lebih sedikit join

Kompleks, dengan lebih banyak join

Sedang, dengan lebih banyak komponen, namun setiap lapisan tetap sederhana sesuai tujuannya

Redundansi data

Redundansi lebih tinggi karena dimensi terdenormalisasi

Redundansi lebih rendah karena dimensi ternormalisasi

Redundansi sedang karena denormalisasi selektif

Performa kueri

Kueri lebih cepat karena struktur yang lebih sederhana

Kueri lebih lambat karena join tambahan

Cepat untuk BI karena lapisan konsumsi terdenormalisasi

Penyimpanan

Memerlukan lebih banyak penyimpanan karena redundansi

Memerlukan lebih sedikit penyimpanan karena normalisasi

Memerlukan penyimpanan moderat karena mart/view dapat menambah sebagian duplikasi

Kemudahan pemeliharaan

Lebih mudah dirancang dan dipelihara

Lebih kompleks untuk dirancang dan dipelihara

Mudah dipelihara, karena mart dapat dibangun ulang dari inti yang terkontrol

Paling cocok untuk

Dataset kecil hingga menengah

Dataset besar dan kompleks

Platform data modern dengan kebutuhan tata kelola dan performa BI sekaligus

Memilih Skema yang Tepat

Kapan menggunakan skema star

Jika Anda terutama ingin menata data secara sederhana dan cepat, skema star akan sangat cocok. Berikut kapan Anda dapat menggunakannya:

  • Jika Anda membangun model semantik untuk alat BI (misalnya, Power BI), dan menginginkan jumlah tabel serta relasi yang sedikit. Ini mendukung pemfilteran/pengelompokan yang intuitif dan cenderung berkinerja baik untuk visual interaktif.
  • Jika Anda ingin menjalankan kueri sederhana seperti mencari total penjualan per wilayah, gunakan skema star. Karena semua tabel dimensi terhubung langsung ke tabel fakta, ini menghindari kompleksitas yang tidak perlu dan memberikan jawaban lebih cepat.
  • Anda juga dapat menggunakan skema star ketika kecepatan adalah prioritas. Skema ini meminimalkan jumlah join tabel, sehingga kueri Anda berjalan lebih cepat. Saya pernah menggunakannya untuk membuat beberapa laporan penjualan, yang menghemat banyak waktu dibandingkan desain lain.
  • Jika dataset Anda kecil hingga menengah, redundansi skema star tidak akan menjadi masalah. Meski ada data berulang, skema ini tetap bekerja baik tanpa membebani penyimpanan.

Kapan menggunakan skema snowflake

Skema snowflake lebih cocok untuk merepresentasikan hierarki dan data referensi bersama, terutama ketika banyak atribut dimensi berulang di banyak baris. Berikut kapan Anda dapat menggunakannya:

  • Ketika dimensi Anda memiliki hierarki yang jelas (misalnya, CountryState/RegionCity) dan Anda ingin memodelkan level-level tersebut secara rapi sebagai tabel terpisah.​
  • Jika Anda menginginkan kontrol yang lebih kuat atas data referensi bersama (misalnya, daftar standar seperti kategori, pabrikan, atau geografi) untuk mengurangi duplikasi dan mempermudah konsistensi definisi di seluruh gudang data.
  • Anda juga dapat menggunakan skema snowflake jika data Anda sering berubah, seperti pembaruan nama wilayah. Skema ini menjaga pembaruan tetap konsisten di seluruh data terkait untuk meminimalkan kesalahan dan upaya pemeliharaan.
  • Jika analisis Anda melibatkan banyak level data, skema snowflake dapat membantu Anda menata dan merepresentasikan relasi tersebut dengan rapi.

Pemilihan skema di gudang data cloud

Di banyak gudang data cloud modern, biaya penyimpanan relatif murah dibandingkan komputasi. Artinya, “penyimpanan ekstra” dari dimensi terdenormalisasi sering kurang penting dibandingkan biaya komputasi untuk memindai dan menggabungkan data.

Saat memilih antara star dan snowflake, pertimbangkan model harga platform Anda (komputasi vs penyimpanan), konkurensi kueri, serta apakah Anda dapat menggunakan caching/materialized view untuk menekan biaya kueri.

Penutup

Dalam blog ini, saya telah membahas perbedaan antara skema star dan snowflake, kekuatannya, serta kapan menggunakan masing-masing. Saya harap Anda mendapatkan pemahaman yang jelas dan kiat praktis untuk pekerjaan Anda! Jika ingin belajar lebih lanjut, lihat sumber berikut di DataCamp:

FAQ

Apa tujuan pengindeksan dalam skema ini?

Pengindeksan meningkatkan performa kueri pada kedua skema dengan mempercepat pengambilan data.

Apa yang dimaksud dengan tabel dimensi dan tabel fakta?

Tabel dimensi menyimpan atribut deskriptif (seperti nama produk atau tanggal) yang mendeskripsikan data pada tabel fakta.

Sementara itu, tabel fakta menyimpan data kuantitatif, seperti angka penjualan atau jumlah transaksi, dan terhubung ke tabel dimensi.

Apakah skema ini cocok untuk data tidak terstruktur?

Tidak, skema ini dirancang untuk data terstruktur. Data tidak terstruktur memerlukan model berbeda, seperti NoSQL atau data lake.

Bagaimana saya dapat merancang skema star dan snowflake?

Untuk membuat dan memvisualisasikan skema ini, Anda dapat menggunakan alat pemodelan data (ERDPlus), alat BI (Tableau, Power BI, QlikView), atau platform cloud (Databricks).

Apakah ada alternatif untuk skema star dan snowflake?

Ya, Anda dapat menggunakan skema Galaxy, pemodelan Data Vault, atau model dimensional yang lebih kompleks. Opsi-opsi ini terutama berbeda dalam cara mengorganisasi data dan menangani relasi antar informasi.


Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

Saya seorang ahli strategi konten yang senang menyederhanakan topik kompleks. Saya telah membantu perusahaan seperti Splunk, Hackernoon, dan Tiiny Host membuat konten yang menarik dan informatif untuk audiens mereka.

Topik

Kursus Data Engineering

Kursus

Pengantar Data Engineering

4 Hr
126.7K
Pelajari dunia rekayasa data dalam kursus singkat ini, mencakup alat dan topik seperti ETL dan komputasi awan.
Lihat DetailRight Arrow
Mulai Kursus
Lihat Lebih BanyakRight Arrow
Terkait

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

12 mnt

Lihat Lebih BanyakLihat Lebih Banyak