Saya memiliki tabel spasial dalam database PostgreSQL / PostGIS. Setiap baris di dalamnya mewakili suatu Poligon. Bentuknya sebagai berikut:
+----+--------+
|gid | way |
+----+--------+
|241 | 01030..|
Kolom geometris adalah "cara" yang berisi geometri untuk poligon. Di WKT itu adalah: POLYGON (('....')). Saya melakukan banyak pertanyaan ST_Contains pada tabel ini, untuk menguji apakah dua poligon terkandung satu sama lain misalnya:
Select ST_Contains(a.way, b.way) From table AS a, table AS b Where a.gid = 15 And b.gid = 16
Saya bertanya-tanya bagaimana cara mempercepat permintaan ini dan menambahkan indeks spasial di atas meja:
CREATE INDEX table_way_gist ON table USING gist(way);
Tapi sebenarnya saya tidak melihat kecepatan. Saya membuat indeks SETELAH saya mengisi tabel dengan semua poligon SEBELUM saya melakukan query ST_Contains. Haruskah indeks ditambahkan sebelum mengisi tabel? Apakah ada persyaratan khusus di atas meja untuk bekerja dengan indeks? Proyeksi (srid) dari cara kolom geometrik diatur ke 900913.
Saya menggunakan: psql (PostgreSQL) 9.1.4 / POSTGIS = "1.5.3"