Memcached キャッシュと Redis の独自設計型キャッシュの比較 - Amazon ElastiCache for Redis

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Memcached キャッシュと Redis の独自設計型キャッシュの比較

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

重要

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

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

以下がお客様の状況に当てはまる場合は、Memcached を選択します。
  • できるだけシンプルなモデルが必要である。

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

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

  • オブジェクトをキャッシュする必要があります。

次の条件が当てはまる場合は、 ElastiCache for Redis のバージョン で Redis を選択します。
  • ElastiCache for Redis バージョン 7.0 (拡張)

    Redis 関数シャードされた Pub/Sub、または Redis ACL の改善を使用したい。詳細については、「Redis バージョン 7.0 (拡張)」を参照してください。

  • ElastiCache for Redis バージョン 6.2 (拡張)

    r6gd ノードタイプを使用して、メモリと SSD の間でデータを階層化する機能が必要です。詳細については、データ階層化を参照してください。

  • ElastiCache for Redis バージョン 6.0 (拡張)

    ロールベースのアクセスコントロールを使用してユーザーを認証します。

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

  • ElastiCache for Redis バージョン 5.0.0 (拡張)

    プロデューサーが新しいアイテムをリアルタイムで追加できるようにし、コンシューマーがブロッキングまたはノンブロッキングの方法でメッセージを使用できるようにもするログデータ構造である Redis ストリームを使用します。

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

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

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

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

以下のバージョンは廃止か、終了か、間もなく終了します。

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

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

    重要

    現在 ElastiCache 、Redis 3.2.10 では暗号化はサポートされていません。

    詳細については、次を参照してください。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    • 独自設計型クラスターとサーバーレスキャッシュのバックアップおよび復元機能が必要です。

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

Memcached、Redis (クラスターモードが無効)、Redis (クラスターモードが有効) の比較の概要
Memcached Redis (クラスターモードが無効) Redis (クラスターモードが有効)
エンジンバージョン+ 1.4.5 以降 4.0.10 以降 4.0.10 以降
データ型 シンプル ‡ 2.8.x - 混在 * 3.2.x 以降 - 複雑
複雑
データのパーティション化 はい いいえ はい
クラスターが変更可能 はい はい 3.2.10 以降 - 限定
オンラインリシャーディング いいえ いいえ 3.2.10 以降
暗号化 転送中の 1.6.12 以降 4.0.10 以降 4.0.10 以降
データ階層化 いいえ 6.2 以降 6.2 以降
コンプライアンス認定
コンプライアンス認定

    FedRAMP

    HIPAA

    PCI DSS

 

はい – 1.6.12 以降

はい – 1.6.12 以降

はい

 

4.0.10 以降

4.0.10 以降

4.0.10 以降

 

4.0.10 以降

4.0.10 以降

4.0.10 以降

マルチスレッド はい いいえ いいえ
ノードタイプのアップグレード いいえ はい はい
エンジンのアップグレード はい はい はい
高可用性 (レプリケーション) いいえ はい はい
自動フェイルオーバー いいえ オプションです。 必須
パブリック/サブ機能 いいえ はい はい
ソートされたセット いいえ はい はい
バックアップと復元 Serverless Memcached のみ、独自設計型 Memcached クラスターは対象外 はい はい
地理空間インデックス作成 いいえ 4.0.10 以降 はい
注意:
‡文字列、オブジェクト (データベースなど)
*文字列セット、並べ替えられたセット、リスト、ハッシュ、ビットマップ、Hyperloglog
‡文字列、セット、ソートされたセット、リスト、ハッシュ、ビットマップ、hyperloglog、地理空間インデックス
+ 非推奨、サポート終了間近、またはサポート終了間近のバージョンを除外します。

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