Sistem petak untuk analisis spasial
Dokumen ini menjelaskan tujuan dan metode penggunaan sistem petak geospasial (seperti S2 dan H3) di BigQuery untuk mengatur data spasial di area geografis yang terstandardisasi. Bagian ini juga menjelaskan cara memilih sistem {i>grid<i} yang tepat untuk aplikasi Anda. Ini dokumen berguna bagi siapa saja yang bekerja dengan data spasial dan melakukan analisis data di BigQuery.
Ringkasan dan tantangan penggunaan analisis spasial
Analisis spasial membantu menunjukkan hubungan antara entitas (toko atau rumah) dan acara di ruang fisik. Analisis spasial yang menggunakan permukaan bumi sebagai ruang fisik disebut analisis geospasial. BigQuery menyertakan fitur dan fungsi geospasial yang memungkinkan melakukan analisis geospasial dalam skala besar.
Banyak kasus penggunaan geospasial melibatkan penggabungan data dalam area lokal, dan membandingkan agregasi statistik area tersebut satu sama lain. Ini area lokal direpresentasikan sebagai poligon dalam tabel database spasial. Dalam beberapa konteks, metode ini disebut geografis statistik. Metode untuk menentukan luas wilayah geografis terstandardisasi untuk pelaporan, analisis, dan pengindeksan spasial. Misalnya, retailer mungkin ingin menganalisis perubahan demografi dari waktu ke waktu di area tempat toko mereka berada, atau di area tempat mereka berada berpikir untuk membangun toko baru. Atau, perusahaan asuransi mungkin ingin meningkatkan pemahaman mereka tentang risiko properti dengan menganalisis risiko bahaya alam yang ada di area tertentu.
Karena peraturan privasi data yang ketat di banyak area, {i>dataset<i} yang berisi informasi lokasi perlu dide-identifikasi atau dianonimkan sebagian untuk membantu melindungi privasi individu yang diwakili dalam data. Misalnya, Anda mungkin perlu melakukan analisis risiko konsentrasi kredit geografis pada yang berisi data tentang pinjaman hipotek yang terutang. Untuk melakukan de-identifikasi agar cocok untuk analisis yang sesuai, Anda perlu mempertahankan informasi tentang lokasi properti, tetapi hindari penggunaan alamat atau koordinat bujur dan lintang.
Dalam contoh sebelumnya, para perancang analisis ini disajikan dengan tantangan berikut:
- Bagaimana cara menggambar batas area yang Anda analisis perubahannya dari waktu ke waktu?
- Cara menggunakan batas administratif yang ada seperti jalur sensus atau sistem grid multi-resolusi?
Dokumen ini bertujuan menjawab pertanyaan-pertanyaan tersebut dengan menjelaskan setiap opsi, menjelaskan praktik terbaik, dan membantu Anda menghindari kesalahan umum.
Kesalahan umum saat memilih area statistik
Set data bisnis seperti penjualan properti, kampanye pemasaran, e-commerce pengiriman, dan polis asuransi cocok untuk analisis spasial. Seringkali terjadi berisi kunci yang dianggap sebagai kunci gabungan spasial, seperti jalur sensus, kode pos, atau nama kota. {i>Dataset<i} publik yang berisi representasi jalur sensus, kode pos, dan kota sudah tersedia, membuat mereka tergoda untuk menggunakannya sebagai batasan administratif untuk agregasi.
Meskipun praktis, batas-batas ini dan batas-batas administratif lainnya memiliki kekurangannya. Selain itu, batasan-batasan ini mungkin berfungsi dengan baik pada tahap awal proses analitik data, tetapi kekurangannya dapat diketahui di tahap selanjutnya.
Kode pos
Kode pos digunakan untuk merutekan surat ke berbagai negara di seluruh dunia, dan karena ada di mana-mana, sering digunakan untuk mereferensikan lokasi dan area di spasial dan non-spasial. Mengacu pada contoh sebelumnya tentang pinjaman hipotek, {i>dataset<i} sering kali perlu dide-identifikasi sebelum tujuan downstream analisis data dapat dilakukan. Karena setiap alamat properti mengandung kode pos, tabel referensi kode pos dapat diakses, menjadikannya pilihan yang mudah bagi {i>join key<i} untuk analisis spasial.
Kesalahan dalam menggunakan kode pos adalah bahwa mereka tidak direpresentasikan sebagai poligon, dan tidak ada satu pun sumber kebenaran yang benar untuk kode pos area tersebut. Selain itu, kode pos bukan representasi yang baik dari perilaku manusia yang sebenarnya. Data kode pos yang paling umum digunakan di AS adalah dari US Census Bureau TIGER/Line Shapefiles, yang berisi {i>dataset <i}yang disebut ZCTA5 (Area Tabulasi Kode Pos). {i>Dataset<i} ini mewakili perkiraan batas kode pos yang diturunkan dari rute pengiriman email. Namun, beberapa kode pos yang mewakili bangunan tidak memiliki batasan sama sekali. Masalah ini ditemukan di negara lain karena sehingga sulit untuk membuat satu tabel fakta global yang berisi serangkaian batas otoritatif kode pos yang dapat digunakan di seluruh sistem dan di seluruh set data.
Selain itu, tidak ada format kode pos standar yang digunakan di seluruh dunia. Beberapa bersifat numerik, mulai dari tiga hingga sepuluh digit, sementara beberapa lainnya alfanumerik. Terdapat juga tumpang tindih antar-negara, sehingga perlu untuk menyimpan negara asal di kolom terpisah bersama dengan kode pos. Agak besar negara-negara tidak menggunakan kode pos, hal ini semakin menyulitkan analisis.
Jalur sensus, kota, dan county
Ada beberapa unit administratif, seperti jalur sensus, kota, dan county yang tidak mengalami kurangnya batas otoritatif. Batasan kota-kota, misalnya, pada umumnya telah ditetapkan oleh pemerintah pihak berwenang. Alur sensus didefinisikan dengan baik oleh Biro Sensus AS, dan dengan institusi serupa di sebagian besar negara lainnya.
Kelemahan menggunakan batas-batas administratif ini dan yang lainnya adalah bahwa batas berubah dari waktu ke waktu, dan tidak konsisten secara geografis satu sama lain. Kabupaten dan kota bergabung atau terpisah satu sama lain dan kadang-kadang diganti namanya. Jalur sensus diperbarui sekali setiap dekade di Amerika Serikat, dan pada berbagai kali di negara lain. Membingungkan, dalam beberapa kasus, batas geografis dapat berubah, tetapi pengenal uniknya tetap sama, sehingga sulit untuk menganalisis dan memahami perubahan dari waktu ke waktu.
Kelemahan lain yang umum untuk beberapa batas administratif adalah mereka adalah area diskret tanpa hierarki geografis. Selain membandingkan area individu satu sama lain, persyaratan umumnya adalah membandingkan agregasi area itu sendiri terhadap agregasi lainnya. Sebagai contoh, yang menerapkan model Huff mungkin ingin menjalankan analisis ini menggunakan beberapa jarak, yang mungkin sesuai dengan wilayah administratif yang digunakan di tempat lain dalam bisnis.
Petak resolusi tunggal dan multi-resolusi
Petak resolusi tunggal terdiri dari unit diskret yang tidak memiliki hubungan geografis ke area yang lebih luas yang mengandung unit-unit tersebut. Misalnya, kode pos memiliki hubungan geografis yang tidak konsisten dengan batas-batas administratif yang lebih besar tertentu, seperti kota atau {i>county<i} yang mungkin berisi kode pos. Untuk spasial analisis data, penting untuk memahami bagaimana berbagai area terkait dengan satu sama lain tanpa pengetahuan mendalam tentang sejarah dan perundang-undangan yang mendefinisikan poligon bidang.
{i>Grid<i} multi-resolusi kadang-kadang disebut {i>grid<i} hierarkis karena sel pada setiap tingkat zoom dibagi menjadi sel yang lebih kecil pada tingkat zoom yang lebih tinggi. Kisi-kisi multi-resolusi terdiri dari hierarki unit yang terdefinisi dengan baik yang yang ada di dalam unit-unit yang lebih besar. Alur sensus, misalnya, berisi kelompok blok, yang kemudian berisi blok. Hubungan hierarkis yang konsisten ini dapat berguna untuk agregasi statistik. Misalnya, dengan mengambil rata-rata pendapatan dari semua grup blok yang ada dalam saluran, Anda dapat menampilkan pendapatan untuk jalur sensus yang berisi kelompok blok tersebut. Ini tidak akan menjadi mungkin dengan kode pos karena semua area pos berlokasi di satu resolusi. Akan sulit untuk membandingkan pendapatan jalur dengan jalur di sekitarnya karena tidak ada cara standar untuk menentukan kedekatan, atau membandingkan pendapatan di berbagai negara.
Sistem kisi S2 dan H3
Bagian ini memberikan gambaran umum tentang sistem kisi S2 dan H3.
S2
S2 geometry adalah sistem petak hierarkis open source yang dikembangkan oleh Google dan dirilis ke publik pada tahun 2011. Anda dapat menggunakan {i>grid<i} S2 sistem untuk mengatur dan mengindeks data spasial dengan menetapkan bilangan bulat 64-bit yang unik ke setiap sel. Ada 31 tingkat resolusi. Setiap sel direpresentasikan sebagai persegi dan dirancang untuk operasi geometri sferis (terkadang disebut geografis). Setiap persegi dibagi menjadi empat kotak yang lebih kecil. Tetangga traversal, yang adalah kemampuan untuk mengidentifikasi sel S2 yang berdekatan, kurang terdefinisi dengan baik karena kotak dapat memiliki empat atau delapan tetangga yang relevan tergantung pada jenisnya analisis data. Berikut adalah contoh sel petak S2 multi-resolusi:
BigQuery menggunakan sel S2 untuk mengindeks data spasial dan mengekspos
beberapa fungsi. Misalnya, S2_CELLIDFROMPOINT
mengembalikan ID sel S2 yang berisi sebuah titik di permukaan bumi pada tingkat tertentu.
H3
H3 adalah petak hierarki open source yang dikembangkan oleh Uber dan digunakan oleh Overture Maps. Ada 16 tingkat resolusi. Setiap sel direpresentasikan sebagai segi enam, dan seperti S2, setiap sel diberi bilangan bulat 64-bit yang unik. Pada contoh tentang visualisasi sel H3 yang menutupi Teluk Meksiko, sel H3 yang lebih kecil tidak sempurna dikandung oleh sel yang lebih besar.
Setiap sel dibagi menjadi tujuh segi enam yang lebih kecil. Subdivisinya tidak persis, tetapi cukup untuk banyak kasus penggunaan. Setiap sel berbagi tepi dengan enam sel tetangga, menyederhanakan traversal tetangga. Misalnya, di setiap tingkat, ada 12 segi lima, yang justru berbagi {i>edge<i} dengan lima tetangga sebagai dari enam model. Meskipun H3 tidak didukung di BigQuery, Anda menambahkan dukungan H3 ke BigQuery menggunakan Toolbox Analisis Carto untuk BigQuery.
Meskipun baik library S2 dan H3 adalah {i>open source<i} dan tersedia dalam Lisensi Apache 2, library H3 memiliki dokumentasi yang lebih rinci.
HEALPix
Skema tambahan untuk petak bola, yang biasa digunakan di bidang astronomi, dikenal sebagai Hierarchical Equal Area isolatitude Pixelation (HEALPix). HEALPix tidak bergantung pada kedalaman piksel hierarkis, tetapi waktu komputasinya tetap konstan.
HEALPix adalah skema pikselisasi area yang sama dengan hierarki untuk bola. Penting digunakan untuk mewakili dan menganalisis data di ruang angkasa (atau lainnya). Di beberapa selain waktu komputasi konstan, kisi HEALPix memiliki karakteristik berikut:
- Sel {i>grid<i} bersifat hierarkis, dengan hubungan induk-turunan dipertahankan.
- Pada hierarki tertentu, sel memiliki area yang sama.
- Sel mengikuti distribusi iso-latitude, memungkinkan performa yang lebih tinggi untuk metode spektral.
BigQuery tidak mendukung HEALPix, tetapi ada banyak implementasi di berbagai bahasa, termasuk JavaScript, sehingga membuatnya mudah digunakan dalam BigQuery yang ditentukan oleh pengguna fungsi-fungsi (UDF).
Contoh kasus penggunaan untuk setiap strategi pengindeksan
Bagian ini memberikan beberapa contoh yang membantu Anda mengevaluasi mana yang terbaik sistem grid yang sesuai untuk kasus penggunaan Anda.
Banyak kasus penggunaan analitik dan pelaporan melibatkan visualisasi, baik sebagai bagian dari analisis itu sendiri atau untuk melaporkan ke pemangku kepentingan bisnis. Ini visualisasi ini biasanya disajikan di Web Mercator, proyeksi planar yang digunakan Google Maps dan banyak situs web lainnya aplikasi pemetaan. Dalam kasus di mana visualisasi memainkan peran penting, sel H3 memberikan pengalaman visualisasi yang lebih baik secara subjektif. sel S2, terutama pada garis lintang yang lebih tinggi, cenderung terlihat lebih terdistorsi daripada H3, dan tidak konsisten dengan sel-sel garis lintang yang lebih rendah ketika disajikan dalam proyeksi planar.
Sel H3 menyederhanakan implementasi di mana perbandingan tetangga berperan penting dalam analisis. Misalnya, analisis komparatif antara bagian dari mungkin membantu memutuskan lokasi mana yang cocok untuk membuka toko ritel baru atau Google. Analisis ini membutuhkan kalkulasi statistik untuk atribut dari sel tertentu yang dibandingkan dengan sel-sel di dekatnya.
Sel S2 dapat bekerja lebih baik dalam analisis yang bersifat global, seperti analisis yang melibatkan pengukuran jarak dan sudut. Pokemon Go dari Niantic menggunakan sel S2 untuk menentukan di mana aset game ditempatkan dan bagaimana susunannya terdistribusi. Properti subdivisi yang tepat dari sel S2 memastikan bahwa game aset dapat didistribusikan secara merata di seluruh dunia.
Langkah selanjutnya
- Untuk praktik terbaik pengelompokan spasial, lihat Pengelompokan Spasial di BigQuery - Praktik Terbaik.
- Pelajari cara membuat hierarki spasial dari data yang tidak sempurna.
- Pelajari geometri S2 di GitHub.
- Pelajari geometri H3 di GitHub.
- Lihat contoh yang menggunakan H3, BigQuery, dan Earth Engine.