重要
以前Azure Purview) (Microsoft Purview 统一目录和经典 Microsoft Purview 数据治理功能即将停用。 Microsoft 正在 Microsoft Fabric 中整合其数据治理功能。 无法再创建新帐户,现有功能将保持维护模式直至 2027 年 11 月 12 日。 有关停用时间表、过渡指南和建议的后续步骤,请参阅 Microsoft Purview 数据治理停用公告。
本文可帮助你了解如何在 Microsoft Purview 中使用资源集将数据资产映射到逻辑资源。
注意
现已推出高级资源集功能,可供 Microsoft Purview 统一目录中的所有客户使用。 高级资源集的定价与 经典 Microsoft Purview 数据治理的现有费率一致。
背景信息
大规模数据处理系统通常将单个表作为多个文件存储在存储中。 在 Microsoft Purview 统一目录中,此概念通过使用资源集来表示。 资源集是目录中的单个对象,表示存储中的大量资产。
例如,假设 Spark 群集已将 DataFrame 持久化到Azure Data Lake Storage (ADLS) Gen2 数据源中。 尽管在 Spark 中,表看起来像一个逻辑资源,但在磁盘上可能有数千个 Parquet 文件,每个文件代表 DataFrame 总内容的一个分区。 IoT 数据和 Web 日志数据面临相同的挑战。 假设您有一个每秒多次输出日志文件的传感器。 用不了多久,你就会从这个传感器获得数十万个日志文件。
Microsoft Purview 如何检测资源集
Microsoft Purview 支持检测 Azure Blob 存储、ADLS Gen1、ADLS Gen2、Azure 文件存储和 Amazon S3 中的资源集。
Microsoft Purview 在扫描时自动检测资源集。 此功能会查看通过扫描摄取的所有数据,并将其与一组定义的模式进行比较。
例如,假设扫描 URL 为 https://myaccount.blob.core.windows.net/mycontainer/machinesets/23/foo.parquet. Microsoft Purview 查看路径段并确定它们是否与任何内置模式匹配。 它具有用于 GUID、数字、日期格式、本地化代码 (例如 en-us) 等的内置模式。 在本例中,数字模式匹配 23。 Microsoft Purview 假定此文件是名为 https://myaccount.blob.core.windows.net/mycontainer/machinesets/{N}/foo.parquet的资源集的一部分。
或者,对于 URL 之类 https://myaccount.blob.core.windows.net/mycontainer/weblogs/en_au/23.json的 URL,Microsoft Purview 同时匹配本地化模式和编号模式,从而生成名为 https://myaccount.blob.core.windows.net/mycontainer/weblogs/{LOC}/{N}.json的资源集。
使用此策略,Microsoft Purview 会将以下资源映射到同一资源集: https://myaccount.blob.core.windows.net/mycontainer/weblogs/{LOC}/{N}.json
https://myaccount.blob.core.windows.net/mycontainer/weblogs/cy_gb/1004.jsonhttps://myaccount.blob.core.windows.net/mycontainer/weblogs/cy_gb/234.jsonhttps://myaccount.blob.core.windows.net/mycontainer/weblogs/de_Ch/23434.json
Microsoft Purview 不会将其检测为资源集的文件类型
Microsoft Purview 有意不尝试将大多数文档文件类型(如 Word、Excel 或 PDF)分类为资源集。 CSV 格式是例外,因为这是一种常见的分区文件格式。
Microsoft Purview 如何扫描资源集
当 Microsoft Purview 检测到它认为属于资源集一部分的资源时,它会从完整扫描切换到示例扫描。 示例扫描仅打开它认为位于资源集中的文件的子集。 对于它打开的每个文件,它使用其架构并运行其分类器。 然后,Microsoft Purview 在打开的资源中查找最新的资源,并将该资源的架构和分类用于目录中的整个资源集。
高级资源集
Microsoft Purview 可以通过 高级资源集 功能自定义和进一步扩充资源集资产。 高级资源集允许 Microsoft Purview 了解引入的数据的基础分区,并支持创建 资源集模式规则 ,以自定义 Microsoft Purview 在扫描期间对资源集进行分组的方式。
启用高级资源集后,Microsoft Purview 将运行额外的聚合来计算有关资源集资产的以下信息:
- 包含资源集的文件中的示例路径。
- 显示组成资源集的文件数的分区计数。
- 构成资源集的所有文件的总大小。
可以在资源集的资产详细信息页面上找到这些属性。
打开高级资源集
默认情况下,高级资源集在所有新的 Microsoft Purview 实例中均处于关闭状态。 只有在根集合中具有数据管理者角色的用户才能管理高级资源集设置。 若要启用高级资源集,请转到 Microsoft Purview 门户>设置>帐户,然后选择 高级资源集的切换开关,如下图所示:
启用高级资源集后,将在所有新引入的资产上进行额外的扩充。 引入后,这些扩充最多可能需要 12 小时 才能在资产上可用。 Microsoft Purview 团队建议在切换该功能后等待一小时,然后再扫描新的数据湖数据。
重要
启用高级资源集会影响资产和分类见解的刷新频率。 启用高级资源集后,资产和分类见解将每天更新两次。
此外,启用高级资源集时,可能需要长达 12 小时 才能查看架构更新。
内置资源集模式
Microsoft Purview 支持以下资源集模式。 这些模式可以显示为目录中的名称或文件名的一部分。
基于正则表达式的模式
| 模式名称 | 显示名称 | 说明 |
|---|---|---|
| Guid | {GUID} | RFC 4122 中定义的全局唯一标识符 |
| 数字 | {N} | 一位或多位数字 |
| 日期/时间格式 | {year}{Month}{Day}{N} | 我们支持各种日期/时间格式,但所有格式都用 {Year}[delimiter]{Month}[delimiter]{Day} 或一系列 {N} 表示。 |
| 4ByteHex | {HEX} | 四位数的十六进制数。 |
| 本地化 | {LOC} | BCP 47 中定义的语言标记,支持 - 和 _ 名称, (例如 en_ca 和 en-ca) |
复杂模式
| 模式名称 | 显示名称 | 说明 |
|---|---|---|
| SparkPath | {SparkPartitions} | Spark 分区文件标识符 |
| 日期 (yyyy/mm/dd) InPath | {年}/{月}/{日} | 跨多个文件夹的年/月/日模式 |
资源集在统一目录中的显示方式
当 Microsoft Purview 将一组资产匹配到资源集中时,它会尝试提取最有用的信息,以用作目录中的显示名称。 应用的默认命名约定的一些示例:
示例 1
限定名称: https://myblob.blob.core.windows.net/sample-data/name-of-spark-output/{SparkPartitions}
显示名称:“spark 输出的名称”
示例 2
限定名称: https://myblob.blob.core.windows.net/my-partitioned-data/{Year}-{Month}-{Day}/{N}-{N}-{N}-{N}/{GUID}
显示名称:“我的分区数据”
示例 3
限定名称: https://myblob.blob.core.windows.net/sample-data/data{N}.csv
显示名称:“数据”
使用模式规则自定义资源集分组
扫描存储帐户时,Microsoft Purview 使用一组已定义的模式来确定一组资产是否为资源集。 在某些情况下,Microsoft Purview 的资源集分组可能无法准确反映数据资产。 这些问题可能包括:
- 错误地将资产标记为资源集。
- 将资产放入错误的资源集。
- 错误地将资产标记为不是资源集。
若要自定义或重写 Microsoft Purview 检测哪些资产被分组为资源集及其在目录中的显示方式,可以在 管理中心 中定义模式规则。 有关分步说明和语法,请参阅 资源集模式规则。
资源集的已知限制
- 默认情况下,仅当启用 了高级资源集时 ,扫描才会删除资源集资产。 如果此功能关闭,则只能手动或通过 API 删除资源集资产。
后续步骤
若要开始使用 Microsoft Purview,请参阅 快速入门:创建 Microsoft Purview 帐户。