📝
DynamoDB勉強メモ
このメモの目的
AWS Certified Developer - Associateの学習のため。
知識の整理や定着を図るためのアウトプット場所として利用。
その為、誤りなどが記載されている可能性があります。
お気づきの点があればご指摘いただけると非常に助かります。
出題範囲
試験ガイドによると以下がDynamoDBの出題範囲
- Amazon DynamoDB の概念 (テーブル、項目、属性など) を適用する
- アプリケーションの要件に基づいて Amazon DynamoDB の読み込み/書き込み容量ユニットを計算する
AWS Certified Developer - Associate(DVA-C01) 試験ガイド
DynamoDBの特徴
- DynamoDBは,AWSが提供するフルマネージドなKey-Value型のNoSQLデータベース
- マネージドサービスなのでユーザー側でインフラ管理などが不要(AWSの対応範囲)
- リージョン単位でデータベースが構築される
- 3箇所の異なるAZにデータが複製され保存されるため、単一障害点がない。
テーブルの構造
*テーブルイメージ↓
- プリマリキーとして、パーティションキーまたはパーティションキーとソートキーの組み合わせを使用する
- ソートキーを使用しない場合はパーティションキーのみでデータを一意に特定できるようにする必要がある
- プリマリキーを以前はハッシュキー、ソートキーを以前はレンジキーと呼んでいた
キャパシティユニットの計算
- DynamoDBでは読み書きのスループットをキャパシティユニットと呼ぶ(自信薄)
- 読み取りキャパシティユニット➡︎ RCUs
- 書き込みキャパシティユニット➡︎ WCUS
RCUsの計算方法
1秒あたりの読み込み項目数×項目サイズで算出
4KBまでを一つの項目として計算(3KBの場合は1、5KBの場合は2)
WCUsの計算方法
1秒あたりの書き込み項目数×項目サイズ
1KBまでを一つの項目として計算
- 結果整合性のある読み込みの場合はスループットが2倍になるため半分のRCUsで済む
- トランザクション書き込みの場合はスループットが半減するため倍のWCUsが必要になる
・・・勉強していきながら修正・加筆していきます。
Discussion