この記事はElastiCacheについて、ダーシーが知り得た情報をまとめたものです。

 

ElastiCacheとは?

完全マネージド型の(ディスクを利用しない)インメモリDBです。

インメモリDBとは、ディスクを利用せず、メモリ内でデータの読み書きをすることでDB処理を高速化を実現するDBのことです。

 

ElastiCacheはどんなとき利用するいいのか(ユースケース)

  • ランキングやレコメンデーション(購買履歴表示)の実装をするとき
  • RDSのリードレプリカを利用して、読み込み速度は速くしたはいいが、もっとレスポンスを速くしたい場合。
    • リードレプリカより速く動作する
  • DBの書き込み速度もより速くしたい場合
  • オートスケーリング時にクレジットカード課金をセッション維持をしたい場合
    • スティッキーセッション以外で管理したい場合
  • ユーザー行動データの高速な処理をしたい場合

 

ElastiCacheのユースケース

ElastiCacheの種類

ElastiCacheには以下のタイプが存在します。それぞれの特徴があり、それに合わせた使い方が必要になってきます。

  • Redis
  • Memcached

両者の違い(比較)

 

 

その種類によって、デプロイ、運用、および拡張を容易することができます。

このサービスは、低速のディスクベースのデータベースに完全に依存するのではなく

高速の管理されたインメモリデータストアから情報を取得できるようにすることで、WebアプリケーションのDBパフォーマンスを向上させます。

 

構成図のどの位置に置かれることが多い?

RDSやDynamoDBの前に配置されることが多い。

 

ElastiCachで何ができる?

ElastiCacheを利用すると、セッションと頻繁なDBクエリを保存してWEBページの読み取り時間を短縮が可能になります。

 

どのような仕組みで動くのか(概要)

どのようなデータフローになる?

どのようなデータがどのに読み込まれる?書き込まれる?

 

ElastiCach特徴

  • インメモリDB型のDBである(ディスクを利用しない、メモリ上で動作)
  • キーバリューストアの高性能データベースである
  • 種類にMemcached、Redis、が存在する
  • キャッシュデータにミリ秒以下で高速のデータ処理を可能
  • 行動データ記録などに応じたリアルタイムのランキング処理やアイテム出現などを実現することが可能
  • NoSQL型のデータベースである
  • リレーショナルデータベースとしてSQLを利用することはできない
  • コンテンツ配信用のキャッシュ処理には向かない

 

ElastiCach - ネットワーク構成図

 

 

MemcachedとRedisの使い分け

どいういう場合にどちらを利用するのがベストか?なぜか?

 

ElastiCach - テスト

利用するツール

  • クライアントに配置するツール
    • Chromeブラウザ
  • WEBサーバに配置するツール

 

ElastiCach - 監視

監視項目はどのようのものがある?

 

ElastiCach - 料金

 

 

参考サイト

 

Memcachedとは

 

 

Redis

 

MemcachedとRedisの違いとは?

 

リードレプリカとの違いは?

  • ElastiCacheの方が高価である

 

関連記事

記事タイトル検索