データベース

ElastiCache Memcached とは?シンプル KV キャッシュの使いどころ

ElastiCache Memcached は AWS マネージドの Memcached サービス。シンプルな KV キャッシュ専用で、Redis と違い 永続化・レプリ・PubSub なし。マルチスレッド対応で 大量シンプルアクセスに強い。現在は Redis 採用が多く、...

AWS マネージドの Memcached。シンプルな KV キャッシュ専用、永続化・レプリなし。


1. 概要(端的に)

ElastiCache Memcached は AWS マネージドの Memcached サービス。シンプルな KV キャッシュ専用で、Redis と違い 永続化・レプリ・PubSub なし。マルチスレッド対応で 大量シンプルアクセスに強い。現在は Redis 採用が多く、Memcached の選択は限定的。


2. 何ができるか

  • シンプル KV キャッシュ:Get / Set / Delete のみ
  • マルチスレッド:CPU を効率活用
  • 水平拡張:ノード追加で容量増
  • オートディスカバリー:クライアントがノード自動検出

制限

  • 永続化なし(ノード障害でデータ消失)
  • レプリケーションなし
  • 複雑なデータ構造なし(KV のみ)
  • マルチ AZ 自動フェイルオーバーなし

3. 特徴

観点特徴
追加料金ノードタイプ × 時間
遅延サブミリ秒
データ構造KV のみ
クラスターあり(シャーディング)
マルチスレッド○(Redis は単一スレッド)
永続化なし

vs Redis

観点MemcachedRedis
データ構造KV のみ豊富
永続化×
レプリ×
マルチスレッド×
用途シンプルキャッシュ多機能・複雑

4. 仕組み

Memcached は 完全揮発性のインメモリ KV ストア。シンプルさと速度に特化。

構成

  • ノード:単一 EC2 上の Memcached プロセス
  • クラスター:複数ノードでシャーディング
  • オートディスカバリー:クライアントがノードリストを自動取得

動作の流れ

  1. クライアントがオートディスカバリーエンドポイントへ
  2. ノードリストを取得
  3. キーをハッシュしてシャード決定
  4. 該当ノードへ Get/Set

5. ユースケース

ユースケース 1:セッションキャッシュ(永続化不要)

セッション消失が許容できる場合。

ユースケース 2:DB クエリキャッシュ

シンプルな結果キャッシュ。

ユースケース 3:API レスポンスキャッシュ

JSON レスポンスのキャッシュ。

ユースケース 4:レガシーアプリの Memcached 移行

オンプレ Memcached をそのまま AWS へ。

新規構築では Redis を選ぶケースが多い


6. 関連用語


7. 関連サイト

AWS 公式


🎓 試験での出題傾向

試験重要度主な出題パターン
CLFキャッシュサービスの種類
SAAMemcached vs Redis の使い分け
DVAアプリでの Memcached 利用
SOA出題標準