本文へスキップ
← 記事一覧に戻る

AWSのDB

AWSで使用できるDBについて

  1. RDB
  2. NoSQLデータベース
  3. インメモリデータベース
  4. データウェアハウス

リレーショナルデータベース (RDB)

複雑な表計算のようなデータの結びつき(リレーション)や、厳密なトランザクション処理が必要な場合に使用します。

Amazon RDS (Relational Database Service)

  • 特徴: 構築からバックアップ、パッチ適用などをAWSが代行してくれるフルマネージド型のRDBサービスです。
  • 対応エンジン: MySQL、PostgreSQL、Oracle、SQL Server、MariaDB、そして後述のAuroraから選択できます。
  • 用途: 一般的なWebアプリケーションのバックエンドや、オンプレミス環境にある既存のRDBの移行先。

Amazon Aurora

  • 特徴: AWSがクラウドのために独自設計した、高性能かつ高可用性なRDBです。RDSのエンジンの一つという位置づけですが、試験では独立してよく問われます。
  • ポイント: 商用データベース(Oracleなど)と同等の性能を、オープンソース(MySQL、PostgreSQL互換)のコスト(約10分の1)で実現できるのが最大の強みです。

NoSQLデータベース

決まった枠組み(スキーマ)を持たず、大量のデータを高速かつ無限に拡張しながら処理したい場合に使用します。

Amazon DynamoDB

  • 特徴: サーバーレスで提供されるフルマネージド型のNoSQLデータベース(キーバリュー型/ドキュメント型)です。

  • ポイント: どんなにデータ量が増えても1桁ミリ秒単位の超低遅延で応答し、自動でスケール(拡張)します。

  • 用途: モバイルアプリ、ゲームのユーザーデータ、IoTデバイスからのデータ収集、ショッピングカートのセッション管理など。

インメモリデータベース

ミリ秒未満(マイクロ秒単位)の超高速な応答速度が求められる場合や、メインのデータベースの負荷を軽減するために使用します。

Amazon ElastiCache

  • 特徴: メモリ上でデータを処理するインメモリデータストアサービスです。
  • 対応エンジン: Redis、Memcached。
  • 用途: RDSやDynamoDBへの頻繁な読み込み結果を「キャッシュ(一時保存)」して、アプリケーションの表示速度を劇的に向上させます。

データウェアハウス (分析用データベース)

企業に蓄積された膨大なデータを集約し、BIツールなどで複雑な分析を行うために特化したデータベースです。

Amazon Redshift

  • 特徴: ペタバイトスケールのフルマネージド型データウェアハウスです。
  • ポイント: RDSが「日常的なデータの記録・更新(OLTP)」を得意とするのに対し、Redshiftは「過去の大量データの集計・分析(OLAP)」を得意とします。

その他の特殊なデータベース

  • Amazon Neptune: グラフデータベース(SNSの人間関係のつながりや、レコメンデーションエンジンに最適)。
  • Amazon DocumentDB: MongoDB互換のドキュメントデータベース。
  • Amazon QLDB: 台帳データベース(データの変更履歴を暗号化して「改ざんされていないこと」を証明・検証できる)。