Распределенный кеш для пар ключ-значение

Я ищу распределенный кеш для пар ключ-значение с этими функциями -

  1. Сохранение на диск
  2. Открытый исходный код
  3. Java-интерфейс
  4. Быстрое чтение/запись с минимальным использованием памяти
  5. Легко добавить больше машин в базу данных (Горизонтально масштабируемая)

Какие базы данных отвечают всем требованиям?


person Abhishek Modi    schedule 25.02.2014    source источник
comment
Что-нибудь, что вы искали? Внесите свой вклад.   -  person sakura    schedule 25.02.2014
comment
Я смотрел redis и memcached. Но у меня нет большого представления об этом. я запутался   -  person Abhishek Modi    schedule 25.02.2014


Ответы (2)


Есть много вариантов, которые вы можете использовать.

Redis - тот, который вы указали сами. Это отдельный процесс, очень быстрый, ключ-значение, конечно, но это не «в памяти с вашим приложением», я имею в виду, что вы всегда будете выполнять ввод-вывод через сокет, чтобы перейти к процессу redis. Он не написан на Java, но он предоставляет драйвер Java для работы, более того, есть интеграция spring.

Если вам нужно решение на основе Java, рассмотрите следующее:

memcached — распределенный кеш

Hazelcast — это сетка данных, гораздо больше, чем просто хранилище ключей и значений, но вам это может быть интересно, поскольку хорошо.

Infinispan – это создали сотрудники JBoss.

EHCache — популярный распределенный кеш

Надеюсь это поможет

person Mark Bramnik    schedule 25.02.2014
comment
Спасибо. Я понятия не имею о распределенных кешах. Итак, если у меня есть около 100 миллионов записей, что будет лучшим вариантом с большинством функций? - person Abhishek Modi; 25.02.2014
comment
простой get, вероятно, будет работать со всеми из них. Я думаю, вас должны волновать и другие аспекты, такие как скорость, развертывание, лицензирование и так далее. Вы можете выполнять тесты в своей среде. В общем, в инете полно очных сравнений. Пример: vschart.com/compare/hazelcast/vs/redis-database - person Mark Bramnik; 25.02.2014

Платформа Redisson также предоставляет возможности распределенного кэширования на основе Redis.

person Nikita Koksharov    schedule 21.09.2016