Я задавал себе один и тот же вопрос некоторое время. Одним из недостатков PostgreSQL является то, что он, похоже, не поддерживает механизмы хранения IN MEMORY, как MySQL ...
В любом случае, я столкнулся с статьей пару недель назад, в которой описывалось, как это можно сделать; хотя, похоже, работает только на Linux. Я действительно не могу ручаться за это, потому что я сам не пробовал, но, похоже, это имеет смысл, поскольку табличному пространству PostgreSQL действительно назначено смонтированное хранилище.
Однако даже при таком подходе я не уверен, что вы могли бы также поместить свои индексы в ОЗУ; Я не думаю, что MySQL заставляет использовать индекс HASH с таблицей IN MEMORY даром ...
Я также хотел сделать то же самое, чтобы улучшить производительность, поскольку я также работаю с огромными наборами данных. Я использую питон; у них есть типы данных словаря, которые в основном являются хеш-таблицами в форме пар {ключ: значение}. Их использование очень эффективно и эффективно. По сути, чтобы получить мою таблицу PostgreSQL в ОЗУ, я загружаю ее в такой словарь Python, работаю с ней и время от времени сохраняю ее в db; оно того стоит, если его правильно использовать.
Если вы не используете python, я почти уверен, что в вашем языке это похожая структура отображения словаря.
Надеюсь, это поможет!