共用方式為


在複製活動中設定 Azure Cosmos DB for MongoDB

本文概述如何在資料管線中使用複製活動,從 Azure Cosmos DB for MongoDB 資料複製或將資料複製到其中。

支援的設定

對於複製活動下每個索引標籤的組態,請分別參閱下列各節。

一般

請參閱<[一般] 設定>指導,來設定 [一般] 設定索引標籤。

來源

前往 [來源] 索引標籤以設定複製活動來源。 如需詳細的組態,請參閱下列內容。

螢幕擷取畫面,其中顯示 [來源] 索引標籤和屬性清單。

以下是必要的屬性:

  • 連線:從連線清單選取 [Azure Cosmos DB for MongoDB 連線]。 如果不存在連線,請選取連線清單底部的 [更多],以建立新的 Azure Cosmos DB for MongoDB 連線。
  • 資料庫:在下拉式清單中選取您的資料庫。
  • 集合名稱:指定 Azure Cosmos DB 集合的名稱。 可以從下拉式清單中選取集合。

在 [進階] 下,可以指定下列欄位:

  • 篩選器:使用查詢運算子指定選取範圍篩選。 若要傳回集合中的所有文件,請省略此參數,或傳遞空白文件 ({})。
  • 指標方法:選取 [+ 新增] 以指定基礎查詢的執行方式。 執行查詢的方式如下:
    • 投影:指定要在投影文件中傳回的欄位。 若要傳回比對文件中的所有欄位,請省略此參數。
    • 排序:指定查詢傳回比對文件的順序。 若要了解詳細資訊,請參閱<cursor.sort()>。
    • 限制:指定伺服器傳回的文件數目上限。 若要了解詳細資訊,請參閱<cursor.limit()>。
    • 略過:指定要略過的文件數,以及 MongoDB 開始傳回結果的位置。 若要了解詳細資訊,請參閱<cursor.skip()>。
  • 批次大小:指定要在回應的每個批次中從 MongoDB 執行個體傳回的文件數目。 在大部分情況下,修改批次大小不會影響使用者或應用程式。 Azure Cosmos DB 限制每個批次的大小不能超過 40 MB,也就是文件大小的 [批次大小] 總數,因此,如果文件大小很大,請降低此值。 預設值是 100。
  • 其他資料行:新增其他資料行來儲存來源檔案的相對路徑或靜態值。 後者支援運算式。

Destination

前往 [目的地] 索引標籤以設定複製活動目的地。 如需詳細的組態,請參閱下列內容。

螢幕擷取畫面,其中顯示 [目的地] 索引標籤和屬性清單。

以下是必要的屬性:

  • 連線:從連線清單選取 [Azure Cosmos DB for MongoDB 連線]。 如果不存在連線,請選取連線清單底部的 [更多],以建立新的 Azure Cosmos DB for MongoDB 連線。
  • 資料庫:在下拉式清單中選取您的資料庫。
  • 集合名稱:指定 Azure Cosmos DB 集合的名稱。 可以從下拉式清單中選取集合。

在 [進階] 下,可以指定下列欄位:

  • 寫入行為:描述如何將資料寫入至 Azure Cosmos DB for MongoDB。 允許的值:insertupsert

    如果存在具有相同 _id 的文件,Upsert 的行為會用來取代文件;否則會插入文件。

    注意

    如果未在原始文件中或藉由資料行對應來指定 _id,則服務會自動為文件產生 _id。 這表示您必須確定,為了讓 Upsert 如預期般運作,您的文件具有識別碼。

  • 寫入批次逾時:在逾時前等待批次插入作業完成的時間。允許的值為時間範圍,預設值為 00:30:00 (30 分鐘)。

  • 寫入批次大小:此屬性可控制在每個批次中寫入的文件大小。 可以嘗試增加此值來改善效能,如果文件大小很大,則可嘗試降低此值。 預設值為 10,000。

對應

對於 [對應] 索引標籤組態,請參閱<在 [對應] 索引標籤下設定對應>。當來源和目的地都是階層式資料時,不支援對應。

設定

對於 [設定] 索引標籤組態,請參閱<在 [設定] 索引標籤下進行其他設定>。

資料表摘要

下列資料表包含有關 Azure Cosmos DB for MongoDB中複製活動的詳細資訊。

來源資訊

名稱 描述: 必要 JSON 指令碼屬性
[連接] 與來源資料存放區的連線。 <Azure Cosmos DB for MongoDB 連線> 必要 connection
Database 您用作來源的資料庫。 <您的資料庫> 必要 database
集合名稱 Azure Cosmos DB 集合的名稱。 <您的集合> 必要 collection
Filter 使用查詢運算子的選取範圍篩選。 若要傳回集合中的所有文件,請省略此參數,或傳遞空白文件 ({})。 <您的選取範圍篩選> 不必要 篩選器
指標方法 基礎查詢的執行方式。 投影
排序
限制
略過
不必要 cursorMethods:
• 投影
• 排序
• 限制
• 略過
批次大小 要在回應的每個批次中從 MongoDB 執行個體傳回的文件數目。 在大部分情況下,修改批次大小不會影響使用者或應用程式。 Azure Cosmos DB 限制每個批次的大小不能超過 40 MB,也就是文件大小的 [批次大小] 總數,因此,如果文件大小很大,請降低此值。 <您的寫入批次大小>
(預設值為 100)
不必要 batchSize
其他資料行 新增其他資料行來儲存來源檔案的相對路徑或靜態值。 後者支援運算式。 • 名稱
• 值
不必要 additionalColumns:
• 名稱
• 值

目的地資訊

名稱 描述: 必要 JSON 指令碼屬性
[連接] 與目的地資料存放區的連線。 <Azure Cosmos DB for MongoDB 連線> 必要 connection
Database 您的目的地資料庫。 <您的資料庫> 必要 database
集合名稱 Azure Cosmos DB 集合的名稱。 <您的集合> 必要 collection
寫入行為 描述如何將資料寫入至 Azure Cosmos DB for MongoDB。 允許的值:insertupsert

如果存在具有相同 _id 的文件,Upsert 的行為會用來取代文件;否則會插入文件。

附註:如果未在原始文件中或藉由資料行對應來指定 _id,則服務會自動為文件產生 _id。 這表示您必須確定,為了讓 Upsert 如預期般運作,您的文件具有識別碼。
Insert (預設值)
Upsert
不必要 writeBehavior:
• insert
• upsert
寫入批次逾時 在逾時前等待批次插入作業完成的時間。 時間範圍
(預設值為 00:30:00 - 30 分鐘)
不必要 writeBatchTimeout
寫入批次大小 控制在每個批次中寫入的文件大小。 您可以嘗試增加此值來改善效能,如果您的文件大小很大,則可嘗試降低此值。 <您的寫入批次大小>
(預設值為 10,000)
不必要 writeBatchSize