在複製活動中設定 MongoDB
本文概述如何使用資料管線中的複製活動,從 MongoDB 複製資料及將資料複製到該處。
支援的設定
如需複製活動下每個索引標籤的組態,請分別移至下列各節。
一般
請參閱 [一般] 設定指引,以設定 [一般] 設定索引標籤。
來源
移至 [來源] 索引標籤以設定複製活動來源。 如需詳細的組態,請參閱下列內容。
以下是必要的屬性:
- 資料存放區類型:選取 [外部]。
- 連線:從連線清單中選取 MongoDB 連線。 如果不存在連線,請選取 [新增],以建立新的 MongoDB 連線。
- 資料庫:在下拉式清單中選取您的資料庫。
- 集合名稱:指定 MongoDB 資料庫中的集合名稱。 您可以從下拉式清單中選取集合,或選取 [編輯] 以手動輸入。
在 [進階] 下,您可以指定下列欄位:
- 篩選器:使用查詢運算子指定選取範圍篩選。 若要傳回集合中的所有文件,請省略此參數,或傳遞空白文件 ({})。
- 指標方法:選取 [+ 新增] 以指定基礎查詢的執行方式。 執行查詢的方式如下:
- 投影:指定要在投影文件中傳回的欄位。 若要傳回比對文件中的所有欄位,請省略此參數。
- 排序:指定查詢傳回比對文件的順序。 如需詳細資訊,請移至 cursor.sort()。
- 限制:指定伺服器傳回的文件數目上限。 如需詳細資訊,請移至 cursor.limit()。
- 略過:指定要略過的文件數,以及 MongoDB 開始傳回結果的位置。 如需詳細資訊,請移至 cursor.skip()。
- 批次大小:指定要在回應的每個批次中從 MongoDB 執行個體傳回的文件數目。 在大部分情況下,修改批次大小不會影響使用者或應用程式。
- 其他資料行:新增其他資料行以儲存來源檔案的相對路徑或靜態值。 後者支援運算式。
Destination
移至 [目的地] 索引標籤以設定複製活動目的地。 如需詳細的組態,請參閱下列內容。
以下是必要的屬性:
- 資料存放區類型:選取 [外部]。
- 連線:從連線清單中選取 MongoDB 連線。 如果不存在連線,請選取 [新增],以建立新的 MongoDB 連線。
- 資料庫:在下拉式清單中選取您的資料庫。
- 集合名稱:指定 MongoDB 資料庫中的集合名稱。 您可以從下拉式清單中選取集合,或選取 [編輯] 以手動輸入。
在 [進階] 下,您可以指定下列欄位:
寫入行為:描述如何將資料寫入至 MongoDB。 允許的值:insert 和 upsert。
如果存在具有相同
_id
的文件,Upsert 的行為會用來取代文件;否則會插入文件。注意
如果未在原始文件中或藉由資料行對應來指定
_id
,則服務會自動為文件產生_id
。 這表示您必須確定,為了讓 Upsert 如預期般運作,您的文件具有識別碼。寫入批次逾時:在逾時前等待批次插入作業完成的時間。允許的值為時間範圍。
寫入批次大小:此屬性可控制在每個批次中寫入的文件大小。 您可以嘗試增加此值來改善效能,如果您的文件大小很大,則可嘗試降低此值。
對應
如需 [對應] 索引標籤組態,請參閱 在 [對應] 索引標籤下設定對應。當來源和目的地都是階層式資料時,不支援對應。
設定
如需 [設定] 索引標籤組態,請移至在 [設定] 索引標籤下進行其他設定]。
資料表摘要
下表包含有關 MongoDB 中複製活動的詳細資訊。
來源資訊
名稱 | 描述: | 值 | 必要 | JSON 指令碼屬性 |
---|---|---|---|---|
資料存放區類型 | 您的資料存放區類型。 | 外部 | Yes | / |
[連接] | 您與來源資料存放區的連線。 | <您的 MongoDB 連線> | Yes | connection |
Database | 您用作來源的資料庫。 | <您的資料庫> | Yes | database |
集合名稱 | MongoDB 資料庫中集合的名稱。 | <您的集合> | Yes | collection |
Filter | 使用查詢運算子的選取範圍篩選。 若要傳回集合中的所有文件,請省略此參數,或傳遞空白文件 ({})。 | <您的選取範圍篩選> | No | 篩選器 |
指標方法 | 基礎查詢的執行方式。 | • 投影 • 排序 • 限制 • 略過 |
No | cursorMethods: • 投影 • 排序 • 限制 • 略過 |
批次大小 | 要在回應的每個批次中從 MongoDB 執行個體傳回的文件數目。 | <您的寫入批次大小> (預設為 100) |
No | batchSize |
其他資料行 | 新增其他資料行以儲存來源檔案的相對路徑或靜態值。 後者支援運算式。 | • 名稱 • 值 |
No | additionalColumns: • 名稱 • 值 |
目的地資訊
名稱 | 描述: | 值 | 必要 | JSON 指令碼屬性 |
---|---|---|---|---|
資料存放區類型 | 您的資料存放區類型。 | 外部 | Yes | / |
[連接] | 您與目的地資料存放區的連線。 | <您的 MongoDB 連線> | Yes | connection |
Database | 您用作目的地的資料庫。 | <您的資料庫> | Yes | database |
集合名稱 | MongoDB 資料庫中集合的名稱。 | <您的集合> | Yes | collection |
寫入行為 | 描述如何將資料寫入至 MongoDB。 允許的值:insert 和 upsert。 如果存在具有相同 _id 的文件,Upsert 的行為會用來取代文件;否則會插入文件。附註:如果未在原始文件中或藉由資料行對應來指定 _id ,則服務會自動為文件產生 _id 。 這表示您必須確定,為了讓 Upsert 如預期般運作,您的文件具有識別碼。 |
• Insert (預設值) • Upsert |
No | writeBehavior: • insert • upsert |
寫入批次逾時 | 在逾時前等待批次插入作業完成的時間。 | 時間範圍 (預設為 00:30:00 - 30 分鐘) |
No | writeBatchTimeout |
寫入批次大小 | 控制在每個批次中寫入的文件大小。 您可以嘗試增加此值來改善效能,如果您的文件大小很大,則可嘗試降低此值。 | <您的寫入批次大小> | No | writeBatchSize |