数据沿袭是 Dataplex 的一项功能,可让您跟踪数据在系统中的移动方式:数据来自何处、传递到何处以及对其应用了哪些转换。
为什么需要数据谱系?
处理大数据集通常涉及将数据转换为根据特定项目需求量身定制的实体:文本文件、表格、报告、信息中心、模型。
例如,假设您经营着一家网店,并在一个 SQL 表中记录每次购买交易。为了让分析师更轻松地处理数据,您开始运行作业,从这个单个表中提取信息,并按区域、品牌或促销价生成较小的表。然后,您的分析师会开始执行相同的操作:他们会执行进一步的转换,将这些较小的表与其他数据源合并,以生成更多表。
这可能会成为利益相关方面临的一项重大挑战:
- 数据使用者无法使用自助工具了解数据是否来自权威来源。
- 由于缺乏可靠的方式来跟踪所有数据转换,数据工程师无法找出问题的根本原因。
- 在修改或删除表之前,数据工程师和分析师无法全面评估可能产生的影响。
- 数据管理员无法了解敏感数据在整个组织中的使用情况,也无法确保遵守监管要求。
数据源流是可通过实用方式实现以下目标的解决方案:
- 借助沿袭图可视化功能,了解数据的获取和转换方式。
- 将与条目和数据操作相关的错误追溯到其根本原因。
- 通过影响分析实现更好的变更管理:避免停机或意外错误、了解依赖项条目,以及与相关利益相关方协作。
数据沿袭信息模型
在基本形式下,谱系是指数据从来源转换为目标的记录。Data Lineage API 会收集这些信息,并使用进程、运行作业和事件的概念将其整理成分层数据模型。
流程
流程是对特定系统支持的数据转换操作的定义。在 BigQuery 谱系的上下文中,process
是受支持的作业类型之一。
运行
运行是指流程的一次执行。进程可以多次运行。
广告系列投放包含开始和结束时间、状态或其他属性等详细信息。如需了解详情,请参阅 run
资源参考文档。
事件
事件表示数据转换操作发生的时间点,该操作会导致数据在源实体和目标实体之间移动。
事件包含一个链接列表,用于定义特定事件中的哪个条目是来源,哪个条目是目标。虽然事件用于计算谱系可视化图表,但不会直接显示在 Google Cloud 控制台中。您可以使用 Data Lineage API 创建、读取和删除(但不能更新)这些数据。
示例
请考虑以下在 BigQuery 表之间复制数据的示例:
谱系过程(在图表中用 图标表示)描述了数据如何在表之间移动:它可以是 SQL CREATE TABLE AS SELECT
查询或 INSERT
语句。
该 SQL 语句的每次执行都将构成一次单独的运行。运行包含事件,用于记录哪些表用作源表,哪些表用作目标表。在此示例中,表 customer_year
和 customers
都是目标 top_customer
表的来源。
沿袭可视化图
谱系图表示 Data Lineage API 为特定 Data Catalog 条目收集的信息。根是指您要查看其谱系的条目。
Dataplex 与 Data Lineage API 搭配使用,可识别完全限定名称与数据沿袭所识别的实体匹配的条目。对于匹配的 Dataplex 条目,您可以访问其详情页面上的谱系标签页,然后查看图表。
谱系图会显示两种类型的元素:
宽矩形按钮,表示构建谱系信息的相关实体,即谱系事件的来源或目标。
较小的方形按钮,表示负责创建或更新源实体或目标实体的进程。流程按钮使用了向 Data Lineage API 报告它们的来源系统专有的图标。例如,BigQuery 作业使用 图标。
沿袭列表视图
谱系列表视图会在单个表格中显示实体的详细谱系信息。
与沿袭可视化图(更适合查看相对较小的沿袭图)相比,沿袭列表视图可让您查看具有许多连接的实体的沿袭信息。
下图显示了 Google Cloud 控制台中的沿袭列表视图示例。以下列表更详细地介绍了该图片。
表中的每一行都代表两个条目之间的单个谱系链接。在图中,这些名称显示为两个条目之间的谱系链接,包括中间的所有进程节点。例如,
Source
和Target
是资产节点,中间可能有多个进程节点。方向选项用于指定要显示在列表中的数据流部分(相对于根资产):
上游:显示为所选条目提供数据源的条目的沿袭信息。在谱系图中,这些条目是显示在所选条目左侧的条目。
下游:显示使用所选条目或从所选条目派生的条目的谱系信息。在谱系图中,这些条目是显示在所选条目右侧的条目。
借助时间范围选项,您可以根据沿袭发生的时间过滤沿袭信息:
开始时间:显示在相应开始时间之后发生的沿袭。
结束时间:显示在结束时间之前发生的沿袭。
深度是指源资源或派生资源与根资源之间的距离。列表视图最多可显示 1,000 个谱系链接,其中从根资源到派生资源的最大深度为 10 个谱系链接。如果有任何谱系超出此范围,系统会通知您。您可以通过在列表视图中选择其他实体的名称,查看此范围之外的谱系。
详细信息面板会显示关联的来源、目标以及创建此关联的所有进程的信息。
您可以自定义表格中显示的列并过滤结果。您还可以将结果导出为 CSV 文件。
自动跟踪数据沿袭
启用 Data Lineage API 后,支持数据源流的 Google Cloud 系统会开始报告其数据移动情况。每个集成的系统都可以针对不同范围的数据源提交谱系信息。如需详细了解每款受支持的产品,请参阅以下部分。
BigQuery
在 BigQuery 项目中启用数据沿袭会导致 Dataplex 自动记录以下内容的沿袭信息:
以下 BigQuery 作业生成的新表:
在 Google 标准 SQL 中使用以下数据操纵语言 (DML) 语句而产生的现有表:
- 与所列表类型中的任何一种相关的 SELECT 语句:
- INSERT SELECT
- MERGE
- 更新
- 删除
BigQuery 复制、查询和加载作业表示为进程。如需查看流程详情,请点击谱系可视化图表中的 。每个进程中,最近一个 BigQuery 作业的 attributes 列表中都包含 BigQuery job_id。
其他服务
数据沿袭支持与以下 Google Cloud 服务集成:
自定义数据源的数据沿袭
您可以使用 Dataplex 中的 Data Lineage API 为集成系统不支持的任何数据源手动记录谱系信息。
如果您使用与现有 Data Catalog 条目的完全限定名称匹配的 fullyQualifiedNames
,Dataplex 可以为手动记录的谱系创建可视化图表。如果您想记录自定义数据源的谱系,请先创建自定义 Data Catalog 条目。
自定义数据源的每个进程都可能在属性列表中包含 sql
键。此类键的值将用于在数据谱系图的详细信息面板中呈现代码突出显示。SQL 语句将按提供的形式显示。用户负责滤除敏感信息。键名称 sql
区分大小写。
OpenLineage
如果您已在使用 OpenLineage 从其他数据源收集谱系信息,则可以将 OpenLineage 事件导入 Dataplex,并在 Google Cloud 控制台中显示这些事件。如需了解详情,请参阅与 OpenLineage 集成。
限制
- 所有谱系信息在系统中仅保留 30 天。
- 移除其相关数据源后,谱系信息会保留。也就是说,如果您移除 BigQuery 表及其 Data Catalog 条目,您仍然可以使用 API 读取该表的谱系(最多 30 天)。
访问数据沿袭
您可以使用以下方式访问数据沿袭功能:
- Google Cloud 控制台中 Dataplex 网页界面中的条目详情页面。 请参阅查看沿袭图。
- Google Cloud 控制台中 BigQuery 网页界面中的表详情页面。 请参阅查看沿袭图。
- Google Cloud 控制台 Vertex AI 网页界面中的“Dataset”和“Model Registry”页面。 请参阅查看沿袭图。
- Data Lineage API
价格
Dataplex 使用高级处理 SKU 对数据沿袭进行计费。如需了解详情,请参阅价格。
如需在 Dataplex 高级处理 SKU 中将数据谱系费用与其他费用分开,请在 Cloud Billing 报告中使用标签
goog-dataplex-workload-type
和值LINEAGE
。如果您使用
CUSTOM
以外的值调用 Data Lineage APIOrigin
sourceType
,则会产生额外费用。
后续步骤
如需了解管理信息,请参阅更新后的 IAM 部分、谱系注意事项和数据谱系审核日志记录。