帮你快速理解、总结文档立即下载

数据治理快速上手

最近更新时间:2026-09-11 18:24:31
我的收藏
提示
预计用时 90 分钟。学习目标:以电商订单场景为例,端到端跑通 建 Catalog → 分层 Schema 与建表 → 治理标签 → 数据质量监控 → 列级脱敏与行级权限 → 数据发现与血缘 的完整数据治理链路。

场景介绍

您是一名刚加入团队的数据治理工程师。业务希望把分散在各业务系统中的电商订单数据沉淀到统一的 数据目录 中,并在最一线就把分类分级、敏感保护、质量监控、可发现性建立起来,避免日后补救。
本教程将带您:
1. 创建电商业务域的 Table 类 Catalog ,理解三类 Catalog(Table / Volume / Model)的边界。
2. 在 Catalog 下创建分层 Schema (ODS / DWD / DWS),并通过 SQL 建表灌入演示数据。
3. 在治理标签体系中创建一套业务标签、敏感标签 ,并打到表与字段上。
4. 创建一个 数据质量任务 :对核心表的 uid 字段配置空值率规则,试运行、发布、关联告警。
5. 配置 列级脱敏(基于敏感标签)行级权限 ,让同一张表对不同角色返回不同视图。
6. 通过 数据发现 验证资产可被搜索,通过 数据血缘 查看上下游影响范围。
完成本教程后,您将掌握数据治理岗位在日常治理工作中的全套核心操作。

前提条件

在开始本教程前,请确保满足以下条件:
已开通 DataBuddy 服务并完成空间初始化。
当前账号在目标工作空间中拥有 数据治理管理员 或更高角色,并具备 create catalog 权限(如无该权限,请联系工作空间管理员或元数据湖 admin 授予)。
工作空间已绑定 数据分析型 Serverless 资源组 (用于 SQL 建表与质量任务执行,详见 计算资源概述 )。
至少存在一个 用户账号 (例如 analyst_aliceops_bob)用于验证脱敏与行级权限效果。
已在 数据工程数据分析 中熟悉 SQL 编辑器的基础操作。
提示
本教程假设工作空间已默认存在数据湖仓的底座(如内部使用的 DataLakeCatalog)。本教程的目标是 新建一个面向电商业务域的治理用 Catalog ,与默认 Catalog 解耦,便于演示治理流程。

教程数据模型

教程中所有 SQL 都基于一张订单事实表 orders_raw
字段
类型
说明
敏感性
order_id
BIGINT
订单号
业务关键字段
customer_id
BIGINT
客户 ID
-
phone
STRING
客户手机号
敏感(PII)
product_name
STRING
商品名
-
quantity
INT
数量
-
unit_price
DECIMAL(10,2)
单价
-
region
STRING
销售大区:North / South / East / West
行级权限维度
order_status
STRING
订单状态:paid / shipped / completed / cancelled
-
order_time
TIMESTAMP
下单时间
-
uid
STRING
业务主键(关联用户中心)
质量规则监控字段
提示
为避免多人同时跑教程时命名冲突,请把 <your_name> 替换成您自己的姓名前缀,例如 alice_ecommercealice_ods_raw 等。

步骤 1:创建电商业务域 Catalog

Catalog 是 DataBuddy 数据治理体系的最顶层命名空间。三种 Catalog 类型的边界是硬约束
类型
容纳的对象
Catalog
表(Table)、视图(View)、函数(Function)
Volume
卷(Volume)—— 图片、PDF、CSV 等非结构化文件
Model
模型(Model)—— ML 模型注册与版本管理
类型在创建后不可变更 ,电商订单数据是结构化资产,因此创建 Table 类 Catalog
1. 登录 DataBuddy 控制台,在顶部切换到目标地域与工作空间。
2. 在左侧导航选择数据目录
3. 在左侧目录树顶部单击创建数据目录
目录名称<your_name>_ecommerce(例如 alice_ecommerce)。
目录类型 :结构化数据目录 。
描述电商订单业务域的结构化数据治理目录
1. 单击 确认
创建成功后您会自动进入 Catalog 详情页,并看到系统自动生成的1个 Schema: default(通用 Schema)。您本人作为创建者自动成为 Catalog 的 Owner ,拥有该 Catalog 下的全部管理权限。
注意
+ 创建数据目录 按钮置灰且 hover 提示「您暂无权限」时,需联系工作空间管理员或元数据湖 admin 为您授予 create catalog 权限。详见 结构化数据 Catalog 。
提示
如同时需要管理非结构化资产(如商品图片)或 ML 模型,请按同样流程额外创建 文件卷目录 (如 <your_name>_ecommerce_files)与 模型文件目录 (如 <your_name>_ml_models)。三类 Catalog 的对象边界详见非结构化数据 Catalog模型 Catalog

步骤 2:创建分层 Schema 并建表灌数

按数据仓库分层规范创建 3 个 Schema:ODS(原始接入层)/ DWD(明细层)/ DWS(汇总层)

2.1 创建 Schema

在 Catalog 详情页右上角单击 创建 Schema ,依次创建:
Schema 名称
描述
ods_raw
上游业务系统原始入湖数据
dwd_detail
清洗加工后的事实明细表
dws_summary
按维度聚合的指标汇总表
每次填入名称与描述后单击确定 即可。

2.2 在 SQL 分析中建表并灌入数据

1. 在左侧导航选择 SQL 分析 > 新建 SQL ,文件名 governance_setup.sql
2. 在编辑器右上角选择 数据分析型 Serverless 资源组
3. 把下面的 SQL 整段粘贴后,逐条选中 并按 ⌘ + Enter(Windows 用户 Ctrl + Enter)执行(务必把 your_name 替换为您自己的姓名前缀):
-- 1. ODS 层订单原始表
CREATE TABLE IF NOT EXISTS your_name_ecommerce.ods_raw.orders_raw (
order_id BIGINT COMMENT '订单号',
customer_id BIGINT COMMENT '客户 ID',
phone STRING COMMENT '客户手机号(敏感字段)',
product_name STRING COMMENT '商品名',
quantity INT COMMENT '数量',
unit_price DECIMAL(10,2) COMMENT '单价',
region STRING COMMENT '销售大区',
order_status STRING COMMENT '订单状态',
order_time TIMESTAMP COMMENT '下单时间',
uid STRING COMMENT '业务主键(关联用户中心)'
) COMMENT '电商订单原始入湖表';
-- 2. 灌入演示数据(特意留 1 行 uid 为 NULL,用于触发后续质量规则)
INSERT INTO your_name_ecommerce.ods_raw.orders_raw VALUES
(1001, 501, '13800138000', 'Wireless Mouse', 2, 79.00, 'North', 'completed', TIMESTAMP '2025-01-15 10:30:00', 'u_001'),
(1002, 502, '13900139000', 'Mechanical Keyboard', 1, 399.00, 'South', 'completed', TIMESTAMP '2025-01-15 11:15:00', 'u_002'),
(1003, 503, '13700137000', 'USB-C Hub', 3, 128.00, 'East', 'paid', TIMESTAMP '2025-01-15 14:20:00', 'u_003'),
(1004, 501, '13800138000', 'Monitor Stand', 1, 259.00, 'North', 'completed', TIMESTAMP '2025-01-16 09:00:00', 'u_001'),
(1005, 504, '13600136000', 'Wireless Mouse', 1, 79.00, 'West', 'shipped', TIMESTAMP '2025-01-16 16:45:00', NULL);
-- 3. DWD 层明细表(演示用,仅做一层简单清洗)
CREATE TABLE IF NOT EXISTS your_name_ecommerce.dwd_detail.orders_detail AS
SELECT
order_id,
customer_id,
phone,
product_name,
quantity,
unit_price,
quantity * unit_price AS total_amount,
region,
order_status,
order_time,
uid
FROM your_name_ecommerce.ods_raw.orders_raw
WHERE order_status != 'cancelled';
-- 4. DWS 层汇总表(按地区聚合)
CREATE TABLE IF NOT EXISTS your_name_ecommerce.dws_summary.daily_revenue AS
SELECT
region,
DATE(order_time) AS order_date,
SUM(quantity * unit_price) AS total_revenue,
COUNT(DISTINCT customer_id) AS unique_customers
FROM your_name_ecommerce.ods_raw.orders_raw
WHERE order_status != 'cancelled'
GROUP BY region, DATE(order_time);

2.3 在数据目录中验证表已注册

1. 回到 ** 数据目录** ,单击 <your_name>_ecommerce
2. 切换到 ods_raw Schema,应能看到 orders_raw 表。单击进入表详情页,概览 Tab 中可看到 10 个字段的元数据(名称、类型、描述)。
3. 按同样方式确认 dwd_detail.orders_detaildws_summary.daily_revenue 已注册。
提示
SQL 建表后表会自动出现在 Catalog 中。如未看到,请刷新页面;如仍不可见,请检查 SQL 中的三段名是否正确且当前账号是否具备 Schema 的 CREATE TABLE 权限。详见 结构化数据 Catalog

步骤 3:建立治理标签体系并为资产打标

治理标签是后续 资产发现、敏感保护、合规审计 的元数据底座。本步骤创建两类标签:
业务标签 :用于在数据发现中按业务维度筛选资产(如 domain=ecommercetier=gold)。
敏感标签 :标识 PII 字段(如客户手机号),并在后续 步骤 5 中关联脱敏策略实现「打标即脱敏」。

3.1 创建业务标签

1. 数据目录 页左上角单击 标签管理 (治理标签入口位于此处)。
2. 单击 新建标签
标签 Keydomain
标签类型业务标签
标签值 :添加候选值 ecommercefinancelogistics
描述数据资产所属业务域
1. 单击 确定
按同样方法创建第二个业务标签:
标签 Keytier标签值gold / silver / bronze描述资产分层(黄金/白银/青铜)

3.2 复用系统内置敏感标签

DataBuddy 已内置 36 个系统级敏感标签(如 class.cn_id_cardclass.financial_account 等),开箱即用、不可重命名、不可删除。
教程中我们直接复用内置的 手机号类敏感标签 ,无需新建。在标签治理列表中筛选 标签来源 = 系统标签类型 = 敏感标签 ,找到对应于「手机号、中国大陆手机号」语义的内置敏感标签(标签 Key 形如 class.cn_mobile_phone,具体命名以平台为准),记下其 Key,供后续步骤使用。
提示
教程中将该敏感标签的 Key 统一记为 class.cn_mobile_phone。如您环境中的内置 Key 不同,请按实际名称替换后续步骤中的标签引用。详见 创建与管理标签体系

3.3 为表打业务标签

1. 数据目录 中进入 <your_name>_ecommerce.dwd_detail.orders_detail 表详情页。
2. 在右侧 业务信息 区域,单击添加标签。
3. 在弹窗中:
选择标签 Key domain,标签值 ecommerce
单击 添加 继续追加:标签 Key tier,标签值 gold
1. 单击 确定
回到 概览 Tab,可看到表头部已展示两个标签。

3.4 为字段打敏感标签

1. orders_detail 表详情页 概览 Tab 的字段列表中,找到 phone 字段。
2. 单击 phone 字段行末的 添加标签
3. 在弹窗中选择敏感标签 Key class.cn_mobile_phone,单击 确定
按同样方式可为 ods_raw.orders_raw 中的 phone 字段也打上同一个敏感标签。
提示
打标动作只是给字段贴上一个语义标识,真正生效的脱敏行为 要在 步骤 5 中通过把敏感标签关联到脱敏策略来实现。打标与策略分离的设计让治理团队可以先把分类做好,再逐步迭代策略。详见 为数据资产打标签

步骤 4:创建数据质量任务

数据质量监控的目标:在 orders_detail 表的 uid 字段上配置「uid 有效期校验」规则,定期检查并在异常时触发告警。

4.1 进入质量任务创建页

1. 数据目录 中进入 dwd_detail.orders_detail 表详情页。
2. 切换到 质量 Tab。
3. 单击** 前往创建** 。
入口与流程:从表详情页进入会自动锁定监控对象为当前表,无需再选;如从左侧导航 数据质量 入口进入,则需要在「选择对象」步骤中手动选定 <your_name>_ecommerce.dwd_detail.orders_detail
注意
如果按钮置灰,提示「仅表 Owner 和有表 Manager 权限的人有权限创建」,需先在表的 权限 Tab 中确认或申请相应权限。详见 创建质量规则 。

4.2 在规则配置框内编写规则

进入「对象 & 规则」面板后,可直接使用** AI 生成规则,** 或者在右侧 展开规则模板直接复用(表级模板、字段级模板)。
field_rules:
- field_name: uid
rule_name: uid有效期校验
rule_type: custom_sql
dimension: validity
custom_sql: SELECT COUNT(*) as check_value FROM ecommerce.dwd_detail.orders_detail WHERE uid IS NOT NULL
trigger_condition: check_value > 0
alert:
enable: true
规则含义:
field_rule:字段级规则
field_name:作用在 uid 字段上。
rule_type:模板类型:自定义 SQL。
dimension:维度。
trigger_condition: check value > 0:检测值大于0 即视为异常。
alert enable:规则是否开启告警。 true:表示开启;false:表示不开启。
提示
模板字段说明、自定义 SQL 写法、filter(分区过滤)等高级用法详见 创建质量规则。点击编辑器右侧模板列表上方的 样例文档 也可查看完整字段说明。

4.3 填写基本配置

在 YAML 右侧 基本配置 区域:
任务名称orders_detail_uid_quality
负责人 :默认为当前账号。
任务描述监控订单明细表 uid 字段空值个数,超过 1 触发告警

4.4 添加告警配置

选择需要告警的规则和告警渠道。未选择则表示不开启告警。

4.5 保存并发布

1. 在底部单击 保存并发布
2. 在发布弹窗中:
调度方式 :选择 独立工作流 (教程演示用,会在 工作流 中自动生成一个仅含本质量任务的工作流并按天调度)。
调度时间 :每天 08:00
告警渠道 :选择您的工作空间已配置的渠道(如企业微信群机器人、邮箱),并在 接收人 中加入您自己。
1. 单击 确定 完成发布。
发布完成后,您可以在以下两处看到任务运行情况:
数据治理 > 数据质量 > 任务列表 :任务及其历史实例的统一视图,详见 质量任务运维 。
表详情页 质量 Tab:当前表关联的所有质量任务与最近一次的检测状态。
提示
若希望让 ETL 工作流在 orders_detail 的下游加一道质量校验闸门,可在工作流中添加 质量监控任务节点 ,使用动态参数能力配置。

4.6 试运行验证规则

1. 在质量任务列表单击 试运行
2. 等待 10–30 秒,单击 查看运行结果
3. 预期结果(教程数据中 5 行有 1 行 uid 为 NULL):
字段
预期值
执行状态
成功
检测状态
异常
检测值
1
阈值
value <= 0
提示
试运行只对当前数据评估规则,不会产生告警,也不会阻塞任何下游任务 。这是发布前最重要的验证手段。

步骤 5:配置列级脱敏与行级权限

至此 phone 字段已经被打上敏感标签,本步骤把标签关联到具体的脱敏策略,让查询时按用户组返回不同视图;同时为 region 字段配置行级过滤。

5.1 创建列级脱敏策略

1. 在左侧导航选择 数据治理 > 数据安全
2. 切换到 脱敏策略 列表,单击 新建策略
策略名称policy_mobile_phone_mask
关联敏感标签 :勾选 class.cn_mobile_phone(关联后所有打了该标签的字段会自动继承 本策略,无需逐字段绑定)。
脱敏方法
用户组 data_admins → 无需配置脱敏策略(管理员看全量)。
用户组 customer_service → 脱敏方法 保留前4或后4个字符 (客服看 1387********或*******8012)。
用户组 analysts → 脱敏方法 哈希(分析师看到的值为哈希值)。
1. 单击 确定
提示
脱敏策略与敏感标签的关联是「多对多 」:一个策略可关联多个标签,让多个语义相近的字段统一处理;一个字段同一时间只生效一个策略。

5.2 配置行级权限

orders_detail 表添加行级过滤器,让不同地区的运营人员只能看到自己所在地区的订单。
1. 回到 dwd_detail.orders_detail 表详情页。
2. 切换到 权限 Tab,找到 行级权限 区域,单击 添加行过滤器
3. 在弹窗中:
授权主体类型 :用户组。
授权对象ops_north(华北区运营组)。
行过滤表达式region = 'North'
1. 单击 确定
2. 重复以上步骤为其他地区运营组添加规则,例如:
ops_southregion = 'South'
ops_east_westregion IN ('East', 'West')
未在行过滤器中出现的用户组,允许访问全部数据(详见 行级权限控制 )。

5.3 验证策略效果

切换到具备不同用户组的测试账号(例如 analyst_alice 属于 analystsops_bob 属于 ops_north),在 SQL 分析中查询:
SELECT order_id, phone, region, total_amount
FROM your_name_ecommerce.dwd_detail.orders_detail
LIMIT 10;
预期结果:
测试账号
phone 字段返回
行可见范围
数据治理管理员
明文(如 13800138000
全部行
analyst_alice(属于 analysts
***
全部行
ops_bob(属于 ops_north
analysts 策略未匹配则返回明文(按实际所属用户组而定)
region = 'North' 的行
注意
ops_bobphone 字段返回值取决于其在脱敏策略中的用户组归属。如希望客服组也对手机号脱敏,请回到 5.1 在策略中显式追加该用户组。
提示
脱敏与行过滤在 SQL 查询、Notebook、仪表盘 所有读取链路上一致生效,无需调用方在业务代码中重复实现。

步骤 6:通过数据发现与数据血缘验证治理成果

完成以上工作后,您建立的元数据应当是可被搜索、可被追溯 的。

6.1 数据发现:按业务标签找到资产

1. DataBuddy 控制台 顶部全局搜索框输入 订单 收入orders_detail,按回车进入全屏数据发现页。
2. 在左侧资产类型筛选中切换到
3. 在顶部筛选条中叠加 治理标签 domain:ecommercetier:gold,结果列表应只剩您本次创建的资产。
4. 单击结果卡片 orders_detail 跳转到表详情页。
提示
数据发现 AI 语义检索、关键字检索并行,治理标签可作为筛选维度精准收敛。详见 全局数据搜索按标签、分类筛选

6.2 数据血缘:从 DWS 反查 ODS

DWS 表 daily_revenue 是从 orders_raw 经过 orders_detail 加工而来,血缘可以直观追溯整条链路。
1. dws_summary.daily_revenue 表详情页切换到 血缘 Tab。
2. 默认进入 列表模式 ,您应能看到上游 orders_raworders_detail 与产出本表的 SQL 任务记录。
3. 单击右上角图标切换到 图模式 ,可看到拓扑图:
4. 单击任意节点查看详细信息:表节点显示业务信息(描述、标签、责任人)与技术信息(数据源、存储路径、最近 DDL 变更时间);任务节点显示任务代码与所属工作流(可跳转)。
提示
血缘随任务运行(含试运行)自动上报,无需手动维护;任务或文件删除时血缘自动清理。当前支持表级血缘,字段级血缘在后续迭代中。详见 数据血缘

步骤 7:清理资源(可选)

如不再需要本教程产出的内容,建议按以下顺序清理,避免占用配额:
1. 删除质量任务 :在 数据治理 > 数据质量 > 任务列表 中对 orders_detail_uid_quality 单击 删除
2. 删除行级权限与脱敏策略 :在 orders_detail 表详情页 权限 Tab 中删除行过滤器;在 数据安全 > 脱敏策略 中取消关联 policy_mobile_phone_mask
3. 移除治理标签 :在 orders_detail / orders_raw / daily_revenue 上移除业务标签与敏感标签(系统内置标签本身不可删除,仅解绑)。
4. 删除表与 Schema :在 SQL 分析中执行:
DROP TABLE IF EXISTS your_name_ecommerce.dws_summary.daily_revenue;
DROP TABLE IF EXISTS your_name_ecommerce.dwd_detail.orders_detail;
DROP TABLE IF EXISTS your_name_ecommerce.ods_raw.orders_raw;
然后在数据目录中分别删除三个 Schema。
1. 删除 Catalog :在 <your_name>_ecommerce Catalog 详情页右上角 ⋯ > 删除数据目录
警告
删除 Schema 与 Catalog 会同时删除其下所有表与对象,不可恢复。请在删除前确认无业务依赖。

验证结果

完成全部步骤后,您应当能确认:
1. Catalog 与 Schema<your_name>_ecommerce(Table 类)在数据目录中可见,包含 ods_raw / dwd_detail / dws_summary 三个 Schema,加上系统的 information_schemadefault
2. 资产元数据orders_raw / orders_detail / daily_revenue 三张表均已在 Catalog 中注册,字段元数据与 SQL 一致。
3. 治理标签 :业务标签 domaintier 已创建,敏感标签 class.cn_mobile_phone 已被引用;orders_detail 表已打上业务标签,phone 字段已打上敏感标签。
4. 数据质量orders_detail_uid_quality 任务处于已发布状态,试运行结果显示检测状态为 异常 (空值率 20%,超出 1% 阈值),任务已挂入工作流按天调度。
5. 数据安全policy_mobile_phone_mask 脱敏策略已创建并关联 class.cn_mobile_phoneorders_detail 表至少有 1 条行过滤规则。
6. 数据发现、血缘 :通过 domain:ecommerce 标签筛选能找到本教程产出的全部资产;daily_revenue 的血缘图可向上追溯到 orders_raw

总结

在本教程中,您完成了:
数据治理 > 数据目录 中创建电商业务域 Catalog,理解 Table / Volume / Model 三类 Catalog 的硬约束。
ODS / DWD / DWS 分层规范创建 Schema,并通过 SQL 建表灌入演示数据,所有资产自动注册到 Catalog。
标签治理 中创建业务标签体系,并复用系统内置敏感标签,把分类分级的语义元数据沉淀到表与字段上。
数据质量 中通过 YAML 创建空值率监控规则、试运行验证、发布上线并接入告警通道。
数据安全 中创建脱敏策略并关联敏感标签,实现「打标即脱敏」;在表详情页配置行级过滤实现地区维度数据隔离。
通过 数据发现 按业务标签找到资产,通过 数据血缘 反查上下游影响范围,闭环验证治理成果。
本条端到端链路覆盖了数据治理岗位日常 80% 以上的高频操作。后续可继续探索:异常检测(零配置基线)、数据剖析(字段分布与漂移)、语义模型与指标治理、敏感识别 AI Skill 自动打标等进阶能力。