

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

# Valkey、Memcached、および Redis OSS のノードベースのクラスターの比較
<a name="SelectEngine"></a>

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

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

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

**以下がお客様の状況に当てはまる場合は、Memcached を選択します。**
+ できるだけシンプルなモデルが必要である。
+ 複数のコアまたはスレッドを持つ大きなノードを実行する必要がある。
+ システムでの需要の増減に応じてノードを追加または削除するスケールアウトおよびスケールイン機能が必要である。
+ オブジェクトをキャッシュする必要があります。

**以下の状況が当てはまる場合は、ElastiCache で Valkey または Redis OSS を選択します。**
+ **Valkey 用の ElastiCache バージョン 7.2 または Redis OSS 用のバージョン 7.0 (拡張)**

  [関数](https://valkey.io/topics/functions-intro/)、[シャードされた Pub/Sub](https://valkey.io/topics/pubsub/)、または [ACL の改善](https://valkey.io/topics/acl/)を使用したい。詳細については、「[Redis OSS バージョン 7.0 (拡張)](engine-versions.md#redis-version-7.0)」を参照してください。
+ **Redis OSS 用の ElastiCache バージョン 6.2 (拡張)**

  r6gd ノードタイプを使用して、メモリと SSD の間でデータを階層化する機能が必要です。詳細については、[データ階層化](data-tiering.md)を参照してください。
+ **Redis OSS 用の ElastiCache バージョン 6.0 (拡張)**

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

  詳細については、「[Redis OSS バージョン 6.0 (拡張)](engine-versions.md#redis-version-6.0)」を参照してください。
+ **Redis OSS 用の ElastiCache バージョン 5.0.0 (拡張)**

  プロデューサーが新しいアイテムをリアルタイムで追加できるようにし、コンシューマーがブロッキングまたはノンブロッキングの方法でメッセージを使用できるようにもするログデータ構造である [Redis OSS ストリーム](https://redis.io/topics/streams-intro)を使用したい。

  詳細については、「[Redis OSS バージョン 5.0.0 (拡張)](engine-versions.md#redis-version-5-0)」を参照してください。
+ **Redis OSS 用の ElastiCache バージョン 4.0.10 (拡張)**

  Valkey または Redis OSS (クラスターモードが有効) クラスターで、暗号化とシャードの動的な追加または削除の両方をサポートします。

  詳細については、「[Redis OSS バージョン 4.0.10 (拡張)](engine-versions.md#redis-version-4-0-10)」を参照してください。

以下のバージョンは廃止か、終了か、間もなく終了します。
+ **Redis OSS 用の ElastiCache バージョン 3.2.10 (拡張)**

  Valkey または Redis OSS (クラスターモードが有効) クラスターからシャードを動的に追加または削除する機能をサポートします。
**重要**  
現在、Redis OSS 用の ElastiCache 3.2.10 は暗号化をサポートしていません。

  詳細については次を参照してください:
  + [Redis OSS バージョン 3.2.10 (拡張)](engine-versions.md#redis-version-3-2-10)
  + Redis OSS のオンラインリシャーディングのベストプラクティスについては、以下を参照してください。
    + [ベストプラクティス: オンラインリシャーディング](best-practices-online-resharding.md)
    + [Valkey または Redis OSS (クラスターモードが有効) のオンラインリシャーディングおよびシャードの再分散](scaling-redis-cluster-mode-enabled.md#redis-cluster-resharding-online)
  + Redis OSS クラスターのスケーリングの詳細については、「[スケーリング](Scaling.md)」を参照してください。

    
+ **Redis OSS 用の ElastiCache バージョン 3.2.6 (拡張)**

  以前の Redis OSS バージョンの機能に加え、次の機能が必要な場合は、 3.2.6 を選択します。
  + 転送時の暗号化 詳細については、「[Amazon ElastiCache for Redis の送信中の暗号化](in-transit-encryption.md)」を参照してください。
  + 保管時の暗号化 詳細については、「[Amazon ElastiCache for Redis の保管時の暗号化](at-rest-encryption.md)」を参照してください。
+ **Redis OSS 用の ElastiCache (クラスターモードが有効) バージョン 3.2.4**

  2.8.x の機能に加え、次の機能が必要な場合は、3.2.4 (クラスターモード) を選択します。
  + 2～500 のノードグループ間でデータを分割する必要がある (クラスターモードのみ)。
  + 地理空間インデックス作成 (クラスターモードまたは非クラスターモード) が必要。
  + 複数のデータベースをサポートする必要がない。
+ **Redis 用の ElastiCache (非クラスターモード) 2.8.x および 3.2.4 (拡張)**

  次に該当する場合は、2.8.x または 3.2.4 (非クラスターモード) を選択します。
  + 文字列、ハッシュ、リスト、セット、ストアドセット、ビットマップなど、複雑なデータ型が必要である。
  + インメモリデータセットをソートまたはランク付けする必要がある。
  + キーストアの永続性が必要である。
  + 読み取り量が多いアプリケーションのために、プライマリからのデータを 1 つ以上のリードレプリカにレプリケートする必要がある。
  + プライマリノードが失敗した場合に、自動的なフェイルオーバーが必要である。
  + 発行とサブスクライブ (pub/sub) 機能が必要—クライアントにサーバー上のイベントを通知する必要がある。
  + サーバーレスキャッシュだけでなく、ノードベースのクラスターのバックアップと復元機能も必要である。
  + 複数のデータベースをサポートする必要がある。


**Memcached、Valkey または Redis OSS (クラスターモードが無効)、Valkey または Redis OSS (クラスターモードが有効) の比較の概要**  

|  |  Memcached  |  Valkey または Redis OSS (クラスターモードが無効）  |  Valkey または Redis OSS (クラスターモードが有効）  | 
| --- |--- |--- |--- |
| Engine versions\$1 | 1.4.5 and later | 4.0.10 and later | 4.0.10 and later | 
| Data types | Simple  | 2.8.x - Complex \$1 | 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 | For serverless caches only, not applicable to node-based clusters | Yes | Yes | 
| Geospatial indexing | No | 4.0.10 and later | Yes | 
| 注記: | 
|  string, objects (like databases) | 
| \$1 string, sets, sorted sets, lists, hashes, bitmaps, hyperloglog | 
|  string, sets, sorted sets, lists, hashes, bitmaps, hyperloglog, geospatial indexes | 
| \$1 Excludes versions which are deprecated, have reached or soon to reach end of life. | 

クラスターのエンジンを選択した後は、そのエンジンの最新バージョンを使用することをお勧めします。詳細については、「[サポートされているノードの種類](CacheNodes.SupportedTypes.md)」を参照してください。