Системы кеширования - Redis vs Geode/GemFire

Мы рассматриваем возможность использования системы кэширования в нашем приложении для поиска данных. Эти данные будут меняться очень редко. Мои выводы вышли с Redis, GemFire/Geode, VoltDB, Aerospike, Hazlecast и несколько других. Я занес в шорт-лист Geode и Redis. Оба key-value магазины в памяти.

Redis (на основе C) кажется более простым в использовании и поддерживает такие типы данных, как списки, хэши, наборы, отсортированные наборы и т. Д. Он также имеет некоторый хороший клиент, доступный в Java, NodeJS, C# и т. Д. Он поддерживает несколько узлов (master-slave).

Похоже, чтоGeode (на основе Java) имеет больше возможностей, учитывая, что он существует очень давно. У него есть понятия регионов, в которых хранятся данные. У него есть клиенты, доступные на Java, C#, C++. Он имеет локатор (ы) и сервер (ы), которые составляют систему. Он поддерживает распределенные серверы / узлы (без общего доступа / без единой точки отказа).

Я искал в интернете, но не смог найти никакого сравнения между этими двумя показателями с точки зрения скорости чтения / записи, использования памяти, дампа дискового ввода-вывода, масштабирования, безопасности. Кто-нибудь сталкивался с такой ситуацией раньше?

1 ответ

Я работаю в основном с Redis, но познакомился с Geode (открытым вариантом Pivotal Gemfire) в течение прошлого года, когда я работаю в Pivotal. Впрочем, может быть предвзятым.

Redis - это, прежде всего, отдельное хранилище Key-Value, созданное Сальваторе Санфилиппо, HA и опции шардинга (Sentinel, Cluster) были созданы гораздо позже. Redis работает очень быстро, и если вы предпочитаете производительность, а не согласованность, Redis - хороший выбор. Единственная функция безопасности Redis - это аутентификация на основе пароля, но вы бы предпочли защитить ее на транспортном уровне, что требует дополнительных усилий. Там нет никакой поддержки, кроме сообщества или если вы выбираете коммерческий продукт Redis (например, RedisLabs).

Geode (Pivotal GemFire ​​с открытым исходным кодом около года назад, в настоящее время GemFire ​​основан на Geode) - это продукт, которым Pivotal руководит уже много лет. Он построен с учетом согласованности, высокой доступности и распределения данных - назовите его сеткой данных в памяти. Уровень безопасности Geode является расширяемым и подключаемым, поэтому вы можете адаптировать его под свои нужды. Если вы хотите получить коммерческую поддержку, то Pivotal может удовлетворить ваши потребности.

Geode оснащен адаптером протокола Redis, который позволяет подключаться к клиентам Redis к Geode и использовать подмножество структур данных и команд Redis. Он не является полным с точки зрения Redis 3.2, но все же является хорошим выбором, если вы хотите интегрироваться с одним продуктом хранилища ключей и не хотите использовать Redis и Geode.

Другие вопросы по тегам