はじめに
AWS には、ひとつの NoSQL サービスですべての用途をまかなうのではなく、データの形や使い方に応じて選べる複数のフルマネージドなデータベースがあります。Cloud Practitioner では詳細実装よりも、「どのサービスがどんなデータモデルに向くか」を見分けられることが大切です。
まず前提として、AWS の公式ホワイトペーパーでは、NoSQL データベースの代表的な種類として、キー・バリュー型、ドキュメント指向、カラム指向、グラフ型、時系列型が整理されています。AWS ではこの考え方に沿って、用途ごとの purpose-built database を提供しています。
結論:AWS のフルマネージドな NoSQL 系データベース
| サービス | データモデル | 向いている用途 | CCP 学習優先度 |
|---|---|---|---|
| Amazon DynamoDB | キー・バリュー型 / ドキュメント型 | 大規模 Web アプリ、モバイル、セッション、IoT | 最重要 |
| Amazon DocumentDB (with MongoDB compatibility) | ドキュメント型 | MongoDB 互換 API を使いたいアプリ | 重要 |
| Amazon Neptune | グラフ型 | つながりの分析、レコメンド、不正検知 | 重要 |
| Amazon Keyspaces (for Apache Cassandra) | ワイドカラム型 | Cassandra 系ワークロード | 低め |
| Amazon Timestream for LiveAnalytics | 時系列型 | メトリクス、IoT、運用監視 | 低め |
| Amazon MemoryDB | インメモリ型 | 超低レイテンシなリアルタイム処理 | 低め |
最重要:Amazon DynamoDB
DynamoDB は、AWS を代表するフルマネージド NoSQL データベースです。公式ドキュメントでも、serverless, fully managed, distributed NoSQL database と説明されています。Cloud Practitioner で NoSQL を問われたら、まず最初に想起したいサービスです。
特徴は、シングル桁ミリ秒の低レイテンシ、大規模スケール、自動的な可用性の確保です。たとえば、ログイン中ユーザーのセッション情報、EC サイトの商品カタログ、スマホアプリのプロフィール情報など、読み書き回数が多く、構造が柔軟なデータに向いています。
試験では「リレーショナルではなく、柔軟にスケールする NoSQL が必要」「運用負荷を下げたい」「大規模アクセスに強い DB が必要」という文脈で DynamoDB を選ばせる問題を意識すると覚えやすくなります。
他のフルマネージド NoSQL 系サービス
Amazon DocumentDB
DocumentDB は、MongoDB 互換 API を持つフルマネージドなドキュメントデータベースです。JSON ライクなドキュメントを扱いやすく、既存の MongoDB 系アプリケーション資産を活かしたい場合に候補になります。
試験では、「MongoDB 互換」なら DocumentDB と結び付けると整理しやすいです。
Amazon Neptune
Neptune はフルマネージドなグラフデータベースです。人と人の関係、商品同士の関連、取引ネットワークのように、「データそのもの」より「データ同士のつながり」が重要な場面に向いています。
試験では、レコメンド、不正検知、ナレッジグラフ のような「関係性をたどる」問題文なら Neptune を連想できると強いです。
Amazon Keyspaces
Keyspaces は Apache Cassandra 互換のフルマネージドサービスです。ワイドカラム型の NoSQL に分類され、Cassandra ベースのアプリケーションや高スループットな書き込み処理に向きます。
ただし、Cloud Practitioner では最優先で暗記する対象ではありません。DynamoDB、DocumentDB、Neptune との違いをざっくり知っていれば十分です。
Amazon Timestream for LiveAnalytics
Timestream は時系列データベースです。センサー値、監視メトリクス、時刻付きログのように、時間と一緒に蓄積されるデータの保存と分析に向いています。
「一定間隔で増え続ける観測データ」「時系列集計」がキーワードなら、Timestream の出番です。
Amazon MemoryDB
MemoryDB はフルマネージドなインメモリデータベースです。非常に低いレイテンシが必要なリアルタイムアプリケーション向けで、ランキング、リアルタイムセッション、マイクロサービスの高速データ共有などに向きます。
通常の永続データベースというより、「超高速アクセスが必要なデータ」 に強いサービスとして覚えると混乱しにくくなります。
Cloud Practitioner での押さえ方
Cloud Practitioner の試験ガイドでは、データベース分野で NoSQL databases の例として Amazon DynamoDB が明記されています。また、in-scope AWS services のデータベース欄には Amazon DocumentDB、Amazon DynamoDB、Amazon Neptune が含まれています。
一方で、Amazon Keyspaces、Amazon MemoryDB for Redis OSS、Amazon Timestream for LiveAnalytics は、現行の CLF-C02 試験ガイドでは out-of-scope 側の一覧に掲載されています。つまり、AWS 全体としては知っておく価値がありますが、Cloud Practitioner の学習優先度は下げて構いません。
試験対策としての覚え方
- NoSQL の代表:DynamoDB
- MongoDB 互換:DocumentDB
- 関係性をたどる:Neptune
- Cassandra 互換:Keyspaces
- 時系列データ:Timestream
- 超低レイテンシのインメモリ:MemoryDB
ただし、Cloud Practitioner の直前復習では、まず DynamoDB を最優先、次に DocumentDB と Neptune、その後に Keyspaces・Timestream・MemoryDB を補足知識として押さえる順番が効率的です。
公式情報で確認したい URL
- https://docs.aws.amazon.com/whitepapers/latest/choosing-an-aws-nosql-database/choosing-an-aws-nosql-database.html
- https://docs.aws.amazon.com/whitepapers/latest/choosing-an-aws-nosql-database/types-of-nosql-databases.html
- https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html
- https://docs.aws.amazon.com/documentdb/latest/developerguide/what-is.html
- https://docs.aws.amazon.com/neptune/latest/userguide/intro.html
- https://aws.amazon.com/keyspaces/
- https://docs.aws.amazon.com/timestream/latest/developerguide/what-is-timestream.html
- https://docs.aws.amazon.com/memorydb/
- https://docs.aws.amazon.com/aws-certification/latest/cloud-practitioner-02/cloud-practitioner-02.html
まとめ
AWS のフルマネージドな NoSQL 系データベースは複数ありますが、Cloud Practitioner で最重要なのは DynamoDB です。そのうえで、DocumentDB はドキュメント型、Neptune はグラフ型として整理し、Keyspaces・Timestream・MemoryDB は AWS 全体の知識として位置付けると、試験対策として効率よく理解できます。
