omuronの備忘録

個人的な備忘録

「AWSの基礎を学ぼう 第七十三回 Amazon ElastiCache」 #awsbasics 受講メモ

awsbasics.connpass.com

オンメモリ DB の ElastiCache です。
久しぶりに昔から使っているサービスが取り上げられました。

セッション

Amazon ElastiCache

講師:アマゾン ウェブ サービス ジャパン、シニアエバンジェリスト 亀田氏

Amazon ElastiCache

  • キャッシュサービスなので複数データソースと組み合わせでより高い性能を発揮
    • ElastiCache + RDS, Redshift, DynamoDB, DocumentDB, S3...
    • Memory DB for Redis は、キャッシュサービスだが永続性も確保可能
  • フルマネージド、高可用性、堅牢性
  • 2種類のエンジン
  • 高速
    • AWS の DB サービスで速い方
      • DynamoDB Accelerator (DAX) も同じぐらい速い

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 の負荷を下げるためのキャッシュなど、消えても困らない用途以外で使ったことはありません。