キャッシュとは、一度アクセスしたデータを保存して次回アクセス時に高速にアクセスできるようにする仕組みです。
目次
概要
分散インメモリキャッシュサービスの構築・管理及びスケーリングを容易に実施することができるサービスです。
- キャッシュクラスタを数クリックで起動
- フルマネージド型でモニタリング、自動障害検出、復旧、拡張、パッチ適用、バックアップに対応し高可用性を実現
- 広く利用されている2種類のエンジンmemcached、redisから選択可能
オープンソース機能
オープンソースのRedisとMemcachedを利用可能で汎用性あります。
Redis
- 高速に値をRead/Writeできるインメモリキャッシュ型DB
- シングルスレッドで動作するインメモリキャッシュDBで全てのデータ操作は排他的
- スナップショット機能がある
- データを永続化できる
Memcached
- 高速に値をRead/Writeできるインメモリキャッシュ型DB
- マルチスレッドで動作するインメモリキャッシュDB
- スナップショット機能がない
- データを永続化できない
- フェールオーバーや復元できない
用途
シンプルに利用する場合はMemcachedを利用するが、それ以外はRedisを利用する場合が多い。
Redisの用途
- 複雑なデータ型が必要である
- インメモリデータセットをソートまたはランク付けする必要がある
- pub/sub機能が必要
- 自動的なフェイルオーバーが必要である
- キーストアの永続性が必要である
- 複数のデータベースをサポートする必要がある
Memcachedの用途
- シンプルなデータ型が必要である
- 複数のコアまたはスレッドを持つ大きなノードを実行する必要がある
- システムでの需要の増減に応じてノードを追加または削除するスケールアウト及びスケールイン機能が必要である
- データベースなどのオブジェクトをキャッシュする必要がある
- キーストアの永続性は必要ない
- バックアップと復元の機能が必要でない
- 複数のデータベースを利用できない
ElastiCache With Redis
その他の位置情報クエリ/Luaスクリプトによる操作やpub/subモデルを活用可能
Luaスクリプト
- 移植性が高く、高速な実行速度などの特徴を持っている、スクリプト言語
位置情報クエリ
- 経度・緯度などの位置情報をクエリ処理することが可能
- 検索距離や検索範囲の指定可能
pub/subモデルの利用
- 「イベントを起こす側」と「イベント処理を行う側」を分離するのがpub/subモデル
- メッセージ処理やイベント処理で活用
ユースケース
データアクセスを高速にしたいケースがあれば、キャッシュの活用を検討してください。
- セッション管理
- IOT処理とストリーム分析
- メタデータ蓄積
- ソーシャルメディアのデータ処理/分析
- Pub/Sub処理
- DBキャッシュ処理
次は「【AWS資格】CloudFrontの概要」です。
【AWS資格】CloudFrontの概要 AWSが提供するCDN(Content Delivery Network)サービス。CDNはWEBコンテンツ配信処理を高速化するためのサービス。 【メリット】 大規模なアクセスも世界中にあるエッジ…
前回は「【AWS資格】Redshiftの概要」です。
【AWS資格】Redshiftの概要 高速でスケーラブルな費用対効果の高いマネージド型のDWH /データレイク分析サービスです。クラスターというグループ単位で、複数ノードによってデータ処理を実行する…
リンク
コメント