データアクセスパターンと整合性モデル
AWS データストアの活用
Dunieski Otano
AWS Solutions Architect
画一的アプローチの限界
- 商品カタログ:毎秒数千回の読み取り、更新は少ない
- ショッピングカート:頻繁な書き込み
- 注文システム:データ損失は許容不可
- アクセスパターンが異なれば、必要なデータストア戦略も異なります
一時ストレージと永続ストレージのパターン
永続ストレージ:再起動後もデータが保持される
- ディスクに保存され、削除するまで残ります
- AWSの例:DynamoDB、S3、RDS、OpenSearch
- 用途:ユーザーデータ、トランザクション、ファイル、レコード

- 一時ストレージ:再起動するとデータが消える
- メモリに保存され、一時的な利用を前提とします
- AWSの例:ElastiCache、EC2 Instance Store
- 用途:セッションデータ、キャッシュ、一時計算

読み取り重視と書き込み重視のワークロード
- 読み取り重視:読み取りが多く、書き込みは少ない
- 例:商品カタログ、ブログ記事
- 推奨:キャッシュを使ったDynamoDB、S3
- 書き込み重視:頻繁な更新
- 例:IoTセンサー、クリックストリームデータ
- 推奨:自動スケーリング対応のDynamoDB
- バランス型:読み取りと書き込みが均等
- 例:SNSの投稿、コメント
- 推奨:均等キャパシティのDynamoDB
整合性モデルの実践
- 強整合性:常に最新データを返す
- 結果整合性:古いデータが返る場合がある
- 速いが、短時間の遅延が生じる可能性あり
- 用途:ユーザープロファイル、商品説明
- DynamoDB コンソール:
ConsistentRead パラメータ
AWSコンソールでのサービス確認
- DynamoDB コンソール:テーブル、アイテム、クエリ
- S3 コンソール:バケット、オブジェクト、プロパティ
- ElastiCache コンソール:Redis/Memcached、ノード、メトリクス
- サービスごとにリソースの構成が異なります
パターンとサービスの対応付け
- 読み取り重視+結果整合性 → DynamoDB、S3
- 書き込み重視+高スループット → DynamoDB
- キャッシュ層 → ElastiCache
- 全文検索 → OpenSearch
Preparing Video For Download...