خانه / GIS و نقشه‌برداری / کوئری مکانی سریع توی PostGIS — index چطور بزنم؟
M

کوئری مکانی سریع توی PostGIS — index چطور بزنم؟

mehdi_postgis · 3 ماه،1 هفته پیش · GIS و نقشه‌برداری PostGIS spatial-index performance

یه جدول با ۲ میلیون رکورد مکانی دارم. کوئری ST_Within و ST_Intersects خیلی کنده. index مکانی چطور بزنم؟

230 بازدید
2 پاسخ
پاسخ راه‌حل
R
reza_dev 3 ماه،1 هفته پیش
#1

GiST index بزن:

```sql
CREATE INDEX idx_geom ON my_table USING GIST (geom);
VACUUM ANALYZE my_table;
```

بعد از index، کوئری‌هات باید خیلی سریع‌تر بشن. با EXPLAIN ANALYZE چک کن که از index استفاده می‌کنه.

یه نکته: اگه هنوز کنده، شاید geometry خیلی پیچیده‌ست. ST_Simplify رو امتحان کن.

M
mehdi_postgis 3 ماه،1 هفته پیش
#2

ممنون! index زدم، از ۴۵ ثانیه رفت به ۰.۳ ثانیه. باورم نمیشه چقدر فرق داشت!

برای پاسخ دادن وارد شوید

ورود / ثبت‌نام