初心者のための AWS DynamoDB

DynamoDB テーブル、顧客と日付によるクエリ、ステータスインデックスを使い、小さな注文データ処理を構築します。重複書き込みを防ぎ、有効期限のあるレコードを扱い、最近の注文を見落とす検索を修復します。

AWS

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

DynamoDB テーブル、顧客と日付によるクエリ、ステータスインデックスを使い、小さな注文データ処理を構築します。重複書き込みを防ぎ、有効期限のあるレコードを扱い、最近の注文を見落とす検索を修復します。

5 つのガイド付きラボと、クエリを修復する 1 つの自主課題で構成されています。各テーマは具体的なアクセスパターンから始まり、結果のレコードを確認します。

学習する内容

  • テーブルを作成し、型付きアイテムの読み取り、書き込み、更新、削除を行う
  • パーティションキーとソートキーで注文を検索する
  • 注文ステータスのグローバルセカンダリインデックスを追加する
  • 条件付き書き込みで重複注文を防ぐ
  • TTL を設定し、アプリケーションの読み取りから期限切れレコードを除外する
  • 顧客データを混在させずに、顧客、日付範囲、ページネーションの処理を修復する

このコースの対象者

リレーショナル SQL を先に学ばず、キーに基づくデータアクセスを習得したい AWS 初学者とアプリケーション開発者が対象です。

前提知識: Get Started with AWS on LabEx と、CLI コマンド、呼び出し元の ID、リソース名、出力のクエリを扱う AWS Foundations のラボを完了してください。

学習環境: すべての演習は、ブラウザーから利用できる LabEx の Linux 環境で行います。AWS CLI のコマンドには Terminal を使い、その隣の AWS View で同じリソースとアプリケーションの状態を確認します。ツールと接続は準備済みで、個人の AWS アカウントやアクセスキーは不要です。各ラボは新しい VM で独立して開始します。

よくある質問

キーとインデックスはどう選べばよいですか?

最初に読み取り要件を設計します。日付範囲で特定の顧客の注文を検索するのは、キーに基づくアクセスパターンです。S3 はオブジェクトを保存し、リレーショナルデータベースは結合や異なるクエリパターンに適しています。複雑な単一テーブル設計は扱いません。

どのキャパシティモードを使いますか?

ラボではオンデマンドキャパシティを使い、読み取り・書き込みキャパシティユニットを選ばずにテーブルを作成します。プロビジョンドキャパシティではリクエストレートの計画が必要です。キャパシティ計画、料金、負荷テストは演習の範囲外です。AWS のキャパシティガイドを参照してください。

すべての読み取りは直前の書き込みをすぐに反映しますか?

ベーステーブルの強い整合性のある読み取りは、その読み取りより前に成功した書き込みを反映します。結果整合性のある読み取りには遅延があり、グローバルセカンダリインデックスは結果整合性をサポートします。更新を観察するときは再度読み取ってください。読み取りはその後の変更を防ぎません。AWS の読み取り整合性も参照してください。

TTL は期限切れレコードをすぐに削除しますか?

いいえ。削除は非同期のため、アプリケーションはまだ読み取れる期限切れレコードを除外する必要があります。 AWS TTL.

自主課題の前に何を終えるべきですか?

先にテーブル、クエリ、インデックスのガイド付きラボを完了してください。Global Tables、DAX、Streams、複雑なトランザクションは範囲外です。無関係な参照データを保持しながら、自分のリソースをクリーンアップします。

講師

labby
Labby
Labby is the LabEx teacher.