arrow_back

使用 Dataplex 进行数据质量评估

登录 加入
访问 700 多个实验和课程

使用 Dataplex 进行数据质量评估

实验 1 小时 30 分钟 universal_currency_alt 1 个积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
访问 700 多个实验和课程

GSP1158

Google Cloud 自学实验的徽标

概览

Dataplex Universal Catalog 是一种智能数据结构脉络,使组织能够跨数据湖、数据仓库和数据集市集中发现、管理、监控和治理其数据,从而实现大规模分析。

Dataplex Universal Catalog 具备一项非常有用的功能,能够定义数据质量检查任务并对 BigQuery 表和 Cloud Storage 文件等 Dataplex Universal Catalog 资产执行这些检查。利用 Dataplex 数据质量任务,您可以将数据质量检查融入日常工作流中,例如验证作为数据生产流水线一部分的数据、根据一组条件定期监控数据质量,以及按照监管要求生成数据质量报告。

在本实验中,您将学习如何使用 Dataplex Universal Catalog 进行数据质量评估。具体而言,您将创建一个自定义数据质量规范文件,然后使用该文件定义数据质量作业并对 BigQuery 数据运行该作业。

您将执行的操作

  • 创建 Dataplex Universal Catalog 数据湖、区域和资产。
  • 查询 BigQuery 表以检查数据质量。
  • 创建并上传数据质量规范文件。
  • 定义并运行数据质量作业。
  • 查看数据质量作业的结果。

设置和要求

点击“开始实验”按钮前的注意事项

请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。

此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。

为完成此实验,您需要:

  • 能够使用标准的互联网浏览器(建议使用 Chrome 浏览器)。
注意:请使用无痕模式(推荐)或无痕浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。
  • 完成实验的时间 - 请注意,实验开始后无法暂停。
注意:请仅使用学生账号完成本实验。如果您使用其他 Google Cloud 账号,则可能会向该账号收取费用。

如何开始实验并登录 Google Cloud 控制台

  1. 点击开始实验按钮。如果该实验需要付费,系统会打开一个对话框供您选择支付方式。左侧是“实验详细信息”窗格,其中包含以下各项:

    • “打开 Google Cloud 控制台”按钮
    • 剩余时间
    • 进行该实验时必须使用的临时凭据
    • 帮助您逐步完成本实验所需的其他信息(如果需要)
  2. 点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。

    该实验会启动资源并打开另一个标签页,显示“登录”页面。

    提示:将这些标签页安排在不同的窗口中,并排显示。

    注意:如果您看见选择账号对话框,请点击使用其他账号
  3. 如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。

    {{{user_0.username | "<用户名>"}}}

    您也可以在“实验详细信息”窗格中找到“用户名”。

  4. 点击下一步

  5. 复制下面的密码,然后将其粘贴到欢迎对话框中。

    {{{user_0.password | "<密码>"}}}

    您也可以在“实验详细信息”窗格中找到“密码”。

  6. 点击下一步

    重要提示:您必须使用实验提供的凭据。请勿使用您的 Google Cloud 账号凭据。 注意:在本实验中使用您自己的 Google Cloud 账号可能会产生额外费用。
  7. 继续在后续页面中点击以完成相应操作:

    • 接受条款及条件。
    • 由于这是临时账号,请勿添加账号恢复选项或双重验证。
    • 请勿注册免费试用。

片刻之后,系统会在此标签页中打开 Google Cloud 控制台。

注意:如需访问 Google Cloud 产品和服务,请点击导航菜单,或在搜索字段中输入服务或产品的名称。 “导航菜单”图标和“搜索”字段

激活 Cloud Shell

Cloud Shell 是一种装有开发者工具的虚拟机。它提供了一个永久性的 5GB 主目录,并且在 Google Cloud 上运行。Cloud Shell 提供可用于访问您的 Google Cloud 资源的命令行工具。

  1. 点击 Google Cloud 控制台顶部的激活 Cloud Shell “激活 Cloud Shell”图标

  2. 在弹出的窗口中执行以下操作:

    • 继续完成 Cloud Shell 信息窗口中的设置。
    • 授权 Cloud Shell 使用您的凭据进行 Google Cloud API 调用。

如果您连接成功,即表示您已通过身份验证,且项目 ID 会被设为您的 Project_ID 。输出内容中有一行说明了此会话的 Project_ID

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud 是 Google Cloud 的命令行工具。它已预先安装在 Cloud Shell 上,且支持 Tab 自动补全功能。

  1. (可选)您可以通过此命令列出活跃账号名称:
gcloud auth list
  1. 点击授权

输出:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (可选)您可以通过此命令列出项目 ID:
gcloud config list project

输出:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注意:如需查看在 Google Cloud 中使用 gcloud 的完整文档,请参阅 gcloud CLI 概览指南

启用 Dataproc API

  1. 在 Google Cloud 控制台标题栏的搜索字段中输入 Cloud Dataproc API,然后点击搜索结果中的 Cloud Dataproc API

  2. 如果 API 尚未启用,请点击启用

任务 1. 在 Dataplex 中创建数据湖、区域和资产

如需定义并运行数据质量任务,您需要 Dataplex Universal Catalog 资源。

在此任务中,您需要创建一个新的 Dataplex Universal Catalog 数据湖来存储电子商务客户信息,向该数据湖添加一个原始区域,然后将预先创建的 BigQuery 数据集作为新资产附加到该区域中。

创建数据湖

  1. 在 Google Cloud 控制台的导航菜单 (导航菜单) 中,选择“查看所有产品”,然后依次找到分析 > Dataplex Universal Catalog

如果系统提示欢迎体验新版 Dataplex Universal Catalog,请点击关闭

  1. 点击管理数据湖下的管理

  2. 点击创建数据湖

  3. 输入以下所需信息以新建数据湖。将其他所有字段保留为默认值:

属性
显示名称 Ecommerce Lake
区域
  1. 点击创建

数据湖创建过程最长可能需要 3 分钟。

向数据湖中添加区域

  1. 管理标签页上,点击数据湖的名称。

  2. 点击添加区域

  3. 输入以下所需信息以新建区域。将其他所有字段保留为默认值:

属性
显示名称 Customer Contact Raw Zone
类型 原始区域
数据位置 区域级
  1. 点击创建

区域创建过程最长可能需要 2 分钟。

注意:在区域状态变为有效后,您便可以执行下一项任务。

将资产附加到区域

  1. 区域标签页上,点击Customer Contact Raw Zone(客户联系人原始区域)。

  2. 资产标签页上,点击添加资产

  3. 点击添加资产

  4. 输入以下所需信息以附加新资产。将其他字段保留为默认值。

属性
类型 BigQuery 数据集
显示名称 Contact Info
数据集 .customers
  1. 点击完成

  2. 点击继续

  3. 发现设置中,选择继承以继承区域级别的发现设置,然后点击继续

  4. 点击提交

点击“检查我的进度”以验证是否完成了以下目标: 在 Dataplex Universal Catalog 中创建数据湖、区域和资产

任务 2. 查询 BigQuery 表以检查数据质量

本实验使用两个预先创建的 BigQuery 数据集:

  • customers:包含一个名为 contact_info 的表,该表包含了客户的联系信息,例如客户 ID、姓名、电子邮件地址等。这是您要在本实验中探索和检查数据质量问题的表。

  • customers_dq_dataset:不包含任何表。在后续任务中定义数据质量作业时,您可以将此数据集用作包含数据质量作业结果的新表的目标位置。

在此任务中,您需要查询 customers 数据集,以确定可以作为检查项包含在数据质量作业中的数据质量问题。此外,您还需要指定 customers_dq_dataset 数据集,以便在后续任务中存储数据质量作业结果。

打开 BigQuery 控制台

  1. 在 Google Cloud 控制台中,选择导航菜单 > BigQuery

您会看到欢迎在 Cloud 控制台中使用 BigQuery 消息框,其中提供了指向快速入门指南和版本说明的链接。

  1. 点击完成

BigQuery 控制台即会打开。

查询 contact_info

  1. 探索器窗格中,点击项目 ID () 旁边的展开箭头,列出内容。

您应该会看到以下三个数据集:

  • customer_contact_raw_zone
  • customers
  • customers_dq_dataset
  1. 在 SQL 编辑器中,点击 SQL 查询 (+)。粘贴以下查询,然后点击运行
SELECT * FROM `{{{project_0.project_id}}}.customers.contact_info` ORDER BY id LIMIT 50

此查询会从原始表中选择 50 条记录,并在结果中按照客户 ID 对这些记录进行排序。

  1. 结果窗格中滚动浏览结果。

    请注意,一些记录缺少客户 ID 或者包含错误的电子邮件地址,这可能会导致难以管理客户订单。

contact-info 表中的数据不完整

点击“检查我的进度”以验证是否完成了以下目标: 查询 BigQuery 表以检查数据质量

任务 3. 创建并上传数据质量规范文件

Dataplex 数据质量检查要求是使用 CloudDQ YAML 规范文件定义的。创建完毕后,YAML 规范文件会被上传到可供数据质量作业访问的 Cloud Storage 存储桶。

YAML 文件主要包含以下四个部分:

  • 要运行的规则(预定义或自定义规则)的列表。
  • 行过滤条件,用于选择一部分数据进行验证。
  • 规则绑定,用于对表应用已定义的规则。
  • 可选规则维度,用于指定 YAML 文件可以包含的规则的类型。

在此任务中,您需要定义一个用于数据质量检查的新 YAML 规范文件,这些检查会找到指定 BigQuery 表中的 null 客户 ID 和电子邮件地址。您还需要指定预先创建的 BigQuery 数据集 customer_dq_dataset,以将数据质量结果存储在名为 dq_results 的表中。

定义该文件后,您可以将其上传到预先创建的 Cloud Storage 存储桶,以便在后续任务中使用该文件来运行数据质量作业。

创建数据质量规范文件

  1. 在 Cloud Shell 中运行以下命令,新建空的数据质量规范文件:
nano dq-customer-raw-data.yaml
  1. 将以下代码粘贴到文件中:
rules: - nonNullExpectation: {} column: id dimension: COMPLETENESS threshold: 1 - regexExpectation: regex: '^[^@]+[@]{1}[^@]+$' column: email dimension: CONFORMANCE ignoreNull: true threshold: .85 postScanActions: bigqueryExport: resultsTable: projects/{{{project_0.project_id | Project ID}}}/datasets/customers_dq_dataset/tables/dq_results
  1. 查看代码以确定此文件中定义的两条主要数据质量规则。

dq-customer-raw-data.yaml 指定了两条规则:

  • 第一条规则用于检查完整性,例如 null 值。
  • 第二条规则用于检查合规性,例如无效值。

在此文件中,这两个规则绑定到了特定的表列:

  • 第一个规则绑定将 notNullExpectation 规则绑定至表 contact_infoid 列,阈值为 100%,用于检查 ID 列是否包含任何 NULL 值。
  • 第二个规则绑定将 regexExpectation 规则绑定到 contact_info 表的 email 列,阈值为 85%,用于检查电子邮件地址是否有效。
  1. 按下 Ctrl+X,然后按 Y 以保存并关闭该文件。

将文件上传到 Cloud Storage

  • 在 Cloud Shell 中运行以下命令,将文件上传到 Cloud Storage 存储桶:
gsutil cp dq-customer-raw-data.yaml gs://{{{project_0.project_id | Project ID}}}-bucket

点击“检查我的进度”以验证是否完成了以下目标: 创建并上传数据质量规范文件

任务 4. 在 Dataplex 中定义并运行自动数据质量作业

数据质量流程使用数据质量规范 YAML 文件来运行数据质量作业,并生成将写入 BigQuery 数据集中的数据质量指标。

在此任务中,您需要使用 Cloud Storage 中的数据质量规范 YAML 文件来定义并运行自动数据质量作业。定义此作业时,您还需要指定 customer_dq_dataset 数据集以存储数据质量结果。

  1. 在 Cloud Shell 中,运行以下命令来创建数据质量扫描:
gcloud dataplex datascans create data-quality customer-orders-data-quality-job \ --project={{{project_0.project_id | Project ID}}} \ --location={{{project_0.default_region | Region}}} \ --data-source-resource="//bigquery.googleapis.com/projects/{{{project_0.project_id | Project ID}}}/datasets/customers/tables/contact_info" \ --data-quality-spec-file="gs://{{{project_0.project_id | Project ID}}}-bucket/dq-customer-raw-data.yaml" 注意:在本实验中,Compute Engine 默认服务账号已预先配置了适当的 IAM 角色和权限。如需了解详情,请参阅 Dataplex Universal Catalog 文档:创建服务账号
  1. 返回到控制台。您应该仍在 Dataplex Universal Catalog 中。

  2. 治理下,点击数据分析和质量评估

  3. 点击 customer-orders-data-quality-job

  4. 点击立即运行

注意:作业可能需要几分钟才能运行完毕。

作业完成后,请注意其状态为1 dimension 1 rule failed(1 个维度 1 条规则失败)。

  1. 点击查看结果

请注意,email 列的数据质量规则为 Passed,但 id 列的数据质量规则为 Failed。这是正常现象,因为:

  • id 列的规则是阈值为 100%Null 值检查。这意味着,要通过此规则,所有行都必须有 ID 值。在本例中,contact_info 表的 id 列中有 10% 的行具有 null 值。因此,此规则会显示为 Failed

  • email 列的规则是阈值为 85%正则表达式检查。这意味着,如果 15% 的记录电子邮件格式无效,该规则就会失败。在本例中,contact_info 表的 email 列中约有 10.5% 的行包含无效电子邮件地址。因此,此规则会显示为 Passed

点击检查我的进度以验证是否完成了以下目标: 在 Dataplex Universal Catalog 中定义并运行数据质量作业

任务 5. 在 BigQuery 中查看数据质量结果

在此任务中,您需要查看 customers_dq_dataset 中的表,找到缺少客户 ID 值或者电子邮件地址值无效的记录。

  1. 返回 BigQuery,在探索器窗格中,展开项目 ID 旁边的箭头,列出内容:

  2. 点击 customer_dq_dataset 数据集旁边的展开箭头。

  3. 点击 dq_results 表。

  4. 点击预览标签页查看结果。

  5. 滚动到名为 rule_failed_records_query 的列。

  6. 复制查询,查询以 WITH 开头。

  7. 点击 SQL 查询 (+)。复制查询并将其粘贴到 SQL 编辑器中,然后点击运行

    查询结果会提供 contact_info 表中无效的电子邮件地址值。 请注意 dq_validation_column_id 列中每个条目的“email”。

    VALID_EMAIL 的数据质量结果

  8. 对于包含 VALID_CUSTOMER 规则结果对应查询的第二个单元,重复第 7 步和第 8 步。

    查询结果表明,contact_info 表中有 10 条缺少 ID 值的记录。

    VALID_CUSTOMER 的数据质量结果

    请注意 dq_validation_column_id 列中每个条目的“id”。

点击检查我的进度以验证是否完成了以下目标: 在 BigQuery 表中查看数据质量结果

恭喜!

通过创建自定义数据质量规范文件并使用该文件对 BigQuery 表运行数据质量作业,您完成了使用 Dataplex Universal Catalog 进行数据质量评估的任务。

Google Cloud 培训和认证

…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。

本手册的最后更新时间:2025 年 9 月 2 日

本实验的最后测试时间:2025 年 9 月 2 日

版权所有 2025 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

请使用无痕模式或无痕式浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。