在複製活動中設定 MongoDB
本文概述如何使用資料管線中的複製活動,將數據從 MongoDB 複製和複製到 MongoDB。
支援的組態
如需複製活動下每個索引標籤的設定,請分別移至下列各節。
一般
請參閱一般設定指引,以設定 [一般設定] 索引卷標。
來源
移至 [ 來源] 索引標籤以設定複製活動來源。 如需詳細的設定,請參閱下列內容。
需要下列屬性:
- 數據存放區類型:選取 [外部]。
- 連線:從聯機清單中選取 MongoDB 連線。 如果沒有連線存在,請選取 [新增],以建立新的 MongoDB 連線。
- 資料庫:從下拉式清單中選取您的資料庫。
- 集合名稱:指定 MongoDB 資料庫中的集合名稱。 您可以從下拉式清單中選取集合,或選取 [ 編輯 ] 以手動輸入集合。
在 [進階] 底下,您可以指定下列欄位:
- 篩選:使用查詢運算元指定選取篩選。 若要傳回集合中的所有檔,請省略此參數或傳遞空白檔 ({})。
- 數據指標方法:選取 [+ 新增 ] 以指定基礎查詢的執行方式。 執行查詢的方式如下:
- 專案:指定要在檔中傳回用於投影的欄位。 若要傳回相符檔中的所有字段,請省略此參數。
- sort:指定查詢傳回相符文件的順序。 如需詳細資訊,請移至 cursor.sort( )。
- limit:指定伺服器傳回的檔數目上限。 如需詳細資訊,請移至 cursor.limit( )。
- skip:指定要略過的檔數目,以及 MongoDB 開始傳回結果的位置。 如需詳細資訊,請移至 cursor.skip()。
- 批次大小:指定要在 MongoDB 實例回應的每個批次中傳回的檔數目。 在大部分情況下,修改批次大小不會影響使用者或應用程式。
- 其他數據行:新增其他數據行以儲存來源檔案的相對路徑或靜態值。 後者支持表達式。
Destination
移至 [ 目的地 ] 索引標籤以設定複製活動目的地。 如需詳細的設定,請參閱下列內容。
需要下列屬性:
- 數據存放區類型:選取 [外部]。
- 連線:從聯機清單中選取 MongoDB 連線。 如果沒有連線存在,請選取 [新增],以建立新的 MongoDB 連線。
- 資料庫:從下拉式清單中選取您的資料庫。
- 集合名稱:指定 MongoDB 資料庫中的集合名稱。 您可以從下拉式清單中選取集合,或選取 [ 編輯 ] 以手動輸入集合。
在 [進階] 底下,您可以指定下列欄位:
寫入行為:描述如何將數據寫入 MongoDB。 允許的值: Insert 和 Upsert。
Upsert 的行為是,如果檔已存在相同
_id
,則取代檔;否則,請插入檔。注意
如果未
_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。 Upsert 的行為是,如果檔已存在相同 _id ,則取代檔;否則,請插入檔。注意:如果未 _id 在源檔或資料行對應中指定 ,服務會自動為檔案產生 _id 。 這表示您必須確保 Upsert 能夠如預期般運作,您的檔具有識別碼。 |
• 插入 (預設值) • Upsert |
No | writeBehavior: •插入 • upsert |
寫入批次逾時 | 批次插入作業在逾時之前完成的等候時間。 | 時間範圍 (預設值為 00:30:00 - 30 分鐘) |
No | writeBatchTimeout |
寫入批次大小 | 控制每個批次中要寫入的檔案大小。 如果您的檔案大小很大,您可以嘗試增加此值來改善效能並降低此值。 | < 您的寫入批次大小 > | No | writeBatchSize |