Контекст:
Я хочу сохранить некоторые временные результаты в некоторых временных таблицах. Эти таблицы могут повторно использоваться в нескольких запросах, которые могут возникать в ближайшее время, но в какой-то момент используемый мной эволюционный алгоритм может больше не нуждаться в некоторых старых таблицах и продолжать генерировать новые таблицы. Будет несколько запросов, возможно, одновременно, с использованием этих таблиц. Только один пользователь делает все эти запросы. Я не знаю, проясняет ли это все о сессиях и т. д., я все еще не уверен, как это работает.
Цель:
Что я хотел бы сделать, так это создать временные таблицы (если они еще не существуют), хранить их в памяти, насколько это возможно, и если в какой-то момент памяти не хватает, удалить те, которые будут зафиксированы в HDD (думаю, они будут использоваться реже всего).
Примеры:
Клиент будет выполнять запросы для EMA с разными параметры и их агрегирование с разными коэффициентами, каждый индивидуум может различаться с точки зрения используемых коэффициентов, и поэтому параметры для EMA могут повторяться, поскольку они все еще находятся в генофонде, и могут не понадобиться через некоторое время. Будут похожие запросы с большим количеством параметров, и генетический алгоритм найдет правильные значения параметров.
Вопросы:
- Это то, что означает «при падении фиксации»? Я видел описания сеансов и транзакций, но я не совсем понимаю эти концепции. Извините, если вопрос глупый.
- Если это не так, знаете ли вы какой-нибудь простой способ заставить Postgres сделать это?
Временное решение:
В худшем случае я должен быть в состоянии сделать предположение о том, сколько таблиц я могу хранить в памяти, и попытаться реализовать LRU самостоятельно, но это никогда не будет так хорошо, как то, что может сделать Postgres.
Большое Вам спасибо.