HAQM Web Services ブログ
HAQM DocumentDB (MongoDB 互換) でのランプアップ
HAQM DocumentDB (MongoDB 互換) は、MongoDB のワークロードをサポートする高速でスケーラブル、かつ可用性に優れた完全マネージド型のドキュメントデータベースサービスです。ドキュメントデータベースである HAQM DocumentDB は、JSON データの保存、クエリ、およびインデックスを容易にします。HAQM DocumentDB には MongoDB 3.6 のドライバおよびツールとの互換性があります。現在すでに MongoDB データベースで使用しているアプリケーション、ドライバ、およびツールの多くは、変更なし、またはわずかな変更のみで HAQM DocumentDB で使用することができます。
このブログ記事では、皆さんが HAQM DocumentDB ですばやくランプアップできるように、最もよく質問されるトピックに関する簡単な概要とリソース一式を提供します。
- HAQM DocumentDB とは何ですか?
- HAQM DocumentDB の使用を開始する方法を教えてください
- HAQM DocumentDB で構築およびスケールするにはどうすればよいですか?
- HAQM DocumentDB に移行するにはどうすればよいですか?
- 誰が HAQM DocumentDB を利用していますか?
- HAQM DocumentDB の最新情報を常に把握しておくにはどうすればよいですか?
HAQM DocumentDB とは何ですか?
HAQM DocumentDB がユニークなデータベースである理由、そしてそのクラウドネイティブなアーキテクチャがストレージとコンピューティングを分離させてすばやいスケーリングを可能にする方法の詳細については、以下のリソースにアクセスしてください。
-
- HAQM DocumentDB ディープダイブ (re:Invent 2019 より)
この講演では、開発者がドキュメントモデルを選択する理由、一般的なユースケース、代替データストアを検討すべき場合の例、およびお客様が抱えるドキュメントデータベースの管理とスケーリングに関する具体的な問題を HAQM DocumentDB がどのように解決するかについての概要を私がお話しします。セッションの目玉は、Fulfillment by HAQM (FBA) がデータベースのインフラストラクチャフットプリントを前回のソリューション時の 96 インスタンスからわずか 2 つの HAQM DocumentDB インスタンスまで減らした方法です。HAQM DocumentDB への移行により、パフォーマンスが 66% 上昇し、同時に 45% のコスト削減が実現しました。FBA の例は、ジョブにとって適切なデータベースを使用したことによる結果を示しています。FBA は、HAQM DocumentDB を使用した読み取りと書き込みのスケーリング、およびインデックス戦略から学んだ、ためになる教訓も提供します。これには、1.5-TB クラスターのスナップショットバックアップを 1 分たらずで作成する、同じ 1.5-TB クラスターに新しいインスタンスを 5 分で追加する、そして HAQM Athena の新しい横串検索機能を使用して SQL インターフェイスで HAQM DocumentDB のデータをクエリする 3 つのデモも含まれています。
- HAQM DocumentDB ディープダイブ (re:Invent 2019 より)
- 特徴
フルマネージドデータベースサービスである HAQM DocumentDB は、AWS での高性能、スケーラブル、セキュア、コンプライアント、かつ可用性に優れたアプリケーションの構築を可能にする数多くの機能と特徴を提供します。 - よくある質問
最もよく尋ねられる HAQM DocumentDB のFAQ には、「MongoDB 互換」とはどういう意味ですか?、HAQM DocumentDB には SLA がありますか?、秒単位の課金の仕組みを教えてくださいなどがあります。
HAQM DocumentDB の使用を開始する方法を教えてください
HAQM DocumentDB での「hello world」の実行に興味がおありですか? 詳細については、以下のガイドとドキュメントにアクセスしてください。
-
- 使用開始ガイド
「Hello World」を一から始めるには、使用開始ガイドを使用してください。AWS マネジメントコンソール、または AWS CLI を使って HAQM DocumentDB クラスターをプロビジョニングする方法、そして mongo シェルを使って接続し、クエリする方法を学びましょう。 - AWS Cloud9 を使用した接続
開発、テスト、および管理には、AWS Cloud9 を使ってウェブブラウザから HAQM DocumentDB クラスターに接続し、アクセスするこができます。AWS Cloud9 はクラウドベースの統合開発環境 (IDE) で、ブラウザだけを使ってコードを作成、実行、およびデバッグすることを可能にします。ウェブベースのターミナルアクセス (HAQM Linux または Ubuntu) を提供するため、mongo シェル、または MongoDB SDK をインストールして HAQM DocumentDB に接続できます。
- 使用開始ガイド
- VPC 外部からの接続
HAQM DocumentDB クラスターは、HAQM Virtual Private Cloud (HAQM VPC) 内にデプロイされます。クラスターには、同じ HAQM VPC にデプロイされている HAQM EC2 インスタンス、またはその他 AWS のサービスから直接アクセスできます。また、VPC ピアリングを経由して、同じ AWS リージョン内または他のリージョン内の異なる VPC にある EC2 インスタンス、またはその他 AWS のサービスからアクセスすることもできます。
HAQM DocumentDB で構築およびスケールするにはどうすればよいですか?
HAQM DocumentDB での構築とスケーリングを開始する準備が整ったら、まず以下の主なリソースから取り掛かるとよいでしょう。
-
- ベストプラクティス
HAQM DocumentDB での作業に関するベストプラクティスを学びましょう。このセクションは、新しいベストプラクティスが明らかになるたびに随時更新されます。 - モニタリング
HAQM DocumentDB は、クラスターとインスタンス向けの HAQM CloudWatch メトリクスを提供します。AWS マネジメントコンソールを使って、コンピューティング、メモリ、クエリスループット、および有効接続数などの 20 を超える主な運用メトリクスを表示することができます。さらに、HAQM DocumentDB のプロファイラーを使用して、クラスターで実行された操作の実行時間と詳細をログに記録することもできます。プロファイラーは、個々のクエリパフォーマンスと全体的なクラスターパフォーマンスを向上できるように、クラスターで最も遅い操作をモニタリングするために役立ちます。 - 読み込みスケーリング
従来のモノリシックなデータベースアーキテクチャとは異なり、HAQM DocumentDB はストレージとコンピューティングを分離させます。この最新アーキテクチャを踏まえて、AWS ではレプリカインスタンスでの読み込みスケーリングをお勧めしています。レプリカインスタンスでの読み込みは、プライマリインスタンスからレプリケートされている書き込みをブロックしません。クラスターに最大 15 個のリードレプリカインスタンスを追加して、1 秒あたり何百万件もの読み込みにスケールアウトできます。 - バックアップと PITR 復元
HAQM DocumentDB のバックアップ機能は、クラスターのポイントインタイムリカバリを可能にします。これによって、過去 5 分まで、保持期間内の任意の時点にクラスターを復元させることができます。自動バックアップ保持期間は、最大 35 日に設定できます。自動バックアップは、99.999999999% の耐久性を持つように設計されている HAQM S3 に保存されます。HAQM DocumentDB のバックアップは自動的、増分的、継続的であり、クラスターのパフォーマンスには影響しません。 - セキュリティ
HAQM DocumentDB では、ユーザーが AWS Key Management Service (AWS KMS) を使って作成および管理するキーを使用して、データベースを暗号化することができます。 HAQM DocumentDB 暗号化を使用して実行されるクラスターでは、基礎ストレージ内の保存データに加え、同じクラスター内にある自動バックアップ、スナップショット、およびレプリカも暗号化されます。クライアントと HAQM DocumentDB 間の接続はデフォルトで、TLS を使って転送時の暗号化が行われます。 - 料金と料金見積りツール
HAQM DocumentDB の使用に先行投資は必要なく、使用するキャパシティーの料金のみを支払います。HAQM DocumentDB では、インスタンス、ストレージ、IOPS、およびバックアップストレージの 4 点に対する料金が発生します。
- ベストプラクティス
- 高可用性とレプリケーション
HAQM DocumentDB では、レプリカインスタンスを使用することによって高可用性と読み込みスケーリングを実現できます。HAQM DocumentDB クラスターとそのインスタンスの正常性は、継続的にモニタリングされます。 インスタンス障害が発生すると、HAQM DocumentDB はレプリカへのフェイルオーバーを自動化します。HAQM DocumentDB のリカバリには、時間がかかる可能性のあるデータベース redo ログの再生が必要ないため、インスタンスの再起動時間は通常 30 秒以下です。HAQM DocumentDB ではデータベースキャッシュがデータベースプロセスから分離されているため、データベースが再起動してもキャッシュがそのまま残ります。
HAQM DocumentDB に移行するにはどうすればよいですか?
多くの開発者が「Undifferentiated Heavy Lifting」(差別化につながらない重労働) とデータベースの自己管理に投資する習慣から抜け出したいと考えています。オンプレミスまたは HAQM EC2 の MongoDB データベースは、AWS Database Migration Service (DMS) を使い、実質的にダウンタイムなしで HAQM DocumentDB に無料 (インスタンスあたり 6 か月間無料) で移行します。DMS では、MongoDB レプリカセット、またはシャードクラスターから HAQM DocumentDB に移行できます。
以下にある 3 分間の動画で、AWS DMS を使って MongoDB から HAQM DocumentDB へのライブ移行を実行する方法を学んでください。この動画では、MongoDB (ソース) と HAQM DocumentDB (ターゲット) に対して実行される 2 つの同一のアプリケーションをセットアップし、ライブ移行用の DMS タスクを作成して、ソースアプリケーションに変更を行った後、ターゲットアプリケーションを使ってライブ移行を検証します。
移行を実行するには、通常 AWS DMS を使ってオンライン、ハイブリッド、またはオフラインの移行を実行します。移行の詳細については、以下にアクセスしてください。
-
- 移行ガイド
HAQM DocumentDB の移行ガイドでは、移行のために検討する必要があるすべてのフェーズ (検出、計画、テスト、フェイルオーバー) が詳しく説明されています。このガイドでは、異なるアプローチ (オンライン、ハイブリッド、オフライン)、および HAQM DocumentDB への移行に役立つ DMS といったツールも取り上げられています。 - 移行の概要 (re:Invent 2019 より)
HAQM DocumentDB のシニアスペシャリストソリューションアーキテクトである Jeff Duffy が、顧客戦略および HAQM DocumentDB への移行の際の検討事項の概要についてお話しします。セッションには、リレーショナルおよび非リレーショナルソース、移行のフェーズ (検出/計画/テスト/実行)、クラスターサイジング、および移行ツーリングについてのディスカッションが含まれます。セッションの目玉となったのは、FINRA が XML を利用して、どのようにしてリレーショナルデータベースから HAQM DocumentDB へ移行したかについての講話でした。アプリケーションから必要とされる変換レイヤーがないため、FINRA は HAQM DocumentDB によって JSON をデータベースでネイティブに使用し、よりスピーディーな移行を行えています。また、FINRA は HAQM DocumentDB がどのように SLA とセキュリティ要件の高い基準を満たしたかについても説明しています。
- 移行ガイド
- 移行チュートリアル
セルフホスト型の MongoDB から HAQM DocumentDB への AWS DMS を使った移行プロセスを詳しく説明する HAQM DocumentDB 移行チュートリアルをご利用ください。 - 移行ワークショップ: HAQM DocumentDB への MongoDB データベースの移行
このワークショップでは、異なる戦略を用いて HAQM DocumentDB に MongoDB データベースを移行する方法を練習します。
誰が HAQM DocumentDB を利用していますか?
Capital One、OnDeck、Freshop、Woot!、HAQM、およびその他多くのお客様が HAQM DocumentDB を使って AWS でのアプリケーションの構築とスケーリングを行っておられます。HAQM DocumentDB を使用するお客様に関する詳細については、以下にアクセスしてください。
-
- Fulfillment by HAQM が HAQM DocumentDB を使用する方法を学ぶ
Fulfillment by HAQM (FBA) がそのデータベースインフラストラクチャフットプリントを、以前のソリューションでの 96 インスタンスからたった 2 つの HAQM DocumentDB インスタンスにまで削減した方法を学びましょう。HAQM DocumentDB への移行により、パフォーマンスが 66% 上昇し、同時に 45% のコスト削減が実現しました。FBA の例は、ジョブにとって適切なデータベースを使用したことによる結果を示しています。FBA は、HAQM DocumentDB を使用した読み取りと書き込みのスケーリング、およびインデックス戦略から学んだ、ためになる教訓も提供します。 - FINRA が Oracle から HAQM DocumentDB に移行した方法を学ぶ
FINRA が XML を使うリレーショナルデータベースから HAQM DocumentDB に移行した方法を学びましょう。アプリケーションから必要とされる変換レイヤーがないため、FINRA は HAQM DocumentDB によって JSON をデータベースでネイティブに使用し、よりスピーディーな移行を行えています。また、FINRA は HAQM DocumentDB がどのように SLA とセキュリティ要件の高い基準を満たしたかについても説明しています。
- Fulfillment by HAQM が HAQM DocumentDB を使用する方法を学ぶ
- パブリッシングプラットフォームに AWS と HAQM DocumentDB を使用する Deutsche Fußball Liga GmbH (DFL)
「Deutsche Fußball Liga GmbH (DFL) では AWS を使ってパブリッシングプラットフォームを稼働させており、リーグから世界中の数百万人のファンに最新ニュースをお届けしています。コンテンツとユーザーベースの拡大に伴い、弊社ではリレーショナルデータベースのパフォーマンスの維持に焦点を当てました。私たちは、柔軟なスキーマ、開発者がより迅速にデプロイすることを可能にするネイティブの JSON サポートのために HAQM DocumentDB (MongoDB 互換) に移行しました。その疎結合化アーキテクチャは、読み込みスループットを数分でスケールすることができます。アプリケーションのプロトタイプは MongoDB Community Edition を使ってローカルで作成し、HAQM DocumentDB の本番環境に素早くデプロイしました。すべてが期待通りに進み、首尾よくデータベースパフォーマンスの拡大できました。」– DFL グループの DFL デジタルスポーツ CEO 兼デジタルイノベーション EVP、Andreas Heyden 氏
HAQM DocumentDB の最新情報を常に把握しておくにはどうすればよいですか?
- HAQM DocumentDB の発表、ブログ、動画
HAQM DocumentDB 最新の発表、ブログ、およびウェビナーをご覧ください。 - HAQM DocumentDB ドキュメント
AWS では、皆さんのフィードバックに基づいて、テクニカルドキュメントとベストプラクティスを絶えず更新しています。 - MongoDB API の互換性と機能的な違い
サポートされる MongoDB API と機能的な違いに関する最新のリストが掲載されています。AWS では、お客様が最も強く求めておられる機能を実現するため、常にお客様に耳を傾け、お客様から遡る形で業務を行っています。 - HAQM DocumentDB フォーラムで質問する
HAQM DocumentDB AWS フォーラムを使って学び、 知識を共有して、開発者とサービスチームのコミュニティから質問の回答を得ましょう。
著者について
Joseph Idziorek は、アマゾン ウェブ サービスのプリンシパルプロダクトマネージャーです。