You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python dataplex_v1库配置Dataplex数据质量扫描并同步结果至BigQuery与Catalog UI

解决方案

要让数据质量扫描结果同时写入BigQuery并在Dataplex Catalog UI的表格「数据质量」板块展示,你需要调整两个关键配置:

1. 切换到数据质量扫描配置

你之前用的data_profile_spec是用于数据轮廓分析的配置,这类结果不会在表格的「数据质量」板块展示。你需要替换为data_quality_spec(数据质量扫描专属配置)。

2. 同时配置BQ导出与Catalog发布

在data_quality_spec的post_scan_actions中,除了保留BigQuery导出配置,还要添加publish_results_to_catalog: true,这会让扫描结果关联到目标表格并在UI中展示。同时要确保扫描目标指向Dataplex Catalog中已存在的表格资源。

Python代码示例(dataplex_v1)

from google.cloud import dataplex_v1

# 初始化客户端
client = dataplex_v1.DataScanServiceClient()

# 构建数据质量扫描对象
scan = dataplex_v1.DataScan()
scan.display_name = "customer-table-quality-scan"
scan.description = "Daily data quality scan for customer table"

# 配置数据质量扫描规则与后置动作
scan.data_quality_spec = dataplex_v1.DataQualitySpec()
post_actions = dataplex_v1.DataQualitySpec.PostScanActions()

# 配置BigQuery结果导出
post_actions.bigquery_export = dataplex_v1.DataQualitySpec.PostScanActions.BigQueryExport(
    results_table="//bigquery.googleapis.com/projects/my-project-name/datasets/dataplex_dataset/tables/customer_quality_results"
)

# 启用Catalog发布,确保UI展示
post_actions.publish_results_to_catalog = True
scan.data_quality_spec.post_scan_actions = post_actions

# 指定扫描目标:Dataplex Catalog中的表格资源路径
scan.target = "projects/my-project-name/locations/us-central1/lakes/my-lake/zones/my-zone/entities/customer-table"

# 设置扫描触发规则(示例:每天凌晨执行)
scan.trigger = dataplex_v1.DataScanTrigger(
    schedule=dataplex_v1.DataScanTrigger.Schedule(cron="0 0 * * *")
)

# 发送创建扫描请求
create_request = dataplex_v1.CreateDataScanRequest(
    parent="projects/my-project-name/locations/us-central1",
    data_scan_id="customer-table-quality-scan-id",
    data_scan=scan
)

response = client.create_data_scan(request=create_request)
print(f"Data scan created successfully: {response.name}")

关键注意事项

  • 权限要求:执行扫描的服务账号需要拥有Dataplex Editor、BigQuery Data Editor(针对导出数据集)以及Dataplex Data Reader(针对目标表格)权限。
  • 目标表格:扫描的target必须是Dataplex Catalog中已存在的表格资源路径,否则结果无法关联到UI中的表格。
  • 扫描类型区别:data_profile_spec和data_quality_spec是两类独立的扫描配置,前者用于数据分布、字段统计等轮廓分析,后者用于规则校验(如非空、格式合规等),只有后者的结果会出现在表格的「数据质量」板块。

内容的提问来源于stack exchange,提问作者Wolfmarel Jesbeth Adan Ramirez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 20:39:53