オンメモリ DB の ElastiCache です。
久しぶりに昔から使っているサービスが取り上げられました。
セッション
Amazon ElastiCache
講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏
Amazon ElastiCache
- キャッシュサービスなので複数データソースと組み合わせでより高い性能を発揮
- ElastiCache + RDS, Redshift, DynamoDB, DocumentDB, S3...
- Memory DB for Redis は、キャッシュサービスだが永続性も確保可能
- フルマネージド、高可用性、堅牢性
- 2種類のエンジン
- memcached, redis
- 高速
Memcached と Redis の違い
- Memcached
- 複数コアの大きなノードで作成する
- シンプルなオブジェクト、文字列のみが基本
- バージョンによって、数字や Boolean も
- Redis
- Global Store によるマルチリージョン
- 暗号化と永続性
- スナップショットを S3 に保存できる
- 複雑なデータ型
- ハッシュ、リスト、画像
- データソート
- ゲームランキンとかみたいに激しく入れ替わりするケースに対応できる
Memcached
- Cache Cluseter という論理グループに Cache Node を起動
- バックアップはないので必要なら外部ツールでする
- クライアントライブラリ
- Auto Discovery 用に対応した専用のライブラリを AWS から提供
Redis
- Clouster Group で構成される Replication Group を構成
- Memcached の場合は自分でする必要あるが Redis は準備されているからマルチリージョン対応が簡単
- リージョン内の自動フェイルオーバー
- スナップショットベースのバックアップ/リストア対応
- クライアントライブラリ
- コミュニティベースのライブラリを使う
- リードレプリカは最大5個
- マスターを含めて最大6台
- 非同期レプリケーションなので結果整合性
- マスターに異常が起きて落ちたらデータが欠損する可能性がある
- ダウンタイム0でリサイズ可能
- Global Datastore
- 世界中にコピーができるので通信費に注意
所感
昔は、memchaced 使ってましたが、今は Redis しか使わなくなってしまいました。
スナップショットを取れるんですねー。
RDS の負荷を下げるためのキャッシュなど、消えても困らない用途以外で使ったことはありません。