Amazon DocumentDB のアイコン

Amazon DocumentDB

MongoDB 互換の高速・高可用性フルマネージドドキュメントデータベースサービス

何ができるか

Amazon DocumentDB は、MongoDB と互換性のあるフルマネージドドキュメントデータベースサービスです。JSON 形式のドキュメントデータを柔軟に格納・検索でき、スキーマの事前定義が不要なため、アプリケーションの要件変化に素早く対応できます。ストレージは最大 128TB まで自動拡張され、3 つのアベイラビリティゾーンにわたって 6 つのデータコピーを保持することで高い耐久性を実現しています。

どのような場面で使うか

コンテンツ管理システム (CMS) のバックエンド、ユーザープロファイルやセッション情報の管理、カタログデータの格納と検索、モバイルアプリケーションのデータストア、リアルタイム分析用のデータ蓄積など、柔軟なスキーマが求められるワークロード全般で活用されています。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

身近な例え

書類整理に例えるとわかりやすいでしょう。従来のリレーショナルデータベースは、あらかじめ決められた書式の書類棚に情報を整理するようなものです。DocumentDB は、付箋やメモを自由な形式でファイリングできるバインダーのようなもので、情報の形が変わっても柔軟に対応できます。しかも、そのバインダーは自動的にコピーが作られ、万が一の紛失にも備えられています。

DocumentDB とは

Amazon DocumentDB は、MongoDB のワークロードをクラウド上で実行するために設計されたフルマネージドデータベースサービスです。MongoDB 3.6、4.0、5.0 の API と互換性があり、既存の MongoDB アプリケーションやドライバーをほぼそのまま利用できます。AWS が独自に開発した分散ストレージエンジンを採用しており、従来の MongoDB では難しかった大規模なスケーリングと高可用性を実現しています。

ストレージとスケーリング

DocumentDB のストレージは、データ量に応じて 10GB 単位で自動的に拡張され、最大 128TB まで対応します。データは 3 つのアベイラビリティゾーンにまたがって 6 つのコピーが保持されるため、ディスク障害やアベイラビリティゾーン障害が発生しても自動的に復旧します。リードレプリカを最大 15 台まで追加でき、読み取り負荷の分散が容易です。書き込みスループットもインスタンスサイズの変更で柔軟にスケールアップできます。

セキュリティと運用

DocumentDB は、保存時の暗号化 (AWS KMS)、転送中の暗号化 (TLS)、VPC 内での実行による ネットワーク分離など、多層的なセキュリティ機能を備えています。自動バックアップは最大 35 日間保持され、任意の時点への復元 (ポイントインタイムリカバリ) が可能です。パッチ適用やバックアップなどの運用タスクは AWS が自動で行うため、データベース管理者の負担を大幅に軽減できます。CloudWatch との統合により、パフォーマンスメトリクスの監視やアラート設定も容易です。

Azure・オンプレミスとの比較

Azure の対応サービス Azure Cosmos DB (MongoDB API)
オンプレミスでの対応手段 MongoDB Community Edition

AWS の優位点

  • 3 つのアベイラビリティゾーンに 6 つのデータコピーを自動保持し、手動でのレプリケーション設定なしに高い耐久性と可用性を実現できる
  • ストレージが最大 128TB まで自動拡張されるため、容量計画やディスク管理の運用負荷から解放される
  • MongoDB 互換 API を提供しているため、既存の MongoDB アプリケーションやツールチェーンをほぼそのまま移行でき、学習コストを最小限に抑えられる

注意点

  • MongoDB との完全な互換性ではなく、一部サポートされていない機能 (サーバーサイド JavaScript 実行など) があるため、移行前に互換性を確認すること
  • インスタンスベースの課金体系のため、DynamoDB のようなリクエスト単位の従量課金とは異なり、常時稼働コストが発生する点に注意

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。