ブログリレー

【ElastiCache】AWSサービスしりとりリレー 第2日目

大久保です。
APNアドバンストコンサルティングパートナー昇格記念「AWSサービスしりとりリレー」の2日目です。

2日目のお題は「e」から始まるサービス「ElastiCache」です。
ElastiCacheは初見だとイメージが掴みにくいように感じたので、このブログが助力になればと思います。

ElastiCacheを知ろう

ElastiCacheとは

ElastiCacheで何ができるか?調べてみると、できることが色々出てきます。理由の一つとしては、Redisが多機能だからです。


引用:【AWS Tech 再演】AWS の NoSQL 入門 〜Amazon ElastiCache, Amazon DynamoDB〜|AWS Summit Tokyo 2017

できることが多いと、ElastiCacheをどのような場面で導入すればよいか、逆にイメージしづらいかもしれません。よって、2つのエンジンに共通する機能に絞ってみていこうと思います。

キャッシュ

キャッシュサーバとは、ネットワーク上であるサーバが外部に提供しているデータの複製を保存し、そのサーバに代わって応答するサーバのこと。また、そのような機能を実現するシステムやソフトウェア。
<中略>
具体的にどのようなサーバのどんなデータの配信を肩代わりするかはシステムの種類やデータ形式、プロトコル(通信規約)によって様々であり、対象や方式を冠して「○○キャッシュサーバ」のように呼ぶのが一般的である。

2つのエンジンはKVSという特徴を持っており、キャッシュに使われることが多いです。では、どのようなデータをキャッシュすることに向いているのでしょうか。KVSというだけなら、DynamoDBもKVSです。





引用:【AWS Tech 再演】AWS の NoSQL 入門 〜Amazon ElastiCache, Amazon DynamoDB〜|AWS Summit Tokyo 2017

ここでレイテンシの問題をクリアする要素は、二つのVKSエンジンに共通する「インメモリデータベース」という特性です。データをディスクに保存するのではなく、メモリに保存することで高速で管理できます。

セッションストア

他に、キャッシュに保存するデータとして有用であるのが、session情報です。下図のように各application毎にsession情報を保存していた場合、applicationのスケールが難しくなします。



引用:https://aws.amazon.com/jp/elasticache/redis/
そこで、ElastiCacheにsession情報を保存、session storeとして使用します。applicationからsession情報を分離することで、session情報の管理が柔軟になります。

マネージドサービス

単に、RedisやMemcachedを使いたいのであれば、EC2にインストールして構築することができます。「ElastiCache」を利用をする利点は何でしょうか。これはElastiCacheに限った話ではありませんが、運用をAWSへ任せることができる点です。



引用:【AWS Tech 再演】AWS の NoSQL 入門 〜Amazon ElastiCache, Amazon DynamoDB〜|AWS Summit Tokyo 2017

ElastiCacheで、各ノード(ElastiCacheの最小単位)を管理することでオーバーヘッドは小さくなり、レプリケーションや自動フェイルオーバーの設定も容易になります。マネージドでできることは年々増えていっていますので、そこは是非チェックしていただきたいです。

まとめ

・キャッシュに向いておりセッションストアとして活用できる
・インメモリデータべ-スの特性を活かしてレイテンシの低減を実現できる
・紹介していないRedisの拡張機能がまだまだある
・ElastiCacheでの管理はどんどん楽になっている

今回はElastiCacheのほんのさわりを紹介しました。
魅力的な機能が多いサービスですので、是非実際に。触っていただきたいです

AWSサービスしりとりリレー2日日は「 ElastiCache]した。AWSしりとり3日目は、またも「e」から始まるサービスになります。ぜひお楽しみに!

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA