web-dev-qa-db-ja.com

redis vs hazelcast

Redis Vs Hazelcast私のアプリの場合:

  • 保存する必要がある多くのhttpリクエスト(毎分6,000、クリック情報を収集)がある
  • 以前に保存したデータを照会する多くのhttp要求があります。

私の質問は-RedisとHazelcastのどちらを選択してデータの保存とクエリを行うべきですか? -どちらが信頼性が高いですか? -おそらくCassandraがより良いオプションですか?

質問のいずれかに答えることは役立ちます

31
Federico

キャッシングのニーズに応じて、redisからhazelcastに切り替えました。

  • Protostuff + Hazelcastは私たちにとってはるかに高速です
  • プロトタイプ+ジェディス(プール)+ Redis

プロトタイプを使用して、作成に費用がかかるBeanをシリアル化します。 Hazelcastsの標準シリアル化メカニズムは非常に低速です。私たちの環境はGlassfish 3.1です。

Hazelcastは、Java libsのみ、Redisにはすべての言語に1つあります。

本当です。 HazelcastはREST APIとmemcachedプロトコルの実装のみを提供します。

22
psartini

非常に便利なライブラリがあります- Redisson 。それは、分散提供Javaオブジェクトおよびサービス(BitSetBloomFilterSetSortedSetMapConcurrentMapListQueueDequeBlockingQueueBlockingDequeReadWriteLockSemaphoreLockAtomicLongCountDownLatchPublish / SubscribeRemoteServiceExecutorServiceLiveObjectServiceScheduledExecutorService)Redisサーバー上!

クラスタ、センチネル、マスター/スレーブ、およびシングル接続モードをサポートしています。

クラウドで完全に動作し、AWS ElasticacheとAzure Redis Cloudをサポートします

以下は、Redissonのお客様の成功事例です。

HazelcastからRedisへの移動
Redisによる分散ロック(Hazelcastからの移行)

13

2017年の時点で、RedisとHazelcastはどちらも、可用性の高いスケーラブルなキーと値のストレージを提供します。非常に速い応答時間<10ms。

Redisは、soredセット、ハッシュセット、pub\subメカニズムなどの他のデータ構造をサポートするという点でユニークです。また、luaスクリプトを使用して拡張可能です。おそらく、2つの製品の中で最も人気があり、広く使用されています。特にJavaエコシステムの外側。

Hazelcastは、Javaホストプロセスに埋め込むことができるという点でユニークであり、外部データベースに依存せずにステートフルマイクロサービスを構築するのに最適です。キーの有効期限からのコールバックある意味では、全体的なパフォーマンスは低下しますが、いくつかのことは行いますが、Javaを使用している場合は特にそうです。

全体として、これらは外部データのキャッシュ、ステートフルマイクロサービスの通信バックプレーンまたは共有メモリ状態の作成、または場合によってはある程度の耐久性を備えた(少量の非リレーショナル)ビジネスデータの格納など、同様のユースケース向けに設計された同様のソリューションです。

12
Eric

どれが良いかを判断するには、クライアントスレッドの使用に関する問題があります。

これによると ベンチマーク Hazelcastは、より多くのスレッドを使用する場合、Redisよりも優れています。これは不公平な会社のベンチマークかもしれませんが、スレッド化について何かを示しています。

1
Ferhat

RedisとHazelcastはどちらもメモリベースのデータベースであるため、理論上は同じ速度とパフォーマンスを提供する必要があります。 Hazelcastのドキュメントを見ると、データベースとインターフェイスするためのライブラリが豊富であるため、Redisのサポートが向上します。 Hazelcastは、Java libsのみ、Redisにはすべての言語に1つあります。

回答:

  1. さまざまな比較でRedisの方が高速であることがわかる限り、これを自分でテストする必要があります そのうちの1つはここにあります 、しかし、これらのベンチマークは100%とは言いません

  2. 両方とも信頼できるはずですが、Hazelcastを保証することはできません。

  3. 多分...

Redisを使用するのは、最も使いやすく、優れたドキュメントがあるためです。

0
Colum