Ringkasan

Dokumen ini menjelaskan cara membuat laporan geospasial dinamis menggunakan Places Insights dan Looker Studio. Optimalkan nilai data lokasi Anda dengan memungkinkan pemangku kepentingan non-teknis 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, yang menjembatani kesenjangan antara rekayasa data dan business intelligence.
Mengadopsi pola arsitektur ini memberikan beberapa manfaat utama:
- Representasi Data Visual: Mengubah data Insight Tempat 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 properti, untuk memfilter data secara dinamis menggunakan parameter yang telah ditentukan sebelumnya (misalnya, mengubah "Kota" atau "Waktu" menggunakan dropdown). Mereka dapat menjelajahi data tanpa perlu menulis satu baris SQL pun.
- Kolaborasi yang Lancar: Fitur berbagi Looker Studio standar memungkinkan Anda mendistribusikan insight interaktif ini secara aman.
Alur Kerja Solusi
Alur kerja berikut akan membuat arsitektur pelaporan yang berperforma tinggi. Aplikasi ini beralih dari dasar pengukuran statis ke aplikasi yang sepenuhnya dinamis, sehingga memastikan kebenaran data sebelum memperkenalkan kompleksitas.
Prasyarat
Sebelum memulai, ikuti petunjuk berikut untuk menyiapkan Insight Tempat. Anda memerlukan akses ke Looker Studio, yang merupakan alat tanpa biaya.
Langkah 1: Tetapkan Dasar Geospasial Statis
Sebelum memperkenalkan interaktivitas, buat kueri dasar dan pastikan kueri tersebut dirender dengan benar di Looker 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 wilayah Looker Studio untuk visualisasi.
1.1 Menghubungkan Data
Gunakan kueri statis berikut untuk membuat koneksi awal. Menargetkan lokasi tetap (London) dan kategori (Restoran) 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,
sistem yang membagi dunia menjadi sel petak heksagonal.
Kita menggunakan transformasi ini karena Peta yang Diisi Looker Studio memerlukan poligon (bentuk) untuk merender warna. Dengan mengonversi titik menjadi bentuk heksagonal, kita dapat memvisualisasikan kepadatan bisnis di area tertentu, daripada memetakan ribuan titik yang tumpang-tindih.
Catatan tentang Nilai Minimum Agregasi
Semua kueri Insight Tempat memerlukan klausa WITH AGGREGATION_THRESHOLD.
Perlindungan privasi ini memastikan bahwa data hanya ditampilkan jika jumlah gabungannya adalah 5 atau lebih.
Dalam konteks visualisasi ini, jika sel petak H3 berisi kurang dari 5 restoran, sel tersebut akan dihilangkan sepenuhnya dari set hasil dan akan muncul kosong di peta Anda.
Untuk menerapkannya di Looker Studio:
- Buat Laporan Kosong baru.
- Pilih BigQuery sebagai konektor data.
- Pilih KUERI KUSTOM dari menu sebelah kiri, lalu pilih Project ID penagihan Anda.
- Tempel Static Base Query di atas ke editor.
- Hapus centang pada parameter Gunakan SQL Lama, Aktifkan rentang tanggal, dan Aktifkan alamat email pelihat.
- Klik Tambahkan.
1.2 Mengonfigurasi Visualisasi Geospasial
Setelah data terhubung, konfigurasi Looker Studio agar mengenali data batas H3 dengan benar:
- Tambahkan visualisasi Peta yang Diisi ke kanvas laporan, dari menu Tambahkan diagram.
- Pastikan kolom
h3_geo, yang berisi geometri poligon, ditetapkan ke jenis data Geospasial.- Klik ikon Edit sumber data (pensil) di samping nama koneksi Anda.
- Jika
h3_geodisetel ke Teks (ABC), gunakan menu drop-down untuk memilih Geo > Geospatial, - Klik Selesai.
- Petakan kolom
h3_indexke Lokasi (berfungsi sebagai ID unik). - Petakan kolom
h3_geoke Kolom Geospasial (berfungsi sebagai geometri poligon). - Petakan kolom
restaurant_countke Metrik warna.
Tindakan ini akan merender peta kepadatan restoran menurut sel H3. Biru yang lebih gelap (opsi warna default) menunjukkan sel dengan jumlah restoran yang lebih tinggi.

Langkah 2: Terapkan Parameter Dinamis
Untuk membuat laporan menjadi 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
rekaman
regular_opening_hoursdalam skema. - Jam dalam sehari: Memfilter tempat berdasarkan jam operasionalnya dengan membandingkan kolom
start_timedanend_time.
Untuk melakukannya, Anda akan meneruskan parameter yang dipilih pengguna langsung ke kueri Insight Tempat yang diubah saat runtime. Di editor sumber data Looker Studio, Anda harus menentukan parameter ini secara eksplisit sebagai variabel yang diketik.
Di Looker Studio, pilih menu Aset, lalu klik Kelola sumber data yang ditambahkan. Dalam panel yang muncul, pilih EDIT terhadap sumber data SQL Kustom BigQuery yang kita tambahkan sebelumnya.
Di jendela Edit Koneksi, pilih TAMBAHKAN 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 |
|
||||||||||||||||
p_day_of_week |
Teks | Daftar nilai |
|
||||||||||||||||
p_hour_of_day |
Teks | Daftar nilai |
|
Contoh konfigurasi untuk parameter p_hour_of_day.

Untuk parameter p_hour_of_day, perhatikan baik-baik kolom Value.
Karena kueri SQL menggunakan CAST(@p_hour_of_day AS TIME), nilai yang diteruskan
dari Looker Studio harus dalam format HH:MM:SS yang ketat (jam 24 jam).
Setelah Anda menyiapkan dan menyimpan ketiga parameter, ubah koneksi SQL Kustom BigQuery untuk mereferensikan variabel ini menggunakan sintaksis @.
Hal ini dilakukan dengan mengklik Edit Koneksi, 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:
- Tambahkan tiga kontrol Daftar drop-down ke laporan Anda.
- Untuk setiap kontrol, tetapkan Kolom kontrol agar sesuai dengan parameter yang baru
dibuat:
- Kontrol 1:
p_locality - Kontrol 2:
p_day_of_week - Kontrol 3:
p_hour_of_day
- Kontrol 1:
Laporan akhir Anda akan terlihat seperti berikut. Mengubah nilai di salah satu kontrol drop-down akan memicu Looker Studio untuk mengambil data yang diminta dari Places Insights sebelum memvisualisasikannya di peta.

Langkah 3: Bagikan hasilnya
Gunakan alat berbagi yang ada di Looker Studio untuk membagikan laporan. Dengan begitu, penonton dapat memperbarui visualisasi secara dinamis berdasarkan parameter yang mereka pilih dari daftar drop-down Anda.
Kesimpulan
Pola ini membuat alat pelaporan interaktif yang skalabel yang memanfaatkan kemampuan komputasi BigQuery untuk menyajikan data Places Insights yang diagregasi ke Looker Studio. Arsitektur ini menghindari potensi masalah saat mencoba memvisualisasikan set data mentah yang sangat besar dan memberikan fleksibilitas kepada pengguna akhir untuk menjelajahi data di berbagai dimensi, seperti waktu, lokasi, dan jenis bisnis, hampir secara real-time. Ini adalah alat canggih untuk memberikan fleksibilitas kepada pemangku kepentingan non-teknis Anda dalam menjelajahi data.
Langkah Berikutnya
Jelajahi variasi lain dari laporan dinamis dengan memparameterisasi berbagai bagian skema Insight Tempat:
- Analisis Kompetitor Dinamis: Buat parameter untuk nama
brandagar pengguna dapat langsung mengganti peta panas di antara berbagai kompetitor untuk melihat saturasi relatif mereka di pasar. Lihat Tentang data Places Insights untuk mengetahui ketersediaan data merek. - Pemilihan Situs Interaktif: Tambahkan parameter untuk
price_level(misalnya, 'Sedang' versus 'Mahal') danratingminimum untuk memungkinkan tim properti memfilter area secara dinamis yang cocok dengan profil demografi tertentu. - Area Cakupan Kustom: Daripada memfilter menurut 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,
suntikkan 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 penelusuran di BigQuery yang berisi geometri bentuk dan nama yang mudah dipahami (misalnya,
"Zone A"). Buat parameter teks
p_zone_namedi Looker Studio agar pengguna dapat memilih zona, dan gunakan subkueri untuk mengambil geometri untuk fungsiST_CONTAINS.
- 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,
suntikkan ini ke dalam fungsi ST_DWITHIN:
Kontributor
- David Szajngarten | Developer Relations Engineer
- Henrik Valve | DevX Engineer