IT用語: Amazon DynamoDBとは|ミリ秒応答の完全マネージドNoSQLデータベース
サーバーレス・無制限スケールのキーバリュー/ドキュメントDBであるAWS DynamoDBの仕組みと設計パターンを解説。
Amazon DynamoDBとは
Amazon DynamoDBは、AWSが提供するフルマネージドのNoSQL(キーバリュー型+ドキュメント型)データベースサービスです。サーバー管理不要で、トラフィックに応じた自動スケーリングにより、任意の規模でミリ秒以下のレスポンスタイムを実現します。
RDSとDynamoDBの比較
| 比較軸 | DynamoDB | RDS(関係DB) |
|---|---|---|
| データモデル | キーバリュー・ドキュメント | テーブル・リレーション |
| スケーリング | 水平・自動 | 垂直・手動 |
| トランザクション | 限定的(TransactWrite) | 完全ACID |
| 結合(JOIN) | 不可(アプリ側で実装) | 可能 |
| ユースケース | 大規模・低レイテンシ | 複雑なクエリ・集計 |
主要概念
- パーティションキー(PK): データを分散するための主キー
- ソートキー(SK): PKと組み合わせた複合主キー。範囲クエリが可能
- GSI(グローバルセカンダリインデックス): 別の属性でクエリするためのインデックス
- オンデマンドモード: リクエスト数に応じた従量課金
単一テーブル設計(Single Table Design)
DynamoDBのベストプラクティスは、複数のエンティティ(ユーザー・注文・商品)を1つのテーブルに格納し、PK/SKの設計でアクセスパターンを表現するアプローチです。JOINがない分、アクセスパターンを先に設計することが重要です。
関連する用語 (クラウド)
全40件を見るCloud Pub/Sub
GCPのフルマネージドなメッセージングサービス。パブリッシャーとサブスクライバーを非同期に疎結合させ、毎秒数百万件のイベントを信頼性高く処理できる。
Azure Blob Storage
Microsoftのオブジェクトストレージサービス。画像・動画・バックアップ・ログなど大量の非構造化データをコスト効率よく保存できる。AWSのS3に相当する。
サーバーレス (Serverless)
開発者がサーバーの構築や保守を意識することなく、プログラムの実行環境だけを利用できる仕組み。
IT用語: GKE(Google Kubernetes Engine)とは|Kubernetes発祥のGCPマネージドK8s
Kubernetesを生んだGoogleが提供するマネージドKubernetesサービスGKEの特徴とAutopilotモードを解説。
Azure DevOps
Microsoftが提供するDevOpsプラットフォーム。ソースコード管理(Repos)・CI/CDパイプライン(Pipelines)・タスク管理(Boards)・テスト(Test Plans)・成果物管理(Artifacts)を統合提供する。
SaaS (Software as a Service)
ソフトウェアをインターネット経由でサービスとして提供する形態。