DynamoDB を学ぶ

DynamoDB を学ぶ

DynamoDB を正しく学ぶ — 基礎からデータモデリング、インデックス、式、PartiQL、ツール、内部構造まで、体系立てたカリキュラムです。

DynamoDB の基礎 — データ型、アイテムコレクション、複合プライマリキー。カリキュラムの他のすべてが土台とする基本的な仕組み。

9 件中 0 件読了クイズ
DynamoDBをいつ使うべきか(そしていつ使うべきでないか)
DynamoDBをいつ使うべきか(そしていつ使うべきでないか) — リレーショナルデータベースよりDynamoDBが有利になるアクセスパターン・スケール・コストのシグナルと、不向きなワークロード。
初級読了 9 分
DynamoDB のデータ型:全型を例付きで
DynamoDB の 10 種類のデータ型 — スカラー(S、N、B、BOOL、NULL)、ドキュメント(M、L)、セット(SS、NS、BS)、DynamoDB-JSON での見え方、そしてどれがキーになれるか。
初級読了 6 分
DynamoDB JSON とマーシャリング
DynamoDB JSON とマーシャリング — なぜすべての値が型タグで包まれるのか、この形式が素の JSON とどう違うのか、そして両者をどう変換するのか。
初級読了 6 分
DynamoDB のアイテムサイズ上限(400 KB)
DynamoDB の 400 KB アイテムサイズ上限 — 何がカウントされるか、属性名とネストがどう積み上がるか、そして際限のないアイテムの肥大化を避けるモデリング。
初級読了 5 分
DynamoDBのアイテムベース操作
DynamoDBのアイテムベース操作 — GetItem、PutItem、UpdateItem、DeleteItemは、それぞれ完全なプライマリキーで単一のアイテムを指定する。QueryやScanとの違いも。
初級読了 7 分
DynamoDB のアイテムコレクション
DynamoDB のアイテムコレクションとは何か — 同じパーティションキーを共有するすべてのアイテム — なぜそれが効率的な Query 読み取りの単位なのか、そして注意すべき制限。
初級読了 8 分
DynamoDB の複合プライマリキー:パーティションキーとソートキー解説
DynamoDB の複合プライマリキーはパーティションキーとソートキーの組み合わせ — 関連するアイテムをまとめてグループ化し、単純なキーではできない範囲クエリを可能にする。
初級読了 7 分
DynamoDB の強い整合性のある読み取りと結果整合性のある読み取り
DynamoDB の強い整合性のある読み取りと結果整合性のある読み取り — それぞれが何を保証するか、`ConsistentRead` の 2 倍の RCU コスト、そして GSI が結果整合性のみである理由。
中級読了 7 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB のデータモデリング — シングルテーブル設計、アクセスパターンからのモデリング、type 属性、非正規化、そして 1 テーブルが間違った選択になるとき。

7 件中 0 件読了クイズ
DynamoDB シングルテーブル設計 完全ガイド
DynamoDB のシングルテーブル設計は、オーバーロードしたキープレフィックスの下にすべてのエンティティを 1 つのテーブルへ格納し、親と子を 1 回の Query で返します。
中級読了 7 分
DynamoDB でデータをモデル化する方法
DynamoDB でアクセスパターンファーストにデータをモデル化する方法。4 つの問いをパーティションキー、ソートキー、GSI に落とし込む、ゲームのリーダーボードの解説。
中級読了 8 分
DynamoDB でシングルテーブル設計を使うべきでないとき
DynamoDB でシングルテーブル設計を使うべきでないとき — 重い分析、無関係なエンティティに対する単純な CRUD、そして独立してスケールしたり障害したりするエンティティ。
中級読了 7 分
DynamoDB の Type 属性
DynamoDB の Type 属性 — すべての項目にエンティティ型を刻み込むことで、行を識別し、GSI を 1 つのエンティティに絞り込み、将来のマイグレーションを乗り切る理由。
中級読了 7 分
DynamoDB の非正規化
DynamoDB の非正規化 — 結合する代わりにデータを複製する理由を、ブログの著者名の例、古びる(staleness)という地雷、そして埋め込みか複製かの使い分けとともに解説。
中級読了 7 分
DynamoDB のシングルトンアイテム
DynamoDB のシングルトンアイテム — 機能フラグや設定のようなグローバルな状態を保持する固定キーの 1 行を、GetItem で読み、条件式で更新する。
中級読了 8 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB でのリレーションシップのモデリング — 一対多、多対多、隣接リストパターン、複合ソートキー、参照カウント。すべて join なしで。

6 件中 0 件読了クイズ

DynamoDB のクエリとソート — Query 対 Scan、ページネーション、フィルター式、なぜ Scan が遅いのか、並列スキャン、ゼロパディングを含むソートキー戦略。

10 件中 0 件読了クイズ
DynamoDB の Query と Scan:どちらをいつ使うか(例付き)
DynamoDB の Query と Scan — Query は 1 つのアイテムコレクションを読んで一致した項目分だけ課金され、Scan は FilterExpression が動く前にテーブル全体を読みます。
初級読了 7 分
DynamoDB のページネーション:LastEvaluatedKey 解説(例付き)
DynamoDB のページネーションの仕組み — LastEvaluatedKey と ExclusiveStartKey でループする方法、Limit がページサイズではない理由、そしてステートレスなカーソルの公開方法。
初級読了 7 分
DynamoDB のフィルタリング戦略
DynamoDB のフィルタリング戦略を比較 — パーティションキー、ソートキー、スパースインデックス、そして FilterExpression — どれが本当に読み取り課金を削るのか。
中級読了 8 分
DynamoDB の Scan が遅くて高コストな理由
DynamoDB の Scan が遅くて高コストな理由、実際に何に対して課金されるのか、そして反射的な Scan をコストがわずかで済むキー付き Query に変える方法。
初級読了 6 分
DynamoDB のパラレルスキャン
DynamoDB のパラレルスキャンが Segment と TotalSegments でテーブル全体の読み取りをワーカーに分割する仕組み、それが役立つ場面、そして避けるべきスループットの落とし穴。
上級読了 7 分
DynamoDB ソートキー戦略:3 つのパターンと使い分け
範囲読み取りのための DynamoDB ソートキー戦略 — バイト順が読み取り順と一致するソートキーを設計し、1 つの Query で多くのアクセスパターンに応える。
中級読了 8 分
DynamoDB を降順にクエリする方法
ScanIndexForward=false で DynamoDB を降順にクエリする — 新しい順の結果、ソートがソートキーで起こる理由、そして逆順の読み取りに追加コストがかからない理由。
初級読了 7 分
変化する (可変な) 属性で DynamoDB をソートする
変化する属性で DynamoDB をソートする — キー属性が変更できない理由、削除して作り直すパターン、そして代わりに GSI のソートキーへ移す方法。
中級読了 7 分
DynamoDB におけるソートキーのゼロ埋め
DynamoDB の文字列ソートキーで "10" が "2" より前に並ぶ理由と、固定幅のゼロ埋めが辞書順のバイト順を数値順に一致させる仕組み。
中級読了 5 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB のグローバルセカンダリインデックスが本当にいくらかかるか。計測した GSI 書き込み増幅、GSI 対 LSI 対フィルターの判断表、そして拘束する上限。

7 件中 0 件読了クイズ
DynamoDB の GSI と LSI
DynamoDB の GSI vs LSI — パーティションキー、整合性、キャパシティ、10 GB の違い、そしてどちらのセカンダリインデックスに手を伸ばすかのシンプルなルール。
初級読了 6 分
DynamoDB のインデックス射影
DynamoDB のインデックス射影 — KEYS_ONLY、INCLUDE、ALL がそれぞれ GSI や LSI に何をコピーするか、書き込みコストのトレードオフ、そして射影されていない属性が読み取りを増やす理由。
中級読了 7 分
DynamoDB のスパースインデックス
DynamoDB のスパースインデックスは、グローバルセカンダリインデックスに、そのキーを持つアイテムだけを保持させます — 大きなテーブルの小さなサブセットをクエリする最も安価な方法です。
中級読了 7 分
DynamoDB のキーオーバーロード
DynamoDB のキーオーバーロード — 汎用的な pk/sk という名前の下に多数のエンティティ型を格納し、型をキーの値にエンコードして、begins_with でそれぞれを切り出す。
上級読了 7 分
DynamoDB の GSI が結果整合性である理由
DynamoDB の GSI が結果整合性である理由 — 書き込み直後の読み取りで古い結果が返る落とし穴、その裏にある伝播の仕組み、そしてそれを前提に設計する方法。
中級読了 8 分
DynamoDB で GSI がベーステーブルの書き込みをスロットルする理由
プロビジョニング不足の DynamoDB GSI がベーステーブルの書き込みをスロットルする理由 — GSI バックプレッシャー、ホットなインデックスパーティション、注意すべき例外、そしてその直し方。
上級読了 6 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB の式 — 条件式、更新式、キー条件式、射影式、そして式の属性名と値、それらをいつ必ず使うか。

6 件中 0 件読了クイズ

DynamoDB の書き込みと運用 — アトミックカウンター、属性横断の一意性の強制、ゼロダウンタイム移行、ホットパーティションの診断。

8 件中 0 件読了クイズ
DynamoDBのバッチ操作
DynamoDBのバッチ操作 — BatchGetItemは1回の呼び出しで100項目を読み、BatchWriteItemは25項目を書く。なぜバッチはトランザクションではないのか、そして未処理項目の再試行。
中級読了 7 分
DynamoDBで複数のアイテムを削除する方法
DynamoDBで複数のアイテムを削除する方法 — BatchWriteItem、TransactWriteItems、PartiQLバッチ、TTL — そしてDELETE ... WHERE文が存在しない理由。
初級読了 7 分
DynamoDBのReturnValues:古いまたは新しいアイテムを取得する
DynamoDBのReturnValuesは、PutItem、UpdateItem、DeleteItemから2回目の読み取りなしで古いまたは新しいアイテムを返す — 5つの選択肢と、それぞれが役立つ場面。
中級読了 5 分
DynamoDB のアトミックカウンター:ADD の仕組みと限界
DynamoDBのアトミックカウンターがADD更新式でどう動くか、なぜ冪等でないのか、そしていつ代わりに条件付き更新に手を伸ばすべきか。
中級読了 5 分
DynamoDB で複数の属性に一意性を課す
DynamoDB で複数の属性に一意制約を課す方法 — メール AND ユーザー名の一意性を、マーカー項目と条件付きの TransactWriteItems で保証する。
上級読了 6 分
ダウンタイムなしの DynamoDB 移行
ダウンタイムなしの DynamoDB 移行 — 遅延バックフィル、オンライン GSI、デュアルライトを使って、ライブテーブルに新しいエンティティ型とアクセスパターンを追加する方法。
上級読了 6 分
DynamoDB のホットパーティション:見つけ方と直し方
DynamoDB のホットパーティションとは、1つのパーティションキーがトラフィックの不均衡な割合を吸収してスロットルすることです。見つけ方と、設計で回避する方法を解説します。
中級読了 8 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB 上の PartiQL と SQL — PartiQL とは何か、何ができないか、そして DynoTable Workbench が DynamoDB のルール内で JOIN、GROUP BY、集約をどう走らせるか。

7 件中 0 件読了クイズ
DynamoDB PartiQL vs SQL: 何が壊れるのか
DynamoDB の PartiQL は SQL に似ていますが、JOIN もGROUP BY もサブクエリも集計もありません。すべての文はネイティブの 1 操作に対応します。何が壊れるのかを解説します。
初級読了 8 分
例で学ぶ DynamoDB の PartiQL
例で学ぶ DynamoDB の PartiQL — SQL に似た構文での SELECT、INSERT、UPDATE、DELETE と、パーティションキーやテーブル全体のスキャンにまつわる落とし穴を解説します。
初級読了 5 分
DynamoDB のための SQL と PartiQL の限界
DynamoDB を SQL でクエリできる? PartiQL はキーによる SELECT・INSERT・UPDATE・DELETE を扱いますが、JOIN も GROUP BY も COUNT(*) もありません。何ができるのかを解説します。
初級読了 8 分
DynamoDB の JOIN: テーブルを結合する方法
DynamoDB に JOIN はなく、PartiQL もそれを追加しません。その理由、開発者が使う4つの回避策、そして DynoTable の SQL Workbench が本物の JOIN を実行する仕組み。
中級読了 10 分
DynamoDB GROUP BY:GROUP BY 句なしで集計する方法
DynamoDB と PartiQL には GROUP BY も COUNT も SUM もありません。それを置き換えるパターン — アトミックカウンター、Streams + Lambda のロールアップ、アプリ側でのグルーピング。
中級読了 9 分
DynamoDB で COUNT、SUM、集計を行う方法
DynamoDB で COUNT、SUM、集計を行う方法 — Select=COUNT のコスト、ネイティブの SUM や AVG がない理由、そして本当の合計を得るためのパターン。
初級読了 8 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB のツール — DynamoDB Local、LocalStack、最良の GUI クライアント、データの閲覧と編集、テーブルのコピー、CSV エクスポートと MCP サーバー。

14 件中 0 件読了
Docker で DynamoDB Local を動かす完全ガイド
Docker で DynamoDB Local を動かしてオフライン開発とテストを行う — コンテナを起動し、SDK をローカルエンドポイントに向け、テーブルを作成する。
初級読了 5 分
DynamoDB LocalとLocalStackへの接続方法
GUIをDynamoDB LocalとLocalStackに接続する方法 — エンドポイント、ダミー認証情報、よくあるエラー。DynoTableでローカルテーブルをビジュアルに参照・クエリしましょう。
中級読了 7 分
2026 年おすすめの DynamoDB GUI クライアント
2026 年の DynamoDB GUI クライアントを実際に試して比較 — NoSQL Workbench、Dynobase、Dynomate、DbVisualizer、DocKit、dynamodb-admin、DynoTable — 日付入りで検証済みの価格とともに。
初級読了 14 分
2026年に読む価値のあるDynamoDB本
2026年にお金を払う価値のあるDynamoDB本は2冊。それぞれの価格と、刊行時期の都合で各書がカバーできていないDynamoDB機能を正確に示します。
初級読了 6 分
DynamoDB のデータを表示、閲覧、編集する方法
DynamoDB のデータを閲覧・フィルタ・編集する方法と、それぞれの操作が実行する API 操作 — Scan、Query、GetItem、PutItem、UpdateItem、DeleteItem。
初級読了 7 分
DynamoDBテーブルを別のアカウントやリージョンにコピーする方法
DynamoDBテーブルを別のアカウントやリージョンにコピーする — データをエクスポートし、scan+write、S3エクスポート/インポート、AWS Backup、グローバルテーブルでリストアする。
初級読了 8 分
DynamoDBテーブルをCSVにエクスポートする方法(4つの方法)
DynamoDBテーブルをCSVにエクスポートする方法 — DynoTableのフィルタ付きワンクリックエクスポート、jqを使ったAWS CLIのスキャン、マネージドなS3エクスポート、またはスクリプト。
初級読了 12 分
DynamoDBテーブルからTypeScriptの型を生成する方法
DynamoDBはアイテムのスキーマを保存しないため、DescribeTableは型を返せません。interfaceを手書きするか、スキーマファーストのライブラリを使うか、実データから推論しましょう。
中級読了 6 分
AIでDynamoDBをクエリする方法(自然言語)
DynamoDBを自然な言葉でクエリする方法。APIに自然言語のエンドポイントはないため、LLMが下書きするPartiQL、MCPエージェント、スキーマを理解するツールを比較します。
初級読了 6 分
DynamoDB MCP サーバー: Claude Code、Cursor、Codex
AI エージェントに MCP 経由で DynamoDB テーブルへのライブアクセスを与える — Claude Code、Cursor、Codex それぞれの選択肢と、AWS キーを渡さずに済ませる方法。
中級読了 7 分
Claude Code 向けの DynamoDB MCP
Claude Code を MCP 経由で DynamoDB に接続する — 正確な `claude mcp add` コマンド、どのスコープで登録すべきか、そして AWS キーをエージェントに渡さずに済ませる方法。
中級読了 8 分
Cursor 向けの DynamoDB MCP
Cursor を MCP 経由で DynamoDB に接続する — `.cursor/mcp.json` の設定、プロジェクトとグローバルのスコープ、サーバーの有効化、そして AWS キーをリポジトリに置かない方法。
中級読了 7 分
Codex 向けの DynamoDB MCP
OpenAI Codex を MCP 経由で DynamoDB に接続する — `~/.codex/config.toml` のエントリ、`mcp_servers` という snake_case の落とし穴、トランスポートの選択、そして起動タイムアウト。
中級読了 6 分
ExtendDB: 自分のデータベースで DynamoDB API を動かす
ExtendDB は、PostgreSQL など自分で運用するデータベースから DynamoDB API を提供する、AWS のオープンソースなアダプターです。手持ちの AWS SDK はそのまま動きます。
中級読了 7 分

DynamoDB の運用とコスト — トランザクション、Streams、TTL、オンデマンド対プロビジョンドキャパシティ、グローバルテーブルとバックアップ/PITR。1 つの稼働中 SaaS で教える。

11 件中 0 件読了クイズ
DynamoDB のコストモデル: なぜ SQL は請求を見えなくするのか
DynamoDB 上の SQL がなぜ請求を見えなくするのか — JOIN、任意の WHERE フィルター、集計がどのように Scan にコンパイルされるか、そして Query と Scan の背後にある RCU の計算。
中級読了 4 分
DynamoDB Transactions 完全ガイド(例付き)
TransactWriteItemsによるDynamoDBトランザクション — 最大100アクションのall-or-nothing、4 MBの制限、2倍の書き込みキャパシティ、そして競合時のキャンセル。
上級読了 6 分
DynamoDB Streams 完全ガイド(例付き)
DynamoDB Streams — 24時間の変更データキャプチャログ、4つの StreamViewType オプション、アイテムごとに順序付けられたレコード、そしてアイテムの変更で Lambda をトリガーする方法。
上級読了 6 分
DynamoDB TTL 完全ガイド:アイテムの有効期限
DynamoDB TTL は、Unix エポックのタイムスタンプ属性が過ぎるとアイテムを自動削除します。通常は数日以内で、その削除に書き込みキャパシティはかかりません。
中級読了 4 分
DynamoDB オンデマンド vs プロビジョンドキャパシティ
DynamoDB のオンデマンドとプロビジョンドキャパシティ — リクエスト課金と予約スループット、それぞれが安くなる条件、そしてトラフィックの形がモードを決める仕方。
中級読了 6 分
DynamoDB Auto Scaling (オートスケーリング) の設定方法
プロビジョンドキャパシティで DynamoDB のオートスケーリングを設定する — コンソールと CLI の手順、ターゲット使用率と最小/最大の選び方、そしてなおスロットリングを招く制約。
中級読了 8 分
DynamoDB のスロットリング — なぜ起きるのか、どう直すのか
DynamoDB がスロットリングする理由 — 文書化された4つの原因、パーティションあたり毎秒3,000読み取り/1,000書き込みユニットの上限、そして原因ごとの対処。
中級読了 8 分
DynamoDBテーブルのサイズとアイテム数を取得する方法
DynamoDBテーブルのサイズとアイテム数を取得する — 最大6時間遅れるDescribeTableの無料の推定値か、Scan Select COUNTによる正確なカウント。
初級読了 5 分
DynamoDB Global Tables:マルチリージョンレプリケーション解説
DynamoDB グローバルテーブル — マルチリージョンのアクティブ-アクティブレプリケーション、last-writer-wins による競合解決、MREC と MRSC の整合性モード、そして 99.999% の SLA。
上級読了 6 分
DynamoDB のバックアップと Point-in-Time Recovery 完全ガイド
DynamoDBのバックアップとポイントインタイムリカバリ — オンデマンドのスナップショットと継続的なPITR、1〜35日のウィンドウ、そしてリストアでは戻ってこない設定。
中級読了 7 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

DynamoDB の内部 — パーティションキー、アダプティブキャパシティ、GSI ストレージ、物理パーティションとリクエストルーティングがどう動くか。Dynamo 論文まで辿る。

8 件中 0 件読了クイズ
DynamoDB のパーティションキーの仕組み
DynamoDB のパーティションキーの仕組み — キーを物理パーティションへ対応づけるハッシュ、なぜキー選びがスループットを決めるのか、そしてホットパーティションをどう避けるか。
中級読了 7 分
DynamoDB のアダプティブキャパシティ:できることとできないこと
DynamoDBのアダプティブキャパシティーとバーストキャパシティー — スパイクを吸収しホットパーティションを自動でブーストする仕組みと、どちらでも超えられないパーティションの上限。
上級読了 6 分
DynamoDB の GSI は内部的にどう保存されるか
DynamoDB の GSI がどう保存されるか — 独自のパーティション空間、ベーステーブルからの非同期レプリケーション、射影された属性だけ、そして分離されたキャパシティ。
上級読了 8 分
DynamoDB の物理パーティション
DynamoDB の物理パーティションの仕組み — 10 GB、3000 RCU、1000 WCU の上限、パーティションの分割方法、そしてキャパシティに余裕があるのにホットキーがスロットリングする理由。
上級読了 7 分
DynamoDB のストレージ内部の仕組み
DynamoDB のストレージ内部の仕組み — パーティションのハッシュ化、ソートキー範囲のためのパーティションごとの B-tree、そして3つの AZ にまたがるクォーラムレプリケーションを解説。
上級読了 7 分
DynamoDB のリクエストルーティングの仕組み
DynamoDB のリクエストルーティングの仕組み — リクエストルーターがパーティションキーをハッシュ化して適切なストレージノードを見つけ、それがキーごとのレイテンシーをなぜ解決するのか。
上級読了 7 分
Dynamo論文からDynamoDBへ
2007年のAmazon Dynamo論文からDynamoDBへ — オリジナルの一貫性ハッシュとクォーラム設計が何を導入し、AWSが何を残して何をひそかに置き換えたか。
上級読了 6 分
理解度チェッククイズに挑戦
このセクションで学んだ内容を確認しましょう。

その他の DynamoDB リソース

実践してみる準備はできましたか?

自分の DynamoDB テーブルを閲覧・クエリ・モデリング — DynoTable の SQL Workbench と AI エージェントはあなたの AWS 上で動作。30日間無料トライアル、クレジットカード不要 — その後は期限のない Free プラン。