PR

AWS認定試験に出るDynamoDB要点まとめ

DynamoDB出るとこまとめ DynamoDB
記事内に広告が含まれています。

「DynamoDBの要点をAWS認定試験に出題されるところだけ知りたい」

そんな方に向けて、この記事では「DynamoDB要点まとめ」について解説していきます。
この記事を読めば、AWS認定試験に合格するために必要な要点だけ知ることができます。

是非、参考にしてください!

筆者の経歴

・AWS未経験の状態で、AWS資格を全て取得
・AWS資格を使って、AWSを使う仕事に就く
・2024 All Certifications Engineersに選出

データベース

DynamoDBが出題されるAWS認定試験

DynamoDBが出題されるAWS認定試験は、以下の通りです。

・基礎レベル
 CLF、AIF
・アソシエイトレベル
 SOA、DVA、SAA、DEA、MLA
・プロフェッショナル、スペシャリティレベル
 SAP、DOP

DynamoDBはほとんどのAWS認定試験で出題されます。
要点をしっかり勉強することで、様々なAWS認定試験に対応することができます。

DynamoDB初級(基礎レベル)

ここでは、AWS認定試験の基礎レベル合格に必要な要点を紹介していきます。

・DynamoDBの概要
・RDSとの違い
・DynamoDBが活用されるユースケース

DynamoDBの概要

DynamoDBとは、AWSが提供する完全マネージド型のNoSQLデータベースサービスです。
DynamoDBを使うことで、スケーラブルで低レイテンシーのアクセスが可能になります。

NoSQL

従来のリレーショナルデータベースとは異なるアプローチでデータを保存・管理するデータベースの総称

スケーラブル

システムやアプリケーションのアクセスに応じて、DynamoDBの性能や容量を効率的に拡張または縮小できる

レイテンシー

システムやネットワークがリクエストを受け取ってから、その応答を返すまでにかかる時間
「応答時間」や「待ち時間」のこと

DynamoDBとRDSとの違い

DynamoDBとRDSはどちらもAWSの代表的なデータベースサービスです。
そこで、2つの違いを押さえて試験で混乱することを防ぎましょう。

項目DynamoDBRDS
特徴NoSQLSQL
スケーリング水平スケーリング垂直スケーリング
データモデルキーバリュー形式テーブル形式
ユースケース高速検索、大規模データ分析トランザクション重視

関連記事

DynamoDBが活用されるユースケース

DynamoDBが活用されるユースケースには以下のようなものがあります。

・リアルタイムアプリケーション
 DynamoDBの低レイテンシーと高スループットにより、リアルタイム処理を実現
・IoTデータストレージ
 大量のデータを分析するときにDynamoDBが有効

DynamoDBの特徴をしっかり理解できていれば、どんなケースに向いているかが分かります。

DynamoDB中級(アソシエイトレベル)

ここからは、アソシエイトレベルのAWS認定試験に必要な知識について紹介していきます。

クエリとスキャン

DynamoDBでデータを取得する手法として、クエリとスキャンがあります。

クエリ

プライマリーキーを指定して、テーブルまたはインデックスからデータを取得する方法です。
条件に一致する項目のみを取得するため、効率的で高速なデータ取得ができます。

スキャン

テーブル全体のデータを取得するときに使用する方法です。
全件を順番にチェックするため、クエリよりも遅いです。

プライマリーキー

プライマリーキーとは、テーブル内のデータを一意に識別するキーのことです。
DynamoDBでは、プライマリーキーの値を基に、データを内部的に分散させて保存(パーティショニング)しています。

プライマリーキーには2種類あります。

・パーティションキー
・パーティションキー+ソートキー

関連記事

GSIとLSI

DynamoDBでデータを取得するときに、プライマリーキーを使用する代わりにGSIとLSIを使うことができます。

GSI(グローバルセカンダリインデックス)

テーブルに設定されているプライマリーキーとは別に、キーをクエリの対象にできます。
GSIを用いることで、柔軟なパーティションキー・ソートキーの定義が可能になります。

LSI(ローカルセカンダリインデックス)

LSIを使うことで、同じパーティションキーを使いつつ、別のソートキーを指定することができます。
テーブル作成時のみ作成可能。

関連記事

キャパシティーモード

Amazon DynamoDBでは、テーブルのキャパシティーモードとして以下の2つを選択できます。

・オンデマンドキャパシティーモード
 DynamoDBが必要に応じてキャパシティを自動的にスケール
 トラフィックが予測できない、または不規則なワークロードに最適

・プロビジョンドキャパシティーモード
 読み取り・書き込みのキャパシティ(スループット)を事前に設定
 ラフィックが予測可能なワークロードで、長期間の運用に最適

整合性

DynamoDBでは、データの整合性に関する設定が非常に重要です。
特に、データの読み取り時に整合性をどう扱うかは、アプリケーションの要件やパフォーマンスに大きな影響を与えます。

DynamoDBは2種類の読み取り整合性をサポートしています。

・強い整合性
 データの最新状態を必ず取得
 読み取りリクエストは、すべての書き込みが完了した後のデータを返す
 結果整合性よりコストが高い

・結果整合性
 DynamoDBのデフォルト設定
 書き込み後すぐにデータを読み取る場合、古いデータが返される場合がある

セキュリテイ

DynamoDBにおけるセキュリティは以下のようなものがあります。

・IAMポリシー
 ユーザーが特定のテーブルや属性にのみアクセスできるように制御できる
・サーバーの暗号化
 AWS KMSを使って、テーブルの暗号化ができる
・通信中の暗号化
 HTTPSを用いて、通信を暗号化できる

DynamoDB上級(プロフェッショナル、スペシャリティレベル)

ここからは、AWS認定試験の上級試験に合格するために必要なDynamoDBの要点を紹介していきます。

DynamoDB Streams

DynamoDB Streamsとは、DynamoDBテーブルにおけるデータ変更を検知し、他のAWSサービスを動作させる機能です。

Lambdaのトリガーとして、設定されることが多いです。

例:
1. アイテムのユーザー名を変える
2. DynamoDB Streamsが検知して、Lambdaを動かす
3. Lambdaでアイテムの最終更新時間を変更する処理を実施

DAX(Amazon DynamoDB Accelerator)

・DynamoDBの読み取り要求を高速化し、レイテンシーを大幅に削減する機能
・数ミリ秒の読み込みが求められる際に、DAXが有効

TTL(Time To Live)

・DynamoDBでデータの有効期限を設定するための機能
・TTLで指定した時間が経過すると、特定のアイテムが自動的に削除される

関連記事

バックアップ

DynamoDBにおけるバックアップ方法は以下の3つあります。

・オンデマンドバックアップ
 手動でデータベースのスナップショットを作成する機能
 定期的なデータのバックアップを取りたい場合に有効

・ポイントタイムリカバリ
 指定した時点にテーブルを復元するための機能
 誤ったデータ更新や削除が発生した場合、直前のデータ状態に簡単に復元したい場合に有効

・S3データエクスポート
 DynamoDBテーブルのデータをAmazon S3にエクスポートする機能
 データの一括移行を行いたい場合に有効

グローバルテーブル

・DynamoDBのデータを複数のAWSリージョン間でデータを自動的に保持する機能
・大規模なサービスやアプリケーションに対して有効

さいごに

今回はAWS認定試験で出題されるDynamoDBの要点についてまとめました。
是非、この記事で紹介した知識を役立ててAWS認定試験の合格を目指してください!

ご精読ありがとうございました!

コメント

タイトルとURLをコピーしました