собственно сабж про постгрис.
ну и вопросики:
1. имеем табличку
| id | col1 | col2 | col3 | ...
далее имеем раздельне индексы по col1, col2, col7
делаем выборку
SELECT
*
FROM
table
WHERE
col1 = 'abc'
AND col7 = 'cde'
AND col2 = 'fgh'
Вопрос будут ли использоваться в такой выборке все три индекса или
(как в MySQL) обязательно делать составной?
2. Имеется таблица с текстовым полем
| id | keyword | col1 | col2 | ...
keyword вообще говоря уникален, но не суть.
нужен поиск вида
WHERE
keyword like 'что-то%';
Но таблица несколько сот миллионов строк.
какой индекс лучше построить в данном случае?
можно ли построить несколько частичных индексов чтобы Pg автоматом
использовал тот который больше подходит? будет ли иметь это смысл?
то есть если я построю 26 индексов вида
CREATE UNIQUE INDEX "name_a" ON "table" ("keyword")
WHERE "keyword" like 'a%';
CREATE UNIQUE INDEX "name_b" ON "table" ("keyword")
WHERE "keyword" like 'b%';
...
будет ли профит по использованию памяти/итп в таком случае или
наоборот будет больше оверхеда?
--
. ''`. Dmitry E. Oboukhov
: :’ : email: unera@debian.org jabber://UNera@uvw.ru
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537