AWS Certified Solutions Architect Associate(SAA-C03) 練習問題 10:ElastiCache RedisとMemcachedの使い分け
Amazon ElastiCacheのエンジンであるRedisとMemcachedの違いについて述べた文として、正しいものはどれか。
- RedisはMemcachedと異なりマルチスレッド処理に対応しており、複数のCPUコアを効率よく活用して高スループットのキャッシュ処理を実現できる。
- MemcachedはRedisと異なりスナップショット(バックアップ)機能とレプリケーション機能を持つため、キャッシュデータの永続化が必要な場合に推奨される。
- Redisはソート済みセット(Sorted Set)やリスト、ハッシュなど多様なデータ構造をサポートし、ランキング機能やセッション管理などに幅広く活用できる。
- MemcachedはMulti-AZのレプリケーションをサポートしており、ノード障害時には自動フェイルオーバーによってキャッシュデータが保護される。
- ElastiCache for Redisはクロスリージョンレプリケーションに対応していないため、グローバルに低レイテンシーなキャッシュアクセスが必要な場合はMemcachedを選択する必要がある。
Qraftユーザーの成績:正答率 64%(9/14回正解)
正解と解説を見る
正解:Redisはソート済みセット(Sorted Set)やリスト、ハッシュなど多様なデータ構造をサポートし、ランキング機能やセッション管理などに幅広く活用できる。
ElastiCacheはRedisとMemcachedの2つのエンジンをサポートします。
Redisの特徴:文字列・リスト・セット・ソート済みセット・ハッシュなど多様なデータ構造をサポート。スナップショット(RDB)やAOFによるデータ永続化が可能。Multi-AZとレプリケーション(リードレプリカ)をサポート。Global Datastoreによるクロスリージョンレプリケーションにも対応。基本的にシングルスレッドで動作(バージョン6以降は一部マルチスレッド対応)。
Memcachedの特徴:シンプルなキーバリュー型のみ。データ永続化・レプリケーション・Multi-AZは非対応。マルチスレッド処理に対応しており複数コアを活用可能。スケールアウト(水平スケーリング)に優れる。
正しいのは「Redisが多様なデータ構造をサポートし、ランキングやセッション管理に活用できる」という内容です。バックアップ・永続化・レプリケーションが必要な場合はRedis、シンプルなキャッシュでマルチスレッドのスケーラビリティが必要な場合はMemcachedが適しています。