> For the complete documentation index, see [llms.txt](https://navixy.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://navixy.com/docs/analytics/id/iot-query/connection-setup/selecting-bi-tools/connecting-apache-superset.md).

# Menghubungkan Apache Superset

Hubungkan Apache Superset ke IoT Query melalui pengandar PostgreSQL. Konfigurasikan koneksi basis data dan buat dasbor pemantauan armada interaktif

Dalam artikel ini, kita akan menelusuri proses menghubungkan Apache Superset ke basis data analitis. Agar lebih ilustratif, kita juga akan membuat dasbor yang terhubung ke basis data analitis dan memantau status real-time kendaraan, semuanya menggunakan Apache Superset.

{% hint style="info" %}
Panduan ini merupakan bagian dari **IoT Query** rangkaian dokumentasi dan secara khusus membahas cara menghubungkan Power BI ke gudang data Anda. Jika Anda masih memutuskan alat BI mana yang akan digunakan, lihat [Memilih alat BI](/docs/analytics/id/iot-query/connection-setup/selecting-bi-tools.md) ikhtisar.
{% endhint %}

## Fitur dasbor

* Menampilkan jumlah total objek
* Memvisualisasikan status gerakan kendaraan (bergerak/berhenti/parkir)
* Memvisualisasikan status koneksi (aktif/menganggur/luring)
* Tabel terperinci dengan status terkini semua kendaraan
* Penyaringan berdasarkan jenis kendaraan, kelompok, status gerakan, dan status koneksi
* Kemampuan ekspor data dan laporan
* Notifikasi dan aturan peringatan yang dapat disesuaikan

## Persyaratan teknis

* Docker dan Docker Compose
* Minimal RAM 4 GB (disarankan 8 GB)
* 20 GB ruang disk kosong
* Linux/Windows dengan WSL2/macOS
* Python 3.8+
* Akses internet untuk koneksi basis data

## Instalasi dan penyiapan

### 1. Instalasi dengan Docker (metode yang direkomendasikan)

1. Instal Docker dan Docker Compose dengan mengikuti dokumentasi resmi:

* [Instalasi Docker](https://docs.docker.com/engine/install/)
* [Instalasi Docker Compose](https://docs.docker.com/compose/install/)

2. Unduh file resmi docker-compose:

{% code overflow="wrap" %}

```sh
curl -fL https://raw.githubusercontent.com/apache/superset/master/docker-compose-non-dev.yml -o docker-compose.yml
```

{% endcode %}

3. Jalankan Superset:

```sh
docker-compose up -d
```

4. Buat administrator:

```sh
docker-compose exec superset superset fab create-admin \
  --username admin \
  --firstname Superset \
  --lastname Admin \
  --email admin@superset.com \
  --password admin
```

5. Inisialisasi basis data:

```sh
docker-compose exec superset superset db upgrade
```

6. Muat contoh dan inisialisasi peran:

```sh
docker-compose exec superset superset init
```

### 2. Instalasi dengan pip (untuk pengembangan)

1. Buat lingkungan virtual:

```sh
python -m venv venv
source venv/bin/activate  # for Linux/macOS
# or
.\venv\Scripts\activate  # for Windows
```

2. Instal Superset:

```sh
pip install apache-superset
```

3. Inisialisasi basis data:

```sh
superset db upgrade
```

4. Buat administrator:

```sh
export FLASK_APP=superset
superset fab create-admin
```

5. Muat contoh dan inisialisasi peran:

```sh
superset init
```

6. Jalankan Superset:

```sh
superset run -p 8088 --with-threads --reload --debugger
```

## Koneksi basis data

1. Masuk ke Superset (default: <http://localhost:8088>)
2. Buka Data → Databases
3. Klik "+" untuk menambahkan basis data baru
4. Isi parameter koneksi:
   1. Database: PostgreSQL
   2. URI SQLAlchemy: `postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME}`
   3. Display Name: Analytics Database
   4. Extra: `{"engine_params": {"connect_args": {"sslmode": "require"}}}`
5. Klik **Test Connection** untuk memverifikasi koneksi
6. Simpan pengaturan

### Referensi parameter koneksi

<table><thead><tr><th width="177.9090576171875">Parameter lakehouse</th><th>Lokasi pengaturan Apache Superset</th><th>Catatan</th></tr></thead><tbody><tr><td><strong>Host</strong></td><td><code>DB_HOST</code> di URI SQLAlchemy</td><td>Alamat server basis data yang diberikan dalam email sambutan Anda</td></tr><tr><td><strong>Port</strong></td><td><code>DB_PORT</code> di URI SQLAlchemy</td><td>Nilai default adalah 5432 untuk PostgreSQL</td></tr><tr><td><strong>Nama basis data</strong></td><td><code>DB_NAME</code> di URI SQLAlchemy</td><td>Nama basis data yang ditetapkan untuk Anda</td></tr><tr><td><strong>Nama pengguna</strong></td><td><code>DB_USER</code> di URI SQLAlchemy</td><td>Nama pengguna basis data Anda</td></tr><tr><td><strong>Kata sandi</strong></td><td><code>DB_PASS</code> di URI SQLAlchemy</td><td>Kata sandi basis data aman Anda</td></tr><tr><td><strong>Mode SSL</strong></td><td><code>connect_args</code> di parameter Extra</td><td>Atur ke <strong>require</strong> dalam konfigurasi JSON Extra</td></tr><tr><td><strong>Skema</strong></td><td>Konfigurasi dataset</td><td>Tentukan skema (<code>raw_business_data</code> atau <code>raw_telematics_data</code>) di setiap dataset</td></tr></tbody></table>

## Impor dasbor dan bagan

1. Klona [bi-integratons](https://github.com/Navixy/bi-integrations) repositori:

```sh
git clone https://github.com/Navixy/bi-integrations.git
```

2. Di Superset, buka **Settings → Import/Export**
3. Impor file dalam urutan berikut:
   1. `datasets.json` - dataset
   2. `charts.json` - bagan
   3. `dashboards.json` - dasbor
4. Setelah mengimpor, perbarui koneksi basis data di setiap dataset

## Pemecahan masalah

### Masalah koneksi basis data

* **Galat koneksi:** Periksa keakuratan kredensial dan parameter koneksi
* **Galat firewall:** Pastikan alamat IP Anda ditambahkan ke daftar izin
* **Masalah SSL:** Periksa pengaturan SSL dalam parameter koneksi

### Masalah performa

* **Pemuatan visualisasi yang lambat:**
  * Optimalkan kueri SQL
  * Kurangi jumlah elemen yang ditampilkan secara bersamaan
  * Gunakan cache hasil
* **Penggunaan memori tinggi:**
  * Tingkatkan sumber daya kontainer Docker
  * Optimalkan kueri basis data

### Masalah lainnya

Berikut beberapa kiat yang dapat membantu Anda memperbaiki masalah umum:

1. Periksa log Superset:

```
docker-compose logs superset
```

2. Mulai ulang kontainer:

```
docker-compose restart
```

3. Bersihkan cache peramban
4. Periksa versi Superset dan perbarui jika perlu

## Langkah berikutnya

Setelah berhasil menghubungkan Power BI ke **IoT Query** instans Anda, kami sarankan Anda untuk:

* Jelajahi skema data yang tersedia dengan meninjau [Ikhtisar skema](/docs/analytics/id/iot-query/schema-overview.md) bagian ini untuk lebih memahami struktur dan relasi data.
* Mulailah dengan kueri sederhana yang berfokus pada entitas bisnis tertentu sebelum membangun dasbor yang kompleks - lihat [contoh kueri](/docs/analytics/id/example-queries.md) sebagai referensi.

### **Dukungan**

Untuk pertanyaan teknis atau permintaan akses ke basis data demonstrasi, silakan hubungi: <support@squaregps.com>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://navixy.com/docs/analytics/id/iot-query/connection-setup/selecting-bi-tools/connecting-apache-superset.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
