Postgresql - один ini4 против двух int2 для индексации - PullRequest
1 голос
/ 15 декабря 2011

У меня есть таблица с миллионами строк в postgresql. Одна строка может быть представлена ​​восемью столбцами int4 или шестнадцатью int2.
Я хочу иметь один многоколонный (btree) индекс для этой таблицы: создать индекс для mytable (c1, c2, c3, c4, .... c8); Интересно, что является лучшим решением (для повышения производительности): один многоколоночный индекс с восемью (тип int4) столбцами или один многоколоночный индекс с шестнадцатью (тип int2) столбцами.

Другими словами:

создать индекс на mytable (c_int4_1, c_int4_2, ... c_int4_8);

против

создать индекс на mytable (c_int2_1, c_int2_2 ... c_int2_16);

1 Ответ

1 голос
/ 15 декабря 2011

В зависимости от того, что наиболее естественно соответствует использованию данных.Любой выигрыш от более эффективного на btree будет снова потерян при принудительном переводе в другой формат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...