ラボの概要
AnyCompany は新しい映画データベースのアプリケーションを開発しています。このアプリケーションでは、タイトル、リリースされた年、映画に出演している俳優、評価などに基づき、ユーザーは映画を検索できます。AnyCompany はアプリケーションが参照するすべての映画に関する情報を保存するデータベースサービスとして、Amazon DynamoDB を選択しました。
Amazon DynamoDB はサーバーレス NoSQL です。キー値およびドキュメントデータモデルをサポートする非リレーショナルデータベースとしても知られています。DynamoDB を使用すると、ペタバイトのデータ、毎秒数千万件の読み取り/書き込みリクエストをサポートできるため、小規模に始めて、アプリケーションやユーザーベースの拡大に合わせて迅速かつグローバルに拡張できます。AWS が DynamoDB サービスを管理するため、更新または保守が必要なサーバーはありません。詳細については、その他のリソースセクションの Amazon DynamoDB の特徴と Amazon DynamoDB のコアコンポーネントを参照してください。
AnyCompany に新しく採用された新米アプリケーションデベロッパーであるあなたは、新しい映画がデータベースに追加または削除されたときに顧客に通知を行う、イベントに基づくワークフローの開発を担当しています。さらに、AnyCompany では有効期限が切れたデータベース項目を S3 に記録して、長期的に保存したいと考えています。これらを実現するため、Amazon DynamoDB ストリーム、Amazon DynamoDB 有効期限 (TTL)、AWS Lambda を組み合わせたソリューションを選択しました。
取り上げるトピック
このラボを修了すると、次のことができるようになります。
- AWS CLI とシェル変数を使用して DynamoDB ストリームを有効にする
- AWS SDK for Python (Boto3) で構築された Lambda 関数を DynamoDB ストリームに接続する
- DynamoDB テーブルにおいて項目の追加、変更、削除が行われるたびに、ユーザーに E メールで通知する
- テーブル項目の有効期間 (TTL) 属性を有効にして、DynamoDB 項目の削除を自動化する
- ワークフローを作成して、有効期限切れの DynamoDB 項目を Amazon S3 の長期的なストレージに移動する
技術知識の前提条件
このラボを完了するには、Linux コンソールの操作、NoSQL データベースの概念、基本的な bash スクリプトに関する知識が必要です。また、テキストエディターを使用してファイルを問題なく編集できる必要があります。
アイコンキー
このラボでは、ガイドの特定部分への注意を促すため、さまざまなアイコンが使用されています。以下のリストは、各アイコンの目的を説明したものです。
- キーボードのアイコンは、コマンドを実行する必要があることを示します。
- クリップボードのアイコンは、提示されている例と比較して、コマンドや編集したファイルの出力を検証できることを示します。
- ノートのアイコンは、重要なヒント、コツ、ガイダンス、アドバイスを示します。
- 丸印の中の “i” のアイコンは、詳細情報が記載されている場所を示します。
- チェックマーク付きの人のアイコンは、知識の確認と学習した内容のテストができることを示します。