在复制活动中配置 Azure Cosmos DB for NoSQL

本文概述了如何使用数据管道中的复制活动从/向 Azure Cosmos DB for NoSQL 复制数据。

支持的配置

有关复制活动下每个选项卡的配置,请分别转到以下各部分。

常规

若要配置“常规”设置选项卡,请参阅常规”设置指导。

复制活动的“”选项卡下的 Azure Cosmos DB for NoSQL 支持以下属性。

Screenshot showing source tab.

需要以下三个属性:

  • 数据存储类型:选择“外部”。
  • 连接:从连接列表中选择 Azure Cosmos DB for NoSQL 连接。 如果没有连接,则通过选择“新建”创建新的 Azure Cosmos DB for NoSQL 连接。
  • 容器:选择要使用的容器。 选择“编辑”以手动输入容器名称。

在“高级”下,可以指定以下字段:

  • 使用查询:可以选择“”或“查询”作为使用查询。 下表介绍了每个设置的配置。

    • :从中指定的表读取数据。

    • 查询:指定要读取数据的 Azure Cosmos DB 查询。

      Screenshot showing query.

  • 页面大小:查询结果的每页文档数。 默认值为“-1”,表示使用服务端动态页大小,最大为 1000。

  • 检测日期/时间:是否从文档中的字符串值中检测日期/时间。 允许的值为:true(默认)、false。

  • 首选区域:从 Azure Cosmos DB 检索数据时要连接到的首选区域列表。 选择“新建”后,从下拉列表中选择一个首选区域。

    Screenshot showing preferred regions.

  • 其他列:添加其他数据列以存储源文件的相对路径或静态值。 后者支持表达式。 有关详细信息,请转到在复制期间添加其他列

    Screenshot showing additional columns.

目标

复制活动的“目标”选项卡下的 Azure Cosmos DB for NoSQL 支持以下属性。

Screenshot showing destination tab.

需要以下三个属性:

  • 数据存储类型:选择“外部”。
  • 连接:从连接列表中选择 Azure Cosmos DB for NoSQL 连接。
  • 容器:选择“浏览”以选择要复制的文件,或手动填写路径。

在“高级”下,可以指定以下字段:

  • 写入行为:定义以基于文件的数据存储中的文件为目标时的写入行为。 可以从下拉列表中选择“添加动态内容”、“插入”或“更新插入”。

    • 添加动态内容:打开“添加动态内容”窗格。 这会打开表达式生成器,在其中可以通过支持的系统变量、活动输出、函数和用户指定的变量或参数来生成表达式。 若要了解表达式语言,请转到表达式和函数

    • 插入:如果源数据有插入,请选择此选项。

    • 更新插入:更新插入的行为是,如果已存在具有相同 ID 的文档,则替换该文档;否则将插入该文档。

      Screenshot showing write behavior.

  • 写入批处理超时:批量插入操作在超时之前等待完成的时间。允许的值为 Timespan。 示例为 00:30:00(30 分钟)。

  • 写入批处理大小:指定每个批要插入到 SQL 表中的行数。 允许的值为整数(行数)。 默认情况下,该服务根据行大小动态确定适当的批大小。

  • 最大并发连接:活动运行期间与数据存储建立的并发连接的上限。 仅在要限制并发连接时指定一个值。

  • 禁用性能指标分析:此设置控制针对复制性能优化的指标(如 DTU、DWU、RU 等)集合和建议。 如果担心此行为,请关闭此功能。

映射

对于“映射”选项卡配置,请转到“映射”选项卡下的“配置映射”

设置

对于“设置”选项卡配置,请转到“设置”选项卡下的“配置其他设置”

表摘要

下表包含有关 Azure Cosmos DB for NoSQL 中复制活动的详细信息。

源表

名称 描述 必选 JSON 脚本属性
数据存储类型 你的数据存储类型。 外部 /
Connection 与源数据存储的连接。 <你的连接> 连接
容器 源数据的容器。 <源的容器> 容器 (container)
fileName
使用查询 可以选择“”或“查询”作为使用查询。
查询
type
页面大小 查询结果的每页文档数。 默认值为“-1”,表示使用服务端动态页大小,最大为 1000。 <你的页面大小> pageSize
删除日期/时间 移动到目标存储后,源数据存储上的文件将被立即删除。 文件删除按文件进行。因此,当复制活动失败时,你会注意到,一些文件已经复制到目标并从源中删除,而另一些文件仍在源存储中。 已选择或取消选择 detectDatetime
首选区域 从 Azure Cosmos DB 检索数据时要连接到的区域的首选列表。 选择“新建”后,从下拉列表中选择一个首选区域。 <你的首选区域> preferredRegions
其他列 添加其他数据列以存储源文件的相对路径或静态值。 后者支持表达式。 有关详细信息,请转到在复制期间添加其他列 <最大并发连接数> additionalColumns

目标表

名称 描述 必选 JSON 脚本属性
数据存储类型 你的数据存储类型。 外部 /
Connection 与目标数据存储的连接。 <你的连接> 连接
容器 目标数据的容器。 <源容器> 容器 (container)
fileName
写入行为 描述如何将数据写入 Azure Cosmos DB。 允许的值为 insert 和 upsert。 upsert 的行为是,如果已存在具有相同 ID 的文档,则替换该文档;否则将插入该文档。 添加动态内容
插入
更新插入
writeBehavior
写入批处理超时 批量插入操作在超时之前等待完成的时间。允许的值为 Timespan。 示例为 00:30:00(30 分钟)。 timespan writeBatchTimeout
写入批大小 每批要插入到 SQL 表中的行数。 允许的值为 integer(行数)。 默认情况下,该服务根据行大小动态确定适当的批大小。 <行数>
(整数)
writeBatchSize
最大并发连接数 活动运行期间与数据存储建立的并发连接的上限。 仅在要限制并发连接时指定一个值。 <最大并发连接数> maxConcurrentConnections
禁用性能指标分析 此设置控制针对复制性能优化的指标(如 DTU、DWU、RU 等)集合和建议。 如果担心此行为,请关闭此功能。 已选择或取消选择 disableMetricsCollection