Memvisualisasikan Data Insight Tempat Secara Dinamis dengan Data Studio

Ringkasan

Diagram alur kerja yang menggambarkan Data Studio mengirimkan parameter dinamis untuk kota, hari, dan waktu ke Places Insights di BigQuery untuk menghasilkan peta panas kepadatan geospasial.

Dokumen ini menjelaskan cara membuat laporan geospasial dinamis menggunakan Places Insights dan Data Studio. Maksimalkan nilai data lokasi Anda dengan memberdayakan pemangku kepentingan non-teknis untuk menjawab pertanyaan mereka sendiri. Panduan ini menunjukkan cara mengubah laporan statis menjadi alat interaktif bergaya peta panas untuk analisis pasar, tanpa harus menulis SQL untuk setiap permintaan. Aktifkan akses ke data lokasi yang kompleks, sehingga menjembatani kesenjangan antara data engineering dan business intelligence.

Mengadopsi pola arsitektur ini akan memberikan beberapa manfaat utama:

  • Representasi Data Visual: Mengubah data Places Insights menjadi peta dan diagram interaktif yang langsung mengomunikasikan kepadatan dan tren spasial.
  • Eksplorasi yang Disederhanakan tanpa SQL: Memungkinkan anggota tim, seperti analis pasar atau perencana real estate, untuk memfilter data secara dinamis menggunakan parameter yang telah ditentukan (misalnya, mengubah "Kota" atau "Waktu dalam Sehari" menggunakan menu dropdown). Mereka dapat menjelajahi data tanpa harus menulis satu baris SQL pun.
  • Kolaborasi yang Lancar: Fitur berbagi Data Studio standar memungkinkan Anda mendistribusikan insight interaktif ini dengan aman.

Alur Kerja Solusi

Alur kerja berikut menetapkan arsitektur pelaporan yang berperforma tinggi. Alur kerja ini bergerak dari dasar statis ke aplikasi yang sepenuhnya dinamis, sehingga memastikan kebenaran data sebelum memperkenalkan kompleksitas.

Prasyarat

Sebelum memulai, ikuti petunjuk berikut untuk menyiapkan Places Insights. Anda memerlukan akses ke Data Studio, yang merupakan alat tanpa biaya.

Langkah 1: Menetapkan Dasar Geospasial Statis

Sebelum memperkenalkan interaktivitas, tetapkan kueri dasar dan pastikan kueri tersebut dirender dengan benar di Data Studio. Gunakan Places Insights dan kemampuan geospasial BigQuery untuk menggabungkan data ke dalam petak heksagonal menggunakan sistem pengindeksan H3. Tindakan ini akan menghasilkan output kueri yang dapat digunakan dengan jenis diagram peta terisi Data Studio untuk visualisasi.

1.1 Menghubungkan Data

Gunakan kueri statis berikut untuk membuat koneksi awal. Kueri ini menargetkan lokasi (London) dan kategori (Restoran) tetap untuk memvalidasi pipeline data.

SELECT
  h3_index,
  `carto-os.carto.H3_BOUNDARY`(h3_index) AS h3_geo,
  restaurant_count
FROM (
  SELECT WITH AGGREGATION_THRESHOLD
    `carto-os.carto.H3_FROMGEOGPOINT`(point, 8) AS h3_index,
    COUNT(*) AS restaurant_count
  FROM
    -- Note: Change 'gb' to your target country code (e.g., 'us')
    `places_insights___gb.places`
  WHERE
    'London' IN UNNEST(locality_names)
    AND 'restaurant' IN UNNEST(types)
  GROUP BY
    h3_index
)
ORDER BY
  restaurant_count DESC;

Catatan tentang Agregasi Spasial

Kueri ini menggunakan fungsi dari CARTO Analytics Toolbox (carto-os) yang tersedia secara publik di Google Cloud BigQuery. Fungsi H3_FROMGEOGPOINT mengonversi titik lokasi tertentu menjadi sel H3 , yaitu sistem yang membagi dunia menjadi sel petak heksagonal.

Kami menggunakan transformasi ini karena Peta Terisi Data Studio memerlukan poligon (bentuk) untuk merender warna. Dengan mengonversi titik menjadi bentuk heksagonal, kita dapat memvisualisasikan kepadatan bisnis di area tertentu, bukan memplot ribuan titik yang tumpang-tindih.

Catatan tentang Batas Agregasi

Semua kueri Places Insights memerlukan klausa WITH AGGREGATION_THRESHOLD. Perlindungan privasi ini memastikan bahwa data hanya ditampilkan jika jumlah gabungannya adalah 5 atau lebih tinggi.

Dalam konteks visualisasi ini, jika sel petak H3 berisi kurang dari 5 restoran, sel tersebut akan sepenuhnya dihilangkan dari kumpulan hasil dan akan muncul kosong di peta Anda.

Untuk mengimplementasikan hal ini di Data Studio:

  1. Buat Laporan Kosong baru.
  2. Pilih BigQuery sebagai konektor data.
  3. Pilih KUERI KUSTOM dari menu sebelah kiri dan pilih ID Project penagihan Anda.
  4. Tempelkan Kueri Dasar Statis di atas ke editor.
  5. Hapus parameter Gunakan legacy SQL, Aktifkan rentang tanggal, dan Aktifkan email penampil alamat.
  6. Klik Tambahkan.

1.2 Mengonfigurasi Visualisasi Geospasial

Setelah data terhubung, konfigurasi Data Studio agar mengenali data batas H3 dengan benar:

  1. Tambahkan visualisasi Peta Terisi ke kanvas laporan, dari menu Tambahkan diagram.
  2. Pastikan kolom h3_geo, yang berisi geometri poligon, ditetapkan ke jenis data Geospasial.
    1. Klik ikon Edit sumber data (pensil) di samping nama koneksi Anda.
    2. Jika h3_geo ditetapkan ke Teks (ABC), gunakan menu dropdown untuk memilih Geo > Geospasial,
    3. Klik Selesai.
  3. Petakan kolom h3_index ke Lokasi (bertindak sebagai ID unik).
  4. Petakan kolom h3_geo ke Kolom Geospasial (bertindak sebagai geometri poligon).
  5. Petakan kolom restaurant_count ke Metrik warna.

Tindakan ini akan merender peta kepadatan restoran berdasarkan sel H3. Warna biru yang lebih gelap (opsi warna default) menunjukkan sel dengan jumlah restoran yang lebih tinggi.

Peta London yang terisi dan ditumpuk dengan petak heksagonal, dengan sel biru yang lebih gelap menunjukkan konsentrasi restoran yang lebih tinggi. Legenda menunjukkan jumlah kepadatan yang berkisar dari 5 hingga 1.215.

Langkah 2: Mengimplementasikan Parameter Dinamis

Untuk membuat laporan interaktif, kita akan menambahkan kontrol ke laporan yang memungkinkan pengguna memilih dari opsi berikut:

  • Lokalitas: Mengontrol kota yang menjadi fokus laporan.
  • Hari dalam seminggu: Memfilter tempat berdasarkan hari buka, dengan memanfaatkan catatan regular_opening_hours dalam skema.
  • Jam dalam sehari: Memfilter tempat berdasarkan jam operasionalnya dengan membandingkan kolom start_time dan end_time.

Untuk mencapainya, Anda akan meneruskan parameter yang dipilih pengguna langsung ke kueri Places Insights yang diubah saat runtime. Di editor sumber data Data Studio, Anda harus secara eksplisit menentukan parameter ini sebagai variabel yang diketik.

Di Data Studio, pilih menu Resource, lalu klik Manage added data sources. Dalam panel yang muncul, pilih EDIT pada sumber data SQL Kustom BigQuery yang kita tambahkan sebelumnya.

Di jendela Edit Connection, pilih ADD A PARAMETER. Kita akan menambahkan tiga parameter, dengan nilai di bawah.

Nama Parameter Jenis Data Nilai yang Diizinkan Daftar nilai (Harus sama persis dengan DB)
p_locality Teks Daftar nilai
Nilai Label
London London
Manchester Manchester
Birmingham Birmingham
Glasgow Glasgow
p_day_of_week Teks Daftar nilai
Nilai Label
monday Senin
tuesday Selasa
wednesday Rabu
thursday Kamis
friday Jumat
saturday Sabtu
sunday Minggu
p_hour_of_day Teks Daftar nilai
Nilai Label
03:00:00 03.00 - 04.00
08:00:00 08.00 - 09.00
19:00:00 19.00 - 20.00

Contoh konfigurasi untuk parameter p_hour_of_day.

Antarmuka konfigurasi untuk parameter p_hour_of_day yang menampilkan bagian daftar nilai tempat string waktu dipetakan ke label yang mudah dibaca.

Untuk parameter p_hour_of_day, perhatikan kolom Value dengan cermat. Karena kueri SQL menggunakan CAST(@p_hour_of_day AS TIME), nilai yang diteruskan dari Data Studio harus dalam format HH:MM:SS yang ketat (jam 24 jam).

Setelah menyiapkan dan menyimpan ketiga parameter, ubah koneksi SQL Kustom BigQuery untuk mereferensikan variabel ini menggunakan sintaksis @.

Hal ini dilakukan dengan mengklik Edit Connection, dan menempelkan kueri yang diubah di bawah:

SELECT
  h3_index,
  `carto-os.carto.H3_BOUNDARY`(h3_index) AS h3_geo,
  restaurant_count
FROM (
  SELECT WITH AGGREGATION_THRESHOLD
    `carto-os.carto.H3_FROMGEOGPOINT`(point, 8) AS h3_index,
    COUNT(*) AS restaurant_count
  FROM
    `places_insights___gb.places`
  WHERE
    -- Dynamic locality filter based on parameter
    @p_locality IN UNNEST(locality_names)
    AND 'restaurant' IN UNNEST(types)
    AND business_status = 'OPERATIONAL'
    AND EXISTS (
      SELECT 1
      FROM UNNEST(
        CASE @p_day_of_week
          WHEN 'monday' THEN regular_opening_hours.monday
          WHEN 'tuesday' THEN regular_opening_hours.tuesday
          WHEN 'wednesday' THEN regular_opening_hours.wednesday
          WHEN 'thursday' THEN regular_opening_hours.thursday
          WHEN 'friday' THEN regular_opening_hours.friday
          WHEN 'saturday' THEN regular_opening_hours.saturday
          WHEN 'sunday' THEN regular_opening_hours.sunday
        END
      ) AS hours
      WHERE hours.start_time <= CAST(@p_hour_of_day AS TIME)
        AND hours.end_time >= TIME_ADD(CAST(@p_hour_of_day AS TIME), INTERVAL 1 HOUR)
    )
  GROUP BY
    h3_index
)
ORDER BY
  restaurant_count DESC;

Klik Hubungkan Kembali untuk menyimpan hasil edit. Dalam kueri yang diubah, perhatikan variabel baru seperti @p_hour_of_day, yang berkorelasi dengan nama parameter yang baru saja kita siapkan.

Kembali ke kanvas laporan untuk menampilkan parameter ini kepada pengguna akhir:

  1. Tambahkan tiga kontrol Daftar dropdown ke laporan Anda.
  2. Untuk setiap kontrol, tetapkan Kolom kontrol agar sesuai dengan parameter yang baru Anda buat:
    • Kontrol 1: p_locality
    • Kontrol 2: p_day_of_week
    • Kontrol 3: p_hour_of_day

Laporan akhir Anda akan terlihat seperti berikut. Mengubah nilai di salah satu kontrol dropdown akan memicu Data Studio untuk mengambil data yang diminta dari Places Insights sebelum memvisualisasikannya di peta.

Laporan interaktif akhir yang menampilkan peta kepadatan restoran di Glasgow dengan tiga filter drop-down di bagian atas. Menu jam dalam sehari diperluas untuk menampilkan rentang waktu yang dapat dipilih.

Langkah 3: Membagikan hasil

Gunakan alat berbagi yang ada di Data Studio untuk membagikan laporan. Hal ini akan memungkinkan penonton mengupdate visualisasi secara dinamis berdasarkan parameter yang mereka pilih dari daftar dropdown Anda.

Kesimpulan

Pola ini membuat alat pelaporan interaktif yang skalabel dan memanfaatkan daya komputasi BigQuery untuk menayangkan data Places Insights yang digabungkan ke Data Studio. Arsitektur ini menghindari masalah saat mencoba memvisualisasikan set data mentah yang besar dan memberi pengguna akhir fleksibilitas untuk menjelajahi data di berbagai dimensi, seperti waktu, lokasi, dan jenis bisnis, dalam waktu hampir real-time. Ini adalah alat yang canggih untuk memberikan fleksibilitas kepada pemangku kepentingan non-teknis Anda dalam menjelajahi data.

Langkah Berikutnya

Jelajahi variasi laporan dinamis lainnya dengan membuat parameter untuk berbagai bagian skema Places Insights:

  • Analisis Pesaing Dinamis: Buat parameter untuk nama brand agar pengguna dapat langsung mengalihkan peta panas antara berbagai pesaing untuk melihat saturasi relatif mereka di pasar. Lihat Tentang data Places Insights data untuk mengetahui ketersediaan data merek.
  • Pemilihan Lokasi Interaktif: Tambahkan parameter untuk price_level (misalnya, 'Sedang' vs. 'Mahal') dan rating minimum untuk memungkinkan tim real estate memfilter area secara dinamis yang cocok dengan profil demografi tertentu.
  • Area Jangkauan Kustom: Daripada memfilter berdasarkan nama kota, izinkan pengguna menentukan area studi kustom.
    • Berbasis radius: Buat tiga parameter numerik: p_latitude, p_longitude, dan p_radius_meters. Koordinat dapat diperoleh dari Google Maps Platform API, termasuk Geocoding API. Dalam kueri Anda, masukkan koordinat ini ke dalam fungsi ST_DWITHIN:
      • ST_DWITHIN(point, ST_GEOGPOINT(@p_longitude, @p_latitude), @p_radius_meters)
    • Berbasis poligon: Untuk bentuk kustom yang kompleks (seperti wilayah penjualan), pengguna tidak dapat dengan mudah memasukkan teks geometri. Sebagai gantinya, buat tabel pencarian di BigQuery yang berisi geometri bentuk dan nama yang mudah diingat (misalnya, "Zona A"). Buat parameter teks p_zone_name di Data Studio untuk memungkinkan pengguna memilih zona, dan gunakan subkueri untuk mengambil geometri untuk fungsi ST_CONTAINS.

Kontributor