LoginSignup
0
0

More than 5 years have passed since last update.

AWS ElasticCache Redisエンジン

Posted at

ElasticCacheに関する基本的な内容をまとめてみたものです。ElasticCacheに関する、Web上にすでにある解説コンテンツをまとめたサイトの抜粋です。
Redisエンジン

redis用のAmazon ElastiCache

redis用Amazon ElastiCacheは、redisプロトコルに準拠するWEBサービスです。
メモリ上にデータを格納するKVSで、ハッシュ・リスト型・集合型などのさまざまなデータ構造をサポートし、マスター・スレーブによるレプリケーションにも対応しています。
さらに、メモリ上のデータをディスクに書き出したり、スケールアウトが容易であるなどの特徴を持つ高性能KVSです。

memcachedはメモリキャッシュとしの動作が主となりますが、redisはデータストアとしても動作することができます。

文字列やハッシュ以外のデータ構造にも対応

Redisは文字列やハッシュ以外の構造のデータも、キーに関連付けて格納することが可能です。
そのため、Redisはデータストラクチャストアとも呼ばれることがあります。

Redisで扱えるデータ構造
・文字列
・ハッシュ
・セット
・リスト
・ソート済みのセット

レプリケーション(リードレプリカ)とマルチAZ

Redis用Amazon ElastiCacheは、リードレプリカとマルチAZが利用できます。

リードレプリカ

リードレプリカは、読み込みのスケーリングと障害発生時の対応のために使用されます。

・データの読み込み量が多いとキャッシュに負荷がかかりますが、リードレプリカを利用することで1つのキャッシュノードの容量を気にすることなく、自由にスケールアウトすることが可能です。
・フェイルオーバーが発生すると、スタンバイとして機能していたリードレプリカがプライマリとなって、システムを正常に動作させます。

マルチAZ

マルチAZは、Redisがプライマリからリードレプリカへデータのコピーをすることです。
非同期にデータのコピーが行われ、ノード障害やアベイラビリティーゾーンの障害が発生した時に、Amazon ElastiCacheが自動的にリードレプリカを選択して新しいプライマリとします。
マルチAZが有効の場合は、フェイルオーバーが発生しても、手動で復旧作業する必要がありません。

非同期のディスクへの書き出し

Redisはデータ上にメモリを格納するKVSですが、データの更新量が一定以上となるとディスクに非同期でデータを書き込む機能も持っています。
この機能を利用することで、障害に強いシステムを構築することが可能です。
しかし、ディスクにデータを書き込むことでデータの永続性を維持しますが、ディスクにバックアップしていないデータについては消失してしまいます。

バックアップと復元

ユーザーがRedis用ElastiCacheクラスター全体のコピーであるスナップショットを作るための機能が、バックアップと復元です。
Redisクラスター全体のコピーを作成することで、ノードに障害が発生してもデータを復元することができます。

バックアップと復元機能は、AWSマネジメントコンソール・ElastiCache API・ CLI で設定できます。
何度でも、アクティブにしたり無効にすることができます。

バックアップを行う時期はユーザーが決めることもできますし、毎日作成するように設定することも可能です。
バックアップ作業が始まると指定したRedisクラスターのスナップショットの作成が行われ、S3に保存されます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0