MongoDB データベースからデータをストリーミングする

Datastream は、MongoDB ソースからの変更イベントのレプリケーションをサポートしています。 MongoDB は、JSON 形式のドキュメントを使用するオープンソースの NoSQL データベースです。1 つのドキュメントに他のドキュメントを埋め込むことができます。ドキュメントはコレクションにまとめられ、MongoDB データベースには 1 つ以上のドキュメント コレクションが格納されます。

リレーショナル SQL データベースのように行と列のテーブルにデータを格納するのではなく、MongoDB データベースの各レコードは、データのバイナリ表現であるバイナリ JSON(BSON)で記述されたドキュメントです。アプリケーションは、このデータを JSON 形式で取得できます。

このページには、次に関する情報が記載されています。

  • MongoDB データベースからレプリケートする際に理解しておく必要がある主な用語
  • Datastream が移行元 MongoDB データベースから pull されているデータを処理する方法の動作
  • Datastream がサポートする MongoDB のバージョンとエディション
  • MongoDB を移行元として使用する場合の既知の制限事項

主な用語

MongoDB ソースを使用する際に理解しておく必要がある主な用語は次のとおりです。

  • SRV 接続: ドメイン ネームサービス(DNS)サービス レコード(SRV)に対応するホスト名を含む接続文字列。文字列の形式は次のとおりです。

    mongodb+srv://[username:password@]host[/[defaultauthdb][?options]]

    詳細については、 MongoDB のドキュメントをご覧ください。

  • 標準接続文字列: セルフホスト型 MongoDB スタンドアロン デプロイ、 レプリカセット、またはシャーディングされたクラスタに接続するために使用される MongoDB 接続 URI の標準形式。文字列の形式は次のとおりです。

    mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]

    詳細については、 MongoDB のドキュメントをご覧ください。

  • レプリカセット: レプリケーションと 自動フェイルオーバーを実装する MongoDB サーバーのクラスタ。レプリカセットは冗長性と高可用性を提供し、すべての本番環境デプロイの基盤となります。

  • シャーディングされたクラスタ: MongoDB シャーディングされたクラスタは、シャード、mongos、 構成サーバーで構成されます。MongoDB はコレクション レベルでデータをシャーディングし、コレクション データをクラスタ内のシャードに分散します。

  • mongos: クライアント アプリケーションとシャーディングされた クラスタ間のインターフェース。mongos は、クエリ ルーターとして機能し、シャードに書き込みオペレーションを行います。

  • コレクション: MongoDB はデータを階層構造で整理します。MongoDB デプロイには 1 つ以上のデータベースが含まれ、各データベースには 1 つ以上のコレクションが含まれます。各コレクションで、MongoDB はフィールドと値のペアを含むドキュメントとしてデータを格納します。コレクションは、リレーショナル データベースのテーブルに似ています。

行動

移行元 MongoDB データベースは、変更ストリームを使用して変更を宛先にレプリケートします。変更ストリームを使用すると、リアルタイム データにアクセスできます。レプリカセットとシャーディングされたクラスタでサポートされています。

  • 構成されている場合、含まれているオブジェクトの履歴データはすべてレプリケートされます。
  • 指定したオブジェクトからの挿入、更新、削除などの変更はすべてレプリケートされます。

バージョン

Datastream は、5.0 以降の MongoDB バージョンをサポートしています。

既知の制限事項

MongoDB を移行元として使用する場合の既知の制限事項は次のとおりです。

  • Datastream API を使用する場合、ストリームから除外するフィールドのみを指定できます。フィールドの包含リストの指定はサポートされていません。
  • Datastream は、リクエスト ユニット(RU)ベースの Azure Cosmos DB をサポートしていません。
  • Datastream は、Amazon DocumentDB Elastic Clusters をサポートしていません。

次のステップ