Page 82 - 6430
P. 82
обчислень: для таблиці розміром 1 мільйон рядків на машині
Solaris 300MHz створення індексу зайняло близько 1 години.
Після створення індексу важливо змусити PostgreSQL зібрати
табличну статистику, яка використовується для оптимізації
запитів:
VACUUM ANALYZE [table_name] [column_name];
- Це необхідно лише для PostgreSQL 7.4 та старіших
SELECT UPDATE_GEOMETRY_STATS ([table_name],
[column_name]);
В PostgreSQL індекси GiST мають дві переваги перед R-
Tree. По-перше, індекси GiST є "null-безпечними" ("null safe"). Це
означає, що вони можуть індексувати стовпці, які містять
значення null. По-друге, індекси GiST підтримують концепцію
"втрат" ("lossiness"), яка має значення, коли об'єкти ГІС займають
більше 8К (розмір сторінки PostgreSQL). Втрати дозволяють
PostgreSQL зберігати в індексі тільки "значиму" частина об'єкту.
У випадку об'єктів ГІС, ними є обхвати. R-Tree не може бути
створений для об'єктів ГІС, що займають більше 8K.
82