Memcached と Redis の独自設計型キャッシュの比較 - Amazon ElastiCache フォー・レディス

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

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

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

重要

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

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

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

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

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

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

以下の状況が当てはまる場合は、Redis を ElastiCache for 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 for Redis 3.2.10 は暗号化をサポートしていません。

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

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

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

  • 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 (クラスターモードが有効)
Engine versions+ 1.4.5 and later 4.0.10 and later 4.0.10 and later
Data types Simple ‡ 2.8.x - Complex * 3.2.x and later - Complex †
Complex †
Data partitioning Yes No Yes
Cluster is modifiable Yes Yes 3.2.10 and later - Limited
Online resharding No No 3.2.10 and later
Encryption in-transit 1.6.12 and later 4.0.10 and later 4.0.10 and later
Data tiering No 6.2 and later 6.2 and later
コンプライアンス認定
Compliance Certification

    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 以降

Multi-threaded Yes No No
Node type upgrade No Yes Yes
Engine upgrading Yes Yes Yes
High availability (replication) No Yes Yes
Automatic failover No Optional Required
Pub/Sub capabilities No Yes Yes
Sorted sets No Yes Yes
Backup and restore No Yes Yes
Geospatial indexing No 4.0.10 and later Yes
注記:
‡ string, objects (like databases)
* string, sets, sorted sets, lists, hashes, bitmaps, hyperloglog
† string, sets, sorted sets, lists, hashes, bitmaps, hyperloglog, geospatial indexes
+ Excludes versions which are deprecated, have reached or soon to reach end of life.

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