Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Bahasa kueri memiliki fungsionalitas geospasial bawaan untuk mewakili bentuk geometris atau lokasi/poligon aktual pada peta. Data geospasial sering melibatkan kueri kedekatan. Misalnya, pertanyaan "temukan semua lokasi ritel di dekat lokasi saya saat ini" dijawab menggunakan kueri kedekatan melalui beberapa objek data geospasial.
Kasus penggunaan
Kasus penggunaan geospasial umum termasuk, tetapi tidak terbatas pada:
Analitik geolokasi, mendorong inisiatif pemasaran berbasis lokasi tertentu.
Personalisasi berbasis lokasi, untuk industri seperti ritel dan layanan kesehatan untuk meningkatkan pengalaman pengguna.
Peningkatan logistik, untuk industri seperti transportasi di mana pengoptimalan sangat penting.
Analisis Risiko, untuk industri seperti asuransi dan keuangan untuk melengkapi metadata lainnya.
Kesadaran situasional*, untuk pemberitahuan dan pemberitahuan berbasis kedekatan.
Pengantar data spasial
Data spasial menjelaskan posisi dan bentuk objek dalam ruang. Di sebagian besar aplikasi, titik dan bentuk ini sesuai dengan objek di bumi dan data geospasial.
Data spasial dapat digunakan untuk mewakili:
Lokasi seseorang
Tempat menarik
Batas kota, atau danau
Bahasa kueri mendukung dua jenis data spasial: jenis data geometri dan jenis data geografi .
Jenis geometri mewakili data dalam sistem koordinat Euclidean (datar). Jenis ini berguna untuk tugas geometris umum, seperti mengukur garis, berpotangan poligon, dan mengukur jarak antar titik.
Jenis geografi mewakili data dalam sistem koordinat bulat-bumi. Jenis ini berguna untuk tugas geografis umum, seperti menentukan apakah lokasi berada dalam batas tertentu dan mengukur jarak antar lokasi.
Jenis data yang didukung
Bahasa kueri mendukung pengindeksan dan kueri data titik geospasial yang diwakili menggunakan spesifikasi GeoJSON. Struktur data GeoJSON adalah objek JSON yang valid, sehingga Anda dapat menyimpan dan mengkuerinya menggunakan bahasa kueri tanpa alat atau pustaka khusus.
Bahasa kueri mendukung jenis data spasial berikut:
Titik
LineString
Poligon
MultiPolygon
Poin
Titik menunjukkan satu posisi dalam spasi. Dalam data geospasial, Titik mewakili lokasi yang tepat, yang bisa menjadi alamat jalan toko kelontong, kios, mobil, atau kota. Titik diwakili dalam GeoJSON (dan Bahasa kueri) menggunakan pasangan koordinatnya (bujur dan lintang).
Pertimbangkan contoh titik GeoJSON ini. Garis bujur adalah -122.12826822304672 dan garis lintang adalah 47.63980239335718.
{
"type": "Point",
"coordinates": [
-122.12826822304672,
47.63980239335718
]
}
Petunjuk / Saran
Untuk jenis data geografi , spesifikasi GeoJSON menentukan garis bujur terlebih dahulu dan garis lintang kedua. Seperti dalam aplikasi pemetaan lainnya, garis bujur dan lintang adalah sudut dan diwakili dalam hal derajat. Nilai garis bujur diukur dari Prime Meridian dan berada di antara -180 derajat dan 180.0 derajat, dan nilai garis lintang diukur dari khatulistiwa dan berada di antara -90.0 derajat dan 90.0 derajat.
Untuk jenis data geometri , spesifikasi GeoJSON menentukan sumbu horizontal terlebih dahulu dan sumbu vertikal kedua.
Jenis data spasial dapat disematkan dalam item seperti yang ditunjukkan dalam contoh item fasilitas ini yang menyertakan data GeoJSON.
{
"name": "Headquarters",
"location": {
"type": "Point",
"coordinates": [
-122.12826822304672,
47.63980239335718
]
},
"category": "business-offices"
}
Bahasa kueri menginterpretasikan koordinat seperti yang diwakili sesuai sistem referensi WGS-84. Untuk informasi selengkapnya, lihat mengoordinasikan sistem referensi.
LineStrings
LineString mewakili serangkaian dua titik atau lebih dalam ruang dan segmen garis yang menghubungkannya. Dalam data geospasial, LineStrings umumnya digunakan untuk mewakili jalan raya atau sungai.
Dalam contoh ini, string garis digunakan untuk mewakili garis yang digambar di antara dua titik.
{
"type": "LineString",
"coordinates": [
[ 31.8, -5 ],
[ 31.8, -4.7 ]
]
}
Poligon
Poligon adalah batas titik terhubung yang membentuk LineString tertutup. Poligon umumnya digunakan untuk mewakili formasi alami seperti danau atau yurisdiksi politik seperti kota dan negara bagian.
Titik dalam Poligon harus ditentukan dalam urutan berlawanan arah jajaran jajaran. Poligon yang ditentukan dalam urutan searah jarang mewakili inversi wilayah di dalamnya.
Dalam contoh ini, poligon dibuat dengan menghubungkan beberapa titik.
{
"type":"Polygon",
"coordinates":[[
[ 31.8, -5 ],
[ 32, -5 ],
[ 32, -4.7 ],
[ 31.8, -4.7 ],
[ 31.8, -5 ]
]]
}
Petunjuk / Saran
Spesifikasi GeoJSON mengharuskan bahwa untuk Poligon yang valid, pasangan koordinat terakhir yang disediakan harus sama dengan yang pertama, untuk membuat bentuk tertutup.
MultiPolygon
MultiPolygon adalah array dari nol atau lebih Poligon. MultiPolygon tidak dapat tumpang tindih atau memiliki area umum. Mereka bisa menyentuh pada satu atau beberapa titik.
Berikut adalah contoh MultiPolygon.
{
"type":"MultiPolygon",
"coordinates":[
[[
[52.0, 12.0],
[53.0, 12.0],
[53.0, 13.0],
[52.0, 13.0],
[52.0, 12.0]
]],
[[
[50.0, 0.0],
[51.0, 0.0],
[51.0, 5.0],
[50.0, 5.0],
[50.0, 0.0]
]]
]
}
Sistem referensi koordinat
Karena bentuk bumi tidak teratur, koordinat data geospasial geografi diwakili dalam banyak sistem referensi koordinat (CRS). Setiap CRS memiliki bingkai referensi dan unit pengukuran mereka sendiri. Misalnya, "National Grid of Britain" adalah sistem referensi yang akurat untuk Inggris, tetapi tidak di luarnya.
CRS paling populer yang digunakan saat ini adalah World Geodetic System WGS-84. Perangkat GPS, dan banyak layanan pemetaan termasuk Google Maps dan API Bing Maps menggunakan WGS-84. Bahasa kueri mendukung pengindeksan dan kueri data geospasial geografi menggunakan WGS-84 CRS saja.