通过建立自动剖析和数据质量规则,您可以使用信任信号和业务情境来丰富元数据。
借助Human-in-the-Loop方法,即由 AI 起草初始规则,然后您进行审核、完善和验证,您可以快速将剖析统计信息转化为数据质量框架。
目标
- 使用具体化视图展平嵌套的 BigQuery 数据,以启用 Knowledge Catalog 分析。
- 使用 Python 客户端库运行 Knowledge Catalog 分析扫描。
- 使用 Antigravity CLI 根据分析统计信息生成数据质量规则。
- 通过人机协同审核流程,验证并部署 AI 生成的规则,将其作为 Knowledge Catalog 质量扫描。
准备工作
在开始之前,请确保您有一个启用了结算功能的 Google Cloud 项目。
准备环境
以下步骤使用 Cloud Shell,它是在云端运行的命令行环境。
在 Google Cloud 控制台中,点击右上角工具栏中的激活 Cloud Shell。预配和连接到环境需要一些时间。
在 Cloud Shell 中,设置您的项目 ID 和环境变量:
export PROJECT_ID=$(gcloud config get-value project) gcloud config set project $PROJECT_ID export LOCATION="us-central1" export BQ_LOCATION="us" export DATASET_ID="kc_dq_codelab" export TABLE_ID="ga4_transactions"使用
us(多区域)作为位置,因为公共示例数据也位于us(多区域)中。对于 BigQuery 查询,源数据和目标表必须位于同一位置。启用必需的服务:
gcloud services enable dataplex.googleapis.com \ bigquery.googleapis.com \ serviceusage.googleapis.com \ aiplatform.googleapis.com创建 BigQuery 数据集来存储示例数据和结果:
bq --location=us mk --dataset $PROJECT_ID:$DATASET_ID准备示例数据,这些数据来自 Google Merchandise Store 的公开电子商务数据集。
以下
bq命令会在kc_dq_codelab数据集中创建一个新表ga4_transactions。为确保扫描快速运行,此命令仅复制一天(2021-01-31)的数据。bq query \ --use_legacy_sql=false \ --destination_table=$PROJECT_ID:$DATASET_ID.$TABLE_ID \ --replace=true \ 'SELECT * FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_20210131`'克隆包含本教程的文件夹结构和支持文件的 GitHub 代码库:
# Perform a shallow clone to get only the latest repository structure without the full history git clone --depth 1 --filter=blob:none --sparse https://github.com/GoogleCloudPlatform/devrel-demos.git cd devrel-demos # Specify and download only the folder we need for this lab git sparse-checkout set data-analytics/programmatic-dq cd data-analytics/programmatic-dq此目录是您的有效工作区。
分析嵌套数据
借助数据分析,Knowledge Catalog 可以查找顶级列的统计信息,例如数据中的 null 百分比、唯一性和值分布,帮助您了解数据。
如需获取嵌套字段的统计信息,您可以使用一组物化视图来展平数据。这会将每个嵌套字段转换为 Knowledge Catalog 可以分析的顶级列。
获取嵌套架构
获取源表的完整架构(包括所有嵌套结构),并将输出保存为 JSON 文件: