Konsep inti SIG adalah menjawab pertanyaan tentang dataset. Dari sudut pandang basis data; SQL dengan ekstensi spasial adalah cara mengajukan pertanyaan seperti itu. Apa cara lain yang bisa diajukan pertanyaan dalam bentuk berbasis teks yang dapat dibaca mesin? Apa manfaat dari pendekatan yang berbeda?
geoprocessing
analysis
Matthew Snape
sumber
sumber
Jawaban:
Saya hanya bisa memikirkan 3 jenis kueri spasial, mengabaikan atribut atau hash based queries.
Kueri spasial berdasarkan geometri, dan digunakan untuk menemukan hubungan antara fitur vektor. Query spasial SQL sebenarnya hanyalah alogoritma level rendah API seperti Bentley-Ottmann - digunakan di OpenLayers untuk memeriksa apakah dua garis berpotongan.
Sebagaimana Kirk menyebutkan jenis-jenis hubungan antara fitur-fitur telah distandarisasi pada model sembilan-persimpangan yang diperluas secara dimensi :
Dapat diperdebatkan bahwa kueri spasial berdasarkan indeks adalah bentuk kueri geometri yang disederhanakan. Sebagian besar kueri geometri menggunakan indeks spasial sebagai kueri lulus pertama untuk menyaring fitur yang tidak relevan sebelum membandingkan masing-masing geometri yang lebih memakan waktu. Ini juga diimplementasikan dalam database NoSQL seperti MongoDB .
Ada beberapa implementasi yang menggabungkan hal di atas, seperti StarSpan yang menggabungkan permintaan raster dan vektor - meskipun itu benar-benar menyembunyikan langkah preprocessing.
Ada banyak API yang mengimplementasikan jenis kueri ini yang dapat dibaca oleh mesin dan teks. Ada diskusi yang bagus tentang berbagai implementasi dan masalah mereka di sini .
Makalah Menuju Spatial Query Language 3d memecah operator spasial menjadi 4 jenis, berdasarkan kueri dan bukan tipe data (yang mungkin lebih masuk akal):
Itu juga membawa terminologi untuk berurusan dengan fitur 3d (tubuh dan permukaan), yang tidak termasuk dalam DE-I9M.
sumber
1 - Ada beberapa studi dengan perangkat lunak ini: http://nlp.uned.es/MLQA06/papers/ferres.pdf
Meskipun lebih terkait dengan pencarian internet, ini dapat memberikan beberapa panduan tentang bagaimana menerjemahkan bahasa manusia ke bahasa komputer.
Googling 'GeoTALP-Q' juga menyediakan lebih banyak artikel tentang masalah ini.
2- GeoDjango menyediakan API untuk kueri spasial, ini merupakan terjemahan dari SQL ke bahasa Berorientasi Objek yang dapat mempercepat banyak pekerjaan yang membosankan seperti menulis fungsi PL / python untuk kueri spasial yang kompleks. Ini dibatasi oleh database yang Anda gunakan.
sumber