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 は、MongoDB バージョン 5.0 以降をサポートしています。
既知の制限事項
MongoDB を移行元として使用する場合の既知の制限事項は次のとおりです。
- Datastream API を使用する場合は、ストリームから除外するフィールドのみを指定できます。フィールドのインクルード リストの指定はサポートされていません。
- ストリーム復元はサポートされていません。
次のステップ
- Datastream で使用する MongoDB ソースの構成方法を学習する。