その他のデータベースサービス
AWSにはRDS・Aurora・DynamoDB以外にも、分析用のデータウェアハウス、高速キャッシュ、グラフDBなど用途に特化したデータベースサービスが揃っています。「どの用途にどのDBを使うか」を理解することがCP試験合格のポイントです。
概要
「万能なデータベース」は存在しません。AWSでは用途・データ量・アクセスパターンに応じた専用サービスを使い分けることで、パフォーマンスとコストを最適化できます。このページでは、試験に出題される代表的なデータベースサービスをまとめます。
CP試験で押さえるポイント
- Amazon Redshift はデータウェアハウス(分析・BI用途)。「分析」「大量データ集計」「OLAP」と来たらRedshift
- OLTPとOLAPの違いを初学者向けに理解する:日常業務の処理か、大量データの分析かで区別する
- Amazon ElastiCache はインメモリキャッシュ。DBへのクエリ結果などをメモリに保持して高速応答を実現
- ElastiCacheはRedisとMemcachedの2エンジンをサポート
- Neptune(グラフ)・DocumentDB(ドキュメント)・QLDB(台帳)は名前と用途の対応を覚える
- 「どの用途にどのDB?」という対応表を頭に入れておくことが合格への近道
Amazon Redshift(データウェアハウス)
RedshiftはAWSが提供するフルマネージドのデータウェアハウスサービスです。ペタバイト規模のデータを高速に分析できます。
OLTPとOLAPの違い(初学者向け解説)
データベースの用途は大きく2種類に分けられます。この違いを理解すると、どのサービスを使うべきかが見えてきます。
| 用語 | 正式名称 | イメージ | 処理の特徴 | 代表サービス |
|---|---|---|---|---|
| OLTP | Online Transaction Processing | ECサイトの注文処理・銀行の振り込み | 少量データを高速に読み書き。毎秒何千件もの小さな取引を処理 | RDS・Aurora・DynamoDB |
| OLAP | Online Analytical Processing | 「先月の全商品の売上を集計してグラフ化」 | 大量データを集計・分析。数億件のデータに対して複雑な集計クエリを実行 | Amazon Redshift |
たとえば「ECサイトで注文を受け付ける処理」はOLTP(RDS等)、「先月の売上データをBI(ビジネスインテリジェンス)ツールで分析する処理」はOLAP(Redshift)です。
- 列指向ストレージ: Redshiftは列単位でデータを格納するため、集計クエリが非常に高速
- S3との連携: S3のデータをRedshiftにロードして分析することが多い
- Amazon QuickSightとの連携: BIツールのQuickSightと組み合わせてダッシュボードを作成できる
Amazon ElastiCache(インメモリキャッシュ)
ElastiCacheはデータをメモリ(RAM)に保持するインメモリキャッシュサービスです。データベースへの繰り返しクエリ結果や、セッションデータなどをキャッシュすることで、アプリケーションの応答速度を大幅に向上させます。
- Redis: 永続化・レプリケーション・クラスタリングをサポート。ランキング・セッション管理・リアルタイム分析など高度な機能が必要な場合に選択
- Memcached: シンプルな分散キャッシュ。水平スケーリングが容易で、シンプルなキャッシュ用途に向いている
ElastiCacheはデータベースへの負荷軽減に有効です。よく「読み取りが多いワークロードのDB負荷軽減→ElastiCache」というシナリオで試験に出ます。
その他のデータベースサービス(名前と用途)
| サービス名 | データモデル | 主な用途 |
|---|---|---|
| Amazon Neptune | グラフDB | SNSのフレンド関係・不正検知・ナレッジグラフなど「関係性」を扱うデータの分析 |
| Amazon DocumentDB | ドキュメントDB(MongoDB互換) | JSON形式のドキュメントを扱うアプリケーション。MongoDBの移行先 |
| Amazon QLDB | 台帳DB(Ledger) | 変更履歴の改ざんができない台帳データ。金融取引履歴・サプライチェーン管理 |
関連サービスとの違い・使い分け
「どの用途にどのAWSデータベースサービスを使うか」の対応表です。CP試験ではシナリオを与えられ、最適なサービスを選ぶ問題が出題されます。
| 用途・シナリオ | 最適なAWSサービス |
|---|---|
| ECサイトの注文管理・SQLを使うトランザクション処理(OLTP) | Amazon RDS / Aurora |
| スキーマ不定・大規模トラフィック・サーバーレスNoSQL | Amazon DynamoDB |
| 大量データの集計・BI分析・データウェアハウス(OLAP) | Amazon Redshift |
| DBクエリ結果のキャッシュ・セッション管理・読み取り負荷軽減 | Amazon ElastiCache(Redis / Memcached) |
| SNS等のフレンド関係・ネットワーク状のデータ(関係性分析) | Amazon Neptune |
| JSON形式のドキュメント管理・MongoDB互換 | Amazon DocumentDB |
| 改ざん不可能な取引履歴・台帳管理 | Amazon QLDB |
確認問題
付録:公式ドキュメント・Black Belt 動画
さらに深く学びたい方は、AWS公式の以下のリソースを参照してください(いずれも外部サイトが開きます)。