重要
Azure Synapse Analytics 数据资源管理器(预览版)将于 2025 年 10 月 7 日停用。 在此日期之后,Synapse 数据资源管理器上运行的工作负荷将被删除,关联的应用程序数据将丢失。 强烈建议迁移到 Microsoft Fabric 中的 Eventhouse 。
Microsoft云迁移工厂(CMF)计划旨在帮助客户迁移到 Fabric。 该计划向客户免费提供动手键盘资源。 这些资源在 6-8 周内分配,并具有预定义和同意的范围。 客户提名可以通过 Microsoft 帐户团队接受,或者直接提交《帮助请求》给 CMF 团队。
数据引入是将数据添加到表的过程,可用于在数据资源管理器中查询。 在with 关键字之后,将属性添加到摄取命令中。
摄入属性
下表列出了数据资源管理器支持的属性,介绍了这些属性,并提供示例:
| 资产 | Description | Example |
|---|---|---|
ingestionMapping |
表示如何将数据从源文件映射到表中实际列的字符串值。 请使用相关的映射类型定义format值。 请参阅数据映射。 |
with (format="json", ingestionMapping = "[{\"column\":\"rownumber\", \"Properties\":{\"Path\":\"$.RowNumber\"}}, {\"column\":\"rowguid\", \"Properties\":{\"Path\":\"$.RowGuid\"}}]")(已弃用: avroMapping, csvMapping, jsonMapping) |
ingestionMappingReference |
字符串值,指示如何使用命名的映射策略对象将源文件中的数据映射到表中的实际列。 请使用相关的映射类型定义format值。 请参阅数据映射。 |
with (format="csv", ingestionMappingReference = "Mapping1")(已弃用: avroMappingReference, csvMappingReference, jsonMappingReference) |
creationTime |
日期/时间值(格式化为 ISO8601 字符串),在创建引入的数据盘区时使用。 如果未指定,将使用当前值 (now())。 在引入旧数据时,重写默认值非常有用,以便正确应用保留策略。 指定时,请确保目标表中Lookback属性的有效范围合并策略与指定值保持一致。 |
with (creationTime="2017-02-13") |
extend_schema |
如果指定,则为布尔值,指示命令扩展表的模式(默认为 false)。 此选项仅适用于 .append 和 .set-or-append 命令。 唯一允许的架构扩展在末尾将其他列添加到表中。 |
如果原始表架构是(a:string, b:int),那么有效的架构扩展可以是(a:string, b:int, c:datetime, d:string),但(a:string, c:datetime)就无效。 |
folder |
使用 ingest-from-query 命令时分配给表的文件夹。 如果该表已存在,此属性将覆盖表的目录文件夹。 | with (folder="Tables/Temporary") |
format |
数据格式(参见支持的数据格式)。 | with (format="csv") |
ingestIfNotExists |
一个字符串值,如果已指定,则在表的数据已通过一个具有相同值的 ingest-by: 标记进行了标记时,引入操作会失败。 这确保了幂等数据引入。 欲了解更多信息,请参阅ingest-by: tags。 |
属性 with (ingestIfNotExists='["Part0001"]', tags='["ingest-by:Part0001"]') 表示如果标记 ingest-by:Part0001 的数据已经存在,那么不要完成当前的摄取过程。 如果该数据不存在,则在执行这个新的引入操作时,应该设置此标记(防止将来有人尝试再次引入相同的数据)。 |
ignoreFirstRecord |
一个布尔值,在设置为 true 的情况下表示引入操作应该忽略每个文件的第一条记录。 此属性对 CSV和类似格式的文件非常有用,如果文件的第一条记录是列名。 默认情况下,假定使用 false。 |
with (ignoreFirstRecord=false) |
persistDetails |
一个布尔值,如果指定,表示命令应保留详细结果(即使在成功时),以便 .show 操作详情 命令可以检索这些结果。 默认为 false。 |
with (persistDetails=true) |
policy_ingestiontime |
如果指定,布尔值描述是否在此命令创建的表上启用摄取时间策略。 默认值为 true。 |
with (policy_ingestiontime=false) |
recreate_schema |
如果指定,布尔值会描述命令是否可以重建表的架构。 此属性仅适用于.set-or-replace命令。 在同时设置的情况下,此属性优先于 extend_schema 属性。 |
with (recreate_schema=true) |
tags |
与引入的数据(格式化为 JSON 字符串)相关联的标记的列表 | with (tags="['Tag1', 'Tag2']") |
validationPolicy |
一个 JSON 字符串,指示在引入期间要运行的验证。 查看数据导入,以了解不同选项的说明。 |
with (validationPolicy='{"ValidationOptions":1, "ValidationImplications":1}') (这实际上是默认策略) |
zipPattern |
当从存储中导入包含 ZIP 存档的数据时,请使用此属性。 这是一个字符串值,用于指示选择在 ZIP 存档中要导入的文件时使用的正则表达式。 将忽略存档中的所有其他文件。 | with (zipPattern="*.csv") |