Redis 用 Amazon ElastiCache
Redis 用 ElastiCache ユーザーガイド (API バージョン 2015-02-02)

Memcached と Redis の比較

Amazon ElastiCache では、Memcached と Redis のキャッシュエンジンがサポートされます。各エンジンにはいくつかのメリットがあります。このトピックの情報を参考にして、要件を満たす最適なエンジンとバージョンを選択してください。

重要

キャッシュクラスターまたはレプリケーショングループの作成後、より新しいエンジンバージョンにアップグレードできますが、以前のエンジンバージョンにダウングレードすることはできません。以前のエンジンバージョンを使用する場合は、既存のキャッシュクラスターまたはレプリケーショングループを削除し、それを以前のエンジンバージョンでもう一度作成する必要があります。

見かけ上エンジンは似ています。それぞれのエンジンは、インメモリキー/値ストアです。ただし、実際には大きな違いがあります。

以下がお客様の状況に当てはまる場合は、Memcached を選択します。

  • できるだけシンプルなモデルが必要である。

  • 複数のコアまたはスレッドを持つ大きなノードを実行する必要がある。

  • システムでの需要の増減に応じてノードを追加または削除するスケールアウトおよびスケールイン機能が必要である。

  • データベースなどのオブジェクトをキャッシュする必要がある。

以下の状況が当てはまる場合は、Redis を Redis 用 ElastiCache のバージョンと共に選択します。

  • Redis 用 ElastiCache バージョン 4.0.10 (拡張)

    暗号化および Redis (クラスターモードが有効) クラスターからのシャードの動的な追加または削除をサポートします。

    詳細については、「Redis バージョン 4.0.10 (拡張)」を参照してください。

  • Redis 用 ElastiCache バージョン 3.2.10 (拡張)

    Redis (クラスターモードが有効) クラスターからシャードを動的に追加または削除する機能をサポートします。

    重要

    現在、Redis 用 ElastiCache 3.2.10 は暗号化をサポートしていません。

    詳細については、以下のトピックを参照してください。

  • Redis 用 ElastiCache バージョン 3.2.6 (拡張)

    以前のバージョンの Redis の機能に加え、以下の機能が必要な場合は、Redis 用 ElastiCache 3.2.6 を選択します。

  • Redis 用 ElastiCache (クラスターモードが有効) バージョン 3.2.4

    Redis 2.8.x の機能に加え、以下の機能が必要な場合は、Redis 3.2.4 (クラスターモード) を選択します。

    • 2 ~ 15 のノードグループ間でデータを分割する必要がある (クラスターモードのみ)。

    • 地理空間インデックス作成 (クラスターモードまたは非クラスターモード) が必要。

    • 複数のデータベースをサポートする必要がない。

    重要

    Redis (クラスターモードが有効) には次の制約事項があります。

    • 大きなノードタイプに拡張しない

    • ノードグループ (パーティション) のレプリカの数の変更なし

    Redis バージョン 3.2.4 (クラスターモードが有効) には以下の制限があります。

    • 大きなノードタイプに動的に拡張しない。

    • ノードグループ (パーティション) のレプリカの数の動的変更なし。

  • Redis 用 ElastiCache (非クラスターモード) 2.8x および 3.2.4 (拡張)

    以下がお客様の状況に当てはまる場合は、Redis 2.8.x または Redis 3.2.4 (非クラスターモード) を選択します。

    • 文字列、ハッシュ、リスト、セット、ストアドセット、ビットマップなど、複雑なデータ型が必要である。

    • インメモリデータセットをソートまたはランク付けする必要がある。

    • キーストアの永続性が必要である。

    • 読み取り量が多いアプリケーションのために、プライマリからのデータを 1 つ以上のリードレプリカにレプリケートする必要がある。

    • プライマリノードが失敗した場合に、自動的なフェイルオーバーが必要である。

    • 発行とサブスクライブ (pub/sub) 機能が必要 — クライアントにサーバー上のイベントを通知する必要がある。

    • バックアップと復元の機能が必要である。

    • 複数のデータベースをサポートする必要がある。

Memcached、Redis (クラスターモードが無効)、および Redis (クラスターモードが有効) の比較の概要

Memcached Redis (クラスターモードが無効) Redis (クラスターモードが有効)
エンジンバージョン 1.4.x 2.8.x 以降 3.2.x 以降
データ型 シンプル ‡ 2.8.x - 混在 * 3.2.x 以降 - 複雑
複雑
データのパーティション化 あり なし あり
クラスターが変更可能 あり あり 3.2.10 以降 - 限定
オンラインリシャーディング なし なし 3.2.10 以降
暗号化 なし 3.2.6、4.0.10 以降 3.2.6、4.0.10 以降
コンプライアンス認定
コンプライアンス認定

    FedRAMP

    HIPAA

    PCI DSS

 

なし

なし

[No (なし)]

 

3.2.6、4.0.10 以降

3.2.6、4.0.10 以降

3.2.6、4.0.10 以降

 

3.2.6、4.0.10 以降

3.2.6、4.0.10 以降

3.2.6、4.0.10 以降

マルチスレッド あり [No (なし)] なし
ノードタイプのアップグレード なし あり なし
エンジンのアップグレード はい [Yes (あり)] あり
高可用性 (レプリケーション) なし あり あり
自動フェイルオーバー なし オプション 必須
パブリック/サブ機能 なし あり あり
ソートされたセット なし あり あり
バックアップと復元 なし あり あり
地理空間インデックス作成 なし 2.8.x - いいえ あり
3.2.x 以降 - あり
注:
‡文字列、オブジェクト (データベースなど)
*文字列セット、並べ替えられたセット、リスト、ハッシュ、ビットマップ、Hyperloglog
‡文字列、セット、ソートされたセット、リスト、ハッシュ、ビットマップ、hyperloglog、地理空間インデックス

クラスターのエンジンを選択した後は、そのエンジンの最新バージョンを使用することをお勧めします。詳細については、「サポートされる ElastiCache for Memcached のバージョン」または「サポートされる Redis 用 ElastiCache のバージョン」を参照してください。