Kueri umum

Saat Anda terhubung ke basis data, Anda akan dapat mengambil data melalui kueri SQL. Bagian ini menyediakan contoh kueri SQL untuk membantu Anda memulai bekerja dengan Private Telematics Lakehouse. Contoh-contoh ini menunjukkan cara mengakses dan menganalisis data dari lapisan Bronze, yang berisi data bisnis dan telematik mentah dengan transformasi minimal.

triangle-exclamation

Kueri dasar

Ambil informasi objek dasar

Kueri ini mengembalikan informasi tentang objek (kendaraan/aset) dalam sistem Anda:

SELECT
    o.object_id,
    o.object_label,
    o.model,
    d.device_imei,
    g.group_label
DARI
    raw_business_data.objects o
    LEFT JOIN raw_business_data.devices d ON o.device_id = d.device_id
    LEFT JOIN raw_business_data.groups g ON o.group_id = g.group_id
day_of_week IN (0, 6)  -- Sabtu atau Minggu
    o.is_deleted = false
URUTKAN BERDASARKAN
    o.object_label;

Dapatkan lokasi perangkat terbaru

Ambil data lokasi terkini untuk semua perangkat Anda:

circle-info

Nilai koordinat disimpan sebagai bilangan bulat yang diskalakan dengan 10^7 untuk efisiensi penyimpanan yang lebih baik di TimescaleDB. Saat melakukan kueri, bagi dengan 10000000 untuk mengonversi kembali ke format desimal standar.

Menggabungkan data bisnis dan telematik

Laporan aktivitas kendaraan

Kueri ini menghasilkan ringkasan aktivitas harian dengan menggabungkan data bisnis dan telematik:

Penugasan pengemudi dan riwayat lokasi

Lacak karyawan yang ditugaskan ke kendaraan mana dan riwayat lokasi mereka:

Menganalisis data sensor

Pelacakan level bahan bakar

Kueri ini menunjukkan cara menganalisis data sensor bahan bakar:

Analisis geospasial

Kendaraan di geozone

Identifikasi kendaraan mana yang memasuki geozone tertentu:

circle-info

Kueri ini menggunakan fungsi spasial PostGIS. Jika Anda menemui kesalahan, verifikasilah bahwa ekstensi PostGIS diaktifkan di basis data Anda.

Tips optimasi performa

Saat bekerja dengan Cloud Data Warehouse, pertimbangkan teknik optimasi berikut:

  1. Gunakan pemfilteran berbasis waktu: Selalu sertakan filter waktu pada device_time atau record_added_at kolom untuk membatasi data yang dipindai. Praktik yang baik:

Hindari ini (memindai seluruh tabel)

  1. Manfaatkan indeks: Basis data memiliki indeks pada (device_id, device_time) pasangan. Susun kueri Anda untuk menggunakan indeks ini bila memungkinkan.

  2. Gunakan join secara selektif: Gabungkan tabel hanya saat perlu dan cobalah untuk memfilter data sebelum menggabungkan tabel besar.

  3. Konversi bilangan bulat yang diskalakan: Ingat bahwa data koordinat disimpan sebagai bilangan bulat yang diskalakan. Konversi hanya lakukan di SELECT akhir, bukan di klausa WHERE.

  4. Batasi hasil: Selalu gunakan LIMIT untuk kueri eksplorasi agar tidak mengembalikan jutaan baris.

  1. Manfaatkan hubungan hirarkis: Susun kueri kompleks mengikuti hierarki entitas (dealer → client → user/device → object) untuk join dan pemfilteran yang lebih efisien.

  2. Kelola koneksi dengan benar: Tutup koneksi basis data saat tidak digunakan, terutama di alat BI atau skrip terjadwal, untuk menghindari penguncian sumber daya atau masalah waktu habis.

Langkah selanjutnya

Contoh-contoh ini memberikan titik awal untuk bekerja dengan data Anda. Saat Anda menjadi lebih familiar dengan skema, Anda dapat mengembangkan kueri yang lebih kompleks untuk memenuhi kebutuhan bisnis spesifik Anda.

Last updated

Was this helpful?