Назад | Перейти на главную страницу

PostgreSQL много таблиц

мы находимся в точке, где у меня есть более тысячи таблиц на нашем сервере базы данных PostgreSQL. Я помню, как читал, что есть способ ускорить базу данных, когда она достигнет более тысячи таблиц, но я не могу найти упоминания об этом в Интернете с помощью Google. Любая помощь была бы хороша.

Спасибо

PostgreSQL создает файл в файловой системе для каждой таблицы; в зависимости от вашей базовой файловой системы вы в конечном итоге столкнетесь с проблемами производительности, когда какой-либо процесс (включая PostgreSQL) считывает метаданные каталога. Чтобы облегчить это, вы захотите создать несколько разных табличных пространств и разместить разные таблицы в разных табличных пространствах, чтобы предотвратить размещение тысяч файлов в одном каталоге.

Возможно, стоит немного почитать о СОЗДАТЬ ТАБЛИЧНОЕ ПРОСТРАНСТВО и ИЗМЕНИТЬ ТАБЛИЦУ команды для перемещения таблиц в заданное табличное пространство.

Я не припомню ничего особенного для количества таблиц, превышающих 1000, но вы, возможно, думали об использовании табличных пространств для распределения объектов / таблиц db по разным томам для повышения производительности? (т.е. таблицы, которые больше пишут на другом томе, чем таблицы, которые интенсивно читаются, или разделение разных наборов интенсивно используемых таблиц на тома на разных каналах)

здесь описаны табличные пространства в документации postgres.

Сказав это, если нет конкретных проблем с производительностью, которые вам нужно решить, я бы не стал вносить изменения произвольно ...

Возможно, вы имеете в виду совет по настройке max_fsm_relations, когда у вас много таблиц. Но это требование было удалено в версии 8.4, и теперь оно автоматически настраивается для вас.