> 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/explorer-for-iotquery/custom-analysis-sql-configurator.md).

# Analisis kustom dan SQL Configurator

Tulis kueri PostgreSQL pada data armada, telusuri skema basis data lengkap, dan buat visualisasi kustom dalam SQL Configurator

Ini **Konfigurator analisis kustom & SQL** memungkinkan akses langsung ke basis data untuk analisis armada kustom di luar laporan standar. Tulis kueri SQL, jelajahi seluruh dataset Anda, dan buat visualisasi interaktif dalam satu antarmuka terpadu.

## Ikhtisar antarmuka

<figure><img src="https://1696125515-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoFNFEIINiGFbhi3Px3dE%2Fuploads%2Fgit-blob-6305c657612527db9d558268aef91422af45da63%2FSQL-configurator-and-visualization.webp?alt=media" alt="Database Schema browser showing raw_business_data and raw_telematics_data schemas with expandable table lists, SQL Query Execution panel with query input area and results display, and Visualization tab for chart creation"><figcaption></figcaption></figure>

Ruang kerja dari **Konfigurator SQL** terdiri dari 3 bagian utama:

1. **Peramban skema basis data** - Lihat struktur tabel dan klik skema untuk penjelajahan hubungan interaktif di dbdiagram.io
2. **Panel eksekusi kueri SQL** - Tulis kueri PostgreSQL dan lihat hasil dengan umpan balik langsung
3. **Antarmuka visualisasi interaktif** - Ubah hasil kueri menjadi diagram menggunakan fungsi seret dan lepas

## Struktur data Anda

{% hint style="info" %}
**Dampak konfigurasi**: Sistem Anda memproses kategori data yang berbeda berdasarkan pengaturan konfigurasi. Jika tabel yang diharapkan tampak tidak tersedia, periksa pengaturan kategori data Anda di [konfigurasi sistem](/docs/analytics/id/explorer-for-iotquery/settings-and-configuration.md).
{% endhint %}

Data PTL Anda muncul melalui dua skema utama yang diorganisasi berdasarkan sumber dan tujuan:

| **raw\_business\_data**                                                                                                                                                                                                                                                                                                                                                       | **raw\_telematics\_data**                                                                                                                                                                                                                                                                                                                               |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>Informasi organisasi dan operasional.<br><br>- <strong>Entitas inti:</strong> pengguna, perangkat, objek, kendaraan, karyawan<br>- <strong>Data operasional:</strong> tugas, formulir, zona, area, garasi<br>- <strong>Data referensi:</strong> model, entitas, informasi status<br>- <strong>Tabel relasi:</strong> penetapan kendaraan-supir, pemetaan pengguna-zona</p> | <p>Pelacakan GPS waktu nyata, pembacaan sensor, dan Status perangkat<br><br>- <strong>tracking\_data\_core:</strong> koordinat GPS, kecepatan, ketinggian, data kejadian<br>- <strong>inputs:</strong> Pembacaan sensor (Bahan bakar, suhu, tegangan)<br>- <strong>states:</strong> Indikator Status perangkat (Pengapian, pintu, mode operasional)</p> |

{% hint style="info" %}
Untuk detail tentang skema data yang tersedia di **IoT Query**, lihat [Ikhtisar skema](/docs/analytics/id/iot-query/schema-overview.md).
{% endhint %}

## Membuat visualisasi dari hasil kueri

Ubah hasil kueri SQL Anda menjadi visualisasi interaktif melalui alur kerja terstruktur:

{% stepper %}
{% step %}
Verifikasi konfigurasi data

Periksa bahwa semua kategori data yang diperlukan diaktifkan dalam pengaturan sistem Anda:

1. Buka **Konfigurasi PTL** di bilah sisi kiri
2. Verifikasi bahwa kategori data yang diperlukan (**Data pelacakan**, **Input**, **Status**) diaktifkan untuk kebutuhan analisis Anda
3. Jika diperlukan perubahan, perbarui konfigurasi dan pertimbangkan untuk menjalankan pemuatan data historis agar berlaku surut
   {% endstep %}

{% step %}
Kembangkan dan jalankan kueri Anda

Di **Panel eksekusi kueri SQL**:

1. Tulis kueri analisis Anda menggunakan sintaks PostgreSQL dan persyaratan pemformatan di atas
2. Sertakan nama bidang yang sesuai, konversi data, dan pemfilteran untuk kebutuhan visualisasi Anda
3. Klik **Jalankan** untuk menjalankan kueri Anda dan menghasilkan dataset
4. Tinjau hasil untuk memastikan kualitas data dan format keluaran yang diharapkan
   {% endstep %}

{% step %}
Akses antarmuka visualisasi

Setelah kueri Anda berhasil dijalankan:

1. Beralih ke **Visualisasi** tab yang muncul di atas hasil kueri Anda
2. Hasil kueri Anda otomatis tersedia sebagai bidang data di antarmuka visualisasi
3. Pembuat bagan interaktif dimuat dengan dataset Anda siap untuk pembuatan visualisasi seret dan lepas
   {% endstep %}

{% step %}
Buat visualisasi interaktif

Gunakan antarmuka visualisasi untuk membuat bagan:

1. Seret bidang dari hasil kueri Anda ke area konfigurasi bagan (sumbu X, sumbu Y, filter, warna)
2. Pilih jenis visualisasi yang sesuai berdasarkan karakteristik data dan tujuan analisis Anda
3. Terapkan filter dan gaya untuk memperhalus tampilan visual Anda
4. Ekspor visualisasi yang selesai dalam berbagai format (PNG, SVG, CSV, base64) untuk berbagi dan pelaporan\\
   {% endstep %}
   {% endstepper %}

{% hint style="info" %}
**Panduan visualisasi terperinci**: Petunjuk langkah demi langkah lengkap untuk pembuatan bagan dibahas di [Buat visualisasi kustom](/docs/analytics/id/explorer-for-iotquery/custom-analysis-sql-configurator/creating-custom-visualizations.md).
{% endhint %}

## Tips pengembangan kueri

Buka bagian di bawah untuk menemukan praktik yang direkomendasikan saat bekerja dengan kueri di **Konfigurator SQL**.

<details>

<summary>Persyaratan format data untuk analisis telematika</summary>

Data telematika Anda menggunakan penyimpanan bilangan bulat berskala yang memerlukan konversi:

| **Jenis data**      | **Format penyimpanan**  | **Konversi yang diperlukan**                                            |
| ------------------- | ----------------------- | ----------------------------------------------------------------------- |
| **Koordinat GPS**   | Bilangan bulat berskala | Bagi dengan 10.000.000 untuk derajat desimal                            |
| **Nilai kecepatan** | Format bilangan bulat   | Bagi dengan 100 untuk km/jam                                            |
| **Stempel waktu**   | Dua varian              | Gunakan `device_time` untuk peristiwa, `platform_time` untuk pemrosesan |

</details>

<details>

<summary>Pengoptimalan performa dan kualitas data</summary>

**Praktik penting untuk analisis yang andal:**

* **Terapkan pemfilteran berbasis waktu**: Mengurangi ukuran dataset dan meningkatkan waktu respons dengan `WHERE device_time > now() - INTERVAL '7 days'`
* **Gunakan field terindeks**: Sertakan `device_id` dan `device_time` dalam klausa WHERE untuk performa kueri yang optimal
* **Validasi rentang data**: Saring batas koordinat dan kecepatan untuk mengidentifikasi pembacaan anomali
* **Verifikasi relasi**: Silangkan referensi hubungan data bisnis untuk memastikan penggabungan menghasilkan hasil yang diharapkan
* **Kelola himpunan hasil**: Tambahkan klausa LIMIT yang sesuai untuk kueri eksplorasi guna menghindari masalah performa
* **Tangani kesenjangan data**: Harapkan variasi normal seperti kesenjangan konektivitas saat kondisi sinyal buruk

{% hint style="info" %}
**Karakteristik data yang diharapkan**: Pembacaan sensor memerlukan validasi kalibrasi berkala, dan data terbaru mungkin masih diproses selama analisis real-time.
{% endhint %}

</details>

<details>

<summary>Pola analisis lintas skema</summary>

**Gabungkan data organisasi dan pelacakan untuk wawasan yang komprehensif:**

* **Integrasi data bisnis dan telematika**: Gabungkan menggunakan `device_id` sebagai kunci relasi utama antara skema
* **Korelasi pegawai-kendaraan**: Hubungkan melalui relasi tabel objek untuk analisis produktivitas
* **Interpretasi sensor**: Gunakan tabel referensi description\_parameters untuk menerjemahkan nilai berkode menjadi label yang terbaca
* **Analisis geografis**: Gabungkan koordinat pelacakan dengan definisi zona untuk wawasan operasional

**Contoh: Ikhtisar armada lengkap dengan LEFT JOIN**

Saat menganalisis operasi armada, Anda sering perlu melihat semua kendaraan terlepas dari status aktivitasnya saat ini. Contoh ini menunjukkan bagaimana `JOIN kiri` mempertahankan catatan kendaraan lengkap bahkan ketika data pelacakan atau penugasan pengemudi tidak tersedia.

```sql
-- Tampilkan semua Kendaraan dengan penugasan Supir dan aktivitas terbaru
SELECT 
    o.object_label sebagai nama_kendaraan,
    e.first_name || ' ' || e.last_name as assigned_driver,
    MAX(t.device_time) as last_seen,
    COUNT(t.device_id) as tracking_points_7days
FROM raw_business_data.objects o
LEFT JOIN raw_business_data.employees e ON o.object_id = e.object_id  
LEFT JOIN raw_telematics_data.tracking_data_core t ON o.device_id = t.device_id
    AND t.device_time > CURRENT_DATE - INTERVAL '7 days'
Kelompok BY o.object_label, e.first_name, e.last_name
ORDER BY last_seen DESC NULLS LAST;
```

**Wawasan utama**: LEFT JOIN memastikan semua Kendaraan muncul dalam hasil, bahkan tanpa pelacakan terbaru atau penugasan Supir.

{% hint style="info" %}
**Contoh kueri**: Pola lengkap yang spesifik untuk kasus penggunaan tersedia di [Buku resep SQL](/docs/analytics/id/example-queries.md).
{% endhint %}

</details>

## Langkah berikutnya

* [Buat visualisasi kustom](/docs/analytics/id/explorer-for-iotquery/custom-analysis-sql-configurator/creating-custom-visualizations.md) - Proses lengkap untuk membuat bagan dan analisis visual
* [Buku resep SQL](/docs/analytics/id/example-queries.md) - Pola kueri lanjutan yang disusun menurut skenario analitis
* [Lapisan data mentah](/docs/analytics/id/iot-query/schema-overview/bronze-layer.md) - Referensi skema basis data lengkap dan definisi kolom

{% hint style="info" %}
**Analitik produksi**: Untuk pelaporan dan dasbor berskala perusahaan, pertimbangkan alat BI khusus yang terhubung langsung ke instance PTL Anda untuk meningkatkan skalabilitas dan fitur kolaborasi. Pelajari selengkapnya di [Memilih alat BI](/docs/analytics/id/iot-query/connection-setup/selecting-bi-tools.md).
{% endhint %}


---

# 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/explorer-for-iotquery/custom-analysis-sql-configurator.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.
