Dasar-dasar tentang Indeks Spasial

8

Saya bertanya di forum apakah itu bisa menjadi ide yang baik untuk membuat indeks spasial pada himpunan bagian dari tabel ketika aplikasi Anda ditampilkan pada peta hanya himpunan bagian dan tidak pernah seluruh tabel.

Saya mengajukan pertanyaan ini karena saya pikir karena subset tidak memiliki luasan yang sama dari seluruh tabel, mungkin akan lebih cepat untuk menampilkan subset dengan indeks spasial mereka sendiri.

Jawaban yang saya terima adalah bahwa indeks spasial tidak memengaruhi waktu tampilan tetapi hanya digunakan untuk kueri spasial seperti persatuan atau perpotongan. Benarkah ??? Pengalaman saya dengan GIS dan basis data adalah ketika sebuah tabel tidak memiliki indeks spasial, tampilan pada peta jauh lebih lambat. Saya selalu berpikir bahwa pada tampilan tabel ditanya untuk menunjukkan fitur yang memotong luas jendela peta saat ini, sehingga fitur di luar tidak dimuat secara gratis. Apakah ini benar-benar cara kerjanya? Ini adalah semacam permintaan spasial, bukan?

Apa kebenarannya? Apakah ide yang baik untuk membuat indeks spasial pada himpunan bagian?

Di bawah Radar
sumber

Jawaban:

13

Untuk menampilkan tujuan, selalu baik menggunakan indeks spasial. Ini akan meningkatkan kecepatan permintaan rendering dan spasial. Namun, jika Anda berencana untuk memperbarui objek dalam jumlah besar, mungkin bijaksana untuk menghapus indeks spasial selama pembaruan. Jika tidak, proses pembaruan akan menjadi lebih lambat secara signifikan, karena setiap pembaruan indeks spasial perlu diperbarui juga. Setelah memperbarui, Anda dapat menambahkan indeks spasial lagi.

Mark Verschuur
sumber
Untuk menambahkan komentar Marks, ESRI Shapefile sering dibuat tanpa indeks spasial dan menambahkan satu dapat secara signifikan meningkatkan tampilan di ArcMap. Jika data Anda berada dalam database pribadi atau file, ini secara otomatis memiliki indeks spasial. Bagaimana kamu bisa tahu? Nah di ArcMap bidang Bentuk akan memiliki bintang kecil di sebelahnya ketika Anda melihat data dalam mode tabel.
Hornbydd
5

Pada database besar atau database dengan perubahan mungkin sangat penting untuk memiliki indeks spasial di tempat dan diperbarui secara teratur.

(Menjaga agar tetap sederhana di sini)

Misalnya untuk kemampuan pengindeksan Spasial Oracle ke dalam mesin basis data Oracle adalah fitur kunci dari produk Spasial. Indeks spasial, seperti indeks lainnya, menyediakan mekanisme untuk membatasi pencarian , tetapi dalam hal ini berdasarkan kriteria spasial seperti persimpangan dan penahanan. Diperlukan indeks spasial untuk:

  • Temukan objek dalam ruang data yang diindeks yang tumpang tindih dengan titik tertentu atau bidang yang diminati (kueri jendela)
  • Temukan pasangan objek dari dalam dua ruang data yang diindeks yang berinteraksi secara spasial satu sama lain (spatial join)

Pengindeksan Spasial dengan Oracle 11.2g

http://docs.oracle.com/cd/E11882_01/appdev.112/e11830/sdo_index_query.htm

Mapperz
sumber
+1 Untuk diskusi SQL Server, lihat posting blog Isaac Kunen di Basic Multi-Level Grids .
Kirk Kuykendall
Tetapi, jika Anda melakukan banyak pengeditan, indeks spasial mungkin akan mengurangi kecepatan akses. Yaitu, dengan setiap pengeditan, jika dbase mengkompilasi ulang indeks Anda dapat menghasilkan hit kinerja besar. Waktu pembaruan dalam lingkungan penggunaan tinggi penting.
Jay Laura
1
Jay bergantung pada apakah basis data disetel
Mapperz