Apache Superset untuk Pemula: Alternatif BI Gratis
TL;DR
Apache Superset adalah tool business intelligence open-source gratis yang kamu install di server sendiri buat bikin chart dan dashboard dari database SQL. Alurnya empat langkah: install pakai Docker, sambungin database, bikin dataset, lalu susun chart jadi dashboard. Cocok buat tim yang datanya di PostgreSQL atau MySQL dan nggak mau bayar lisensi BI.
Apache Superset adalah tool BI open-source buat bikin chart dan dashboard dari database SQL. Gratis sepenuhnya, jalan di server kamu sendiri.
Dibikin di Airbnb, sekarang dikelola Apache Software Foundation. Netflix, Dropbox, dan Lyft pakai ini.
Kalau data kamu udah di PostgreSQL atau MySQL dan kamu males bayar lisensi Tableau, Superset jawabannya. Tapi ada harga yang harus kamu bayar: waktu setup.
Apa itu Apache Superset?
Superset adalah aplikasi web yang kamu install di server, lalu kamu sambungin ke database. Dari situ kamu bikin chart lewat klik-klik atau lewat SQL, dan susun chart itu jadi dashboard yang bisa dishare ke tim.
Bedanya sama Looker Studio: data kamu nggak pernah keluar dari server sendiri. Bedanya sama Tableau: nol biaya lisensi.
| Aspek | Superset |
|---|---|
| Biaya lisensi | Rp 0 (Apache 2.0) |
| Biaya server | ~Rp 150–250 ribu/bln (VPS 4 GB) |
| Waktu setup pertama | Setengah hari |
| Sumber data | PostgreSQL, MySQL, BigQuery, Snowflake, dll. |
| Butuh SQL? | Nggak wajib, tapi bantu banget |
| Jenis chart bawaan | 40+ |
Langkah 1: Install pakai Docker
Cara paling gampang dan paling nggak bikin frustrasi.
Pastiin Docker dan Docker Compose udah kepasang. Terus:
git clone --depth=1 https://github.com/apache/superset.git
cd superset
docker compose -f docker-compose-image-tag.yml up -d
Tunggu 10 sampai 15 menit. Superset lagi narik image, bikin database internal, dan ngisi data contoh.
Habis itu buka http://localhost:8088. Login default: username admin, password admin.
Ganti password itu sekarang juga. Serius. Banyak instance Superset yang kebuka di internet dengan kredensial default.
Satu lagi yang wajib: set SECRET_KEY sendiri di file konfigurasi. Kalau kamu pakai yang default, siapa pun bisa bikin session palsu.
# superset_config.py
SECRET_KEY = 'ganti-dengan-string-acak-panjang-kamu'
Generate string acaknya pakai openssl rand -base64 42.
Langkah 2: Sambungin database kamu
Di menu atas: Settings → Database Connections → + Database.
Pilih jenis database kamu. Buat PostgreSQL, isi connection string:
postgresql://user:password@host:5432/nama_database
Klik Test Connection dulu sebelum simpan. Kalau gagal, biasanya karena satu dari tiga hal:
- Database kamu nolak koneksi dari IP server Superset (cek
pg_hba.conf). - Kamu pakai
localhostpadahal Superset jalan di container terpisah — pakaihost.docker.internalatau IP asli. - Driver database-nya belum kepasang di image Superset.
Yang kedua itu jebakan klasik. Di dalam Docker, localhost artinya container itu sendiri, bukan mesin kamu.
Langkah 3: Bikin dataset
Dataset itu "tabel" yang bakal jadi sumber chart kamu. Ada dua jenis.
Physical dataset
Nunjuk langsung ke tabel di database. Gampang, tapi terbatas — kamu nggak bisa gabungin dua tabel.
Data → Datasets → + Dataset → pilih database, schema, dan tabel. Selesai.
Virtual dataset (yang bakal kamu pakai)
Ini dataset dari query SQL. Di sinilah Superset jadi kuat.
Buka SQL → SQL Lab, tulis query, jalanin, terus klik Save → Save dataset.
SELECT DATE_TRUNC('month', t.tanggal) AS bulan,
t.cabang,
p.kategori,
SUM(t.qty * t.harga_satuan - COALESCE(t.diskon, 0)) AS omzet,
COUNT(DISTINCT t.transaksi_id) AS jumlah_transaksi
FROM transaksi t
LEFT JOIN produk p ON t.produk_id = p.produk_id
WHERE t.status = 'selesai'
GROUP BY DATE_TRUNC('month', t.tanggal), t.cabang, p.kategori;
Perhatiin LEFT JOIN dan COALESCE. Kalau ada produk yang nggak terdaftar, baris transaksinya tetap kehitung. Kalau diskon NULL, dia dianggap nol.
Salah satu dari dua ini kelewat, angka dashboard kamu bakal salah dan nggak ada yang ngasih tau. Detailnya ada di fungsi COALESCE dan LEFT JOIN.
Langkah 4: Bikin chart pertama
Dari dataset yang baru disimpan, klik Create chart.
Pilih tipe chart — mulai dari Bar Chart atau Time-series Line Chart. Jangan langsung nyoba Sankey Diagram, percaya deh.
Isi tiga hal:
- X-axis:
bulan - Metrics:
SUM(omzet) - Dimensions:
cabang(buat mecah garis per cabang)
Klik Create chart. Kalau kosong, cek dulu filter waktu di panel kiri — defaultnya sering "Last week", dan data kamu mungkin lebih lama dari itu.
Ini bug pertama yang bikin semua pemula bingung. Ganti Time Range jadi "No filter" dulu.
Simpan chart-nya. Kasih nama yang jelas: "Omzet Bulanan per Cabang", bukan "chart 1".
Langkah 5: Rangkai jadi dashboard
Dashboards → + Dashboard. Drag chart dari panel kanan ke kanvas.
Tambahin filter supaya dashboard-nya interaktif. Klik ikon filter di kiri, pilih kolom cabang. Sekarang orang bisa pilih cabang dan semua chart ikut berubah.
Saranku buat dashboard pertama: maksimal 6 chart. Dashboard dengan 20 chart itu nggak ada yang baca.
Contoh kasus: dashboard toko_berkah dalam 3 jam
Aku coba bikin dashboard lengkap dari dataset toko_berkah — 12.400 transaksi, 3 cabang, 18 bulan, di PostgreSQL.
Rinciannya:
| Tahap | Waktu |
|---|---|
| Install Docker + Superset | 25 menit |
| Konfigurasi SECRET_KEY + ganti password | 15 menit |
| Koneksi database (gagal 2x karena localhost) | 40 menit |
| Bikin virtual dataset | 20 menit |
| Bikin 5 chart | 50 menit |
| Susun dashboard + filter | 30 menit |
| Total | 3 jam |
Empat puluh menit hilang cuma gara-gara localhost di dalam Docker. Belajar dari kesalahanku.
Performanya: dashboard 5 chart dari 12.400 baris load dalam 1,1 detik. Superset nge-cache hasil query, jadi refresh kedua cuma 0,2 detik.
Kesalahan umum pemula
Pakai password default. admin/admin masih kepasang di ribuan instance Superset yang kebuka di internet. Ganti sekarang.
Chart kosong padahal data ada. Cek Time Range. Defaultnya sering "Last week". Ini penyebab 80% pertanyaan "kenapa chart-ku kosong".
Bikin virtual dataset yang narik semua baris. Kalau query dataset kamu SELECT * FROM transaksi tanpa agregasi, tiap chart bakal narik jutaan baris. Agregasi dulu di dataset, jangan di chart.
Nggak aktifin caching. Superset punya cache bawaan tapi harus dikonfigurasi (biasanya pakai Redis). Tanpa itu, tiap orang yang buka dashboard bikin query baru ke database.
Ngarep Superset gampang kayak Google Sheets. Bukan. Superset butuh orang yang nyaman sama SQL dan sedikit ngerti server. Kalau tim kamu nggak punya itu, Metabase atau Looker Studio lebih realistis.
Superset atau Metabase?
Pertanyaan yang paling sering muncul. Jawaban singkatku:
- Metabase kalau banyak orang non-teknis yang bakal bikin pertanyaan sendiri. Setup lebih cepat, UI lebih ramah.
- Superset kalau tim kamu udah nyaman nulis SQL, butuh chart yang nggak standar, atau data kamu gede banget.
Kalau masih ragu, baca Metabase vs Looker Studio dulu — di situ ada kerangka mikirnya.
FAQ
Apa itu Apache Superset?
Apache Superset adalah tool business intelligence open-source yang dibikin di Airbnb dan sekarang dikelola Apache Software Foundation. Fungsinya bikin chart dan dashboard dari database SQL tanpa perlu nulis kode frontend. Gratis sepenuhnya, tapi kamu yang install dan ngurus servernya. Dipakai perusahaan seperti Netflix, Dropbox, dan Lyft.
Apache Superset gratis beneran?
Iya, lisensinya Apache 2.0 dan nggak ada versi berbayar dari Apache. Yang kamu bayar cuma servernya. Buat tim 10 orang, VPS 4 GB RAM sekitar Rp 150 sampai 250 ribu per bulan udah cukup. Ada layanan komersial seperti Preset yang nawarin Superset terkelola kalau kamu nggak mau ngurus server sendiri.
Susah nggak install Superset?
Pakai Docker Compose, lumayan gampang. Clone repo resminya, jalanin satu perintah, tunggu 10 sampai 15 menit, selesai. Yang bikin pemula nyerah biasanya bukan instalasinya, tapi konfigurasi setelahnya seperti setting SECRET_KEY, koneksi database eksternal, dan izin akses. Sisihkan setengah hari buat setup pertama.
Superset atau Metabase, pilih mana?
Metabase lebih ramah pemula dan lebih cepat setup, cocok kalau tim kamu banyak orang non-teknis. Superset lebih fleksibel di visualisasi dan lebih kuat buat data besar, tapi kurva belajarnya lebih curam. Kalau tim kamu udah nyaman nulis SQL dan butuh chart yang tidak standar, Superset menang.
Superset bisa konek ke Google Sheets?
Nggak langsung. Superset dirancang buat database SQL seperti PostgreSQL, MySQL, BigQuery, dan Snowflake. Kalau data kamu di Google Sheets, kamu perlu impor dulu ke database, atau pakai Looker Studio yang emang dibikin buat ekosistem Google. Superset nggak cocok buat data yang tinggal di spreadsheet.
Penutup
Yang perlu kamu inget dari tutorial ini:
Empat langkah — install Docker, sambungin database, bikin virtual dataset, susun chart. Sisihkan setengah hari buat setup pertama, dan jangan lupa ganti password default.
Dan yang paling sering nyelametin waktu: agregasi datamu di level dataset, bukan di chart. Dashboard yang lemot hampir selalu gara-gara ini.
Mau bikin virtual dataset yang bener? Latihan window function SQL dulu — itu yang bikin chart growth dan ranking kamu bisa jalan.
Panduan instalasi resmi dan semua opsi konfigurasi ada di dokumentasi resmi Apache Superset.
Mau praktek langsung? Mulai latihan SQL gratis
Latihan interaktif, langsung di browser.
Artikel Terkait
Cara Membuat Dashboard di Google Sheets Tanpa Tools Tambahan
Dashboard penjualan yang rapi bisa kamu bikin cuma pakai Google Sheets — tanpa Looker Studio, tanpa add-on, tanpa bayar apa pun. Ini urutan 6 langkahnya, lengkap dengan rumusnya.
Dashboard vs Laporan: Bedanya dan Kapan Bikin yang Mana
Dashboard buat mantau angka yang berubah tiap hari. Laporan buat jawab satu pertanyaan sekali dan tuntas. Salah pilih, kerjaanmu kebuang.
KPI Keuangan: Metrik yang Dibaca CFO Setiap Bulan
Delapan KPI keuangan yang beneran dibuka CFO tiap bulan, rumusnya, dan cara nyusunnya jadi satu dashboard yang kebaca dalam 90 detik.