Как запросить несколько ключей в кэш-памяти в Java? - PullRequest
0 голосов
/ 25 февраля 2019

У меня есть некоторые постоянные данные в файлах rdms и csv (они являются независимыми объектами, но я хотел упомянуть об этом, потому что они находятся в разных средах, я не могу использовать то, что предоставляет rdbms, на самом деле я не хочу делатьПоездка в базу данных на следующий час, даже если данные стареют).Мне нужно хранить данные в памяти для повышения производительности и запрашивать (только чтение, никакие другие операции) объекты, основанные на нескольких его столбцах, и обновлять данные каждый час.

В моем случае, что является хорошим способом для хранения и запроса объектов в памяти, кроме реализации собственного хранилища объектов и методов запросов?Например, можете ли вы предоставить пример / ссылку для замены запроса sql на

select * from employees where emplid like '%input%' or surname like  '%input%' or email like  '%input%';

Извините за фиктивный запрос, но он объясняет, какие типы запросов возможны.

1 Ответ

0 голосов
/ 25 февраля 2019

Идите, найдите себе ключевую реализацию магазина с нужными вам функциями.Используйте вашу строку запроса в качестве ключа и результат в качестве значения.https://github.com/ben-manes/caffeine Имеет довольно много функций, включая время ожидания записи (например, час).

Для своей собственной работы я использую хранилище ключей LRU (ограничено X записями), содержащее объекты с информацией о тайм-ауте, и я вручную решаю, является ли запись устаревшей или нет, прежде чем использовать ее.LRU - это в основном связанный список, который перемещает «прочитанные» записи в начало списка и отбрасывает хвост, когда записи добавляются сверх максимального желаемого размера.Это позволяет хранить популярные записи в магазине дольше.

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