概述
异常检测是 DataBuddy 提供的一项零配置数据质量兜底能力。它由系统在后台自动学习每张表的更新频率与数据量历史模式,建立基线后持续监控,当实际值偏离基线超过阈值时产生告警。用户只需在 Schema 层级开启开关,无需定义任何规则。
异常检测覆盖以下两类核心风险:
类型 | 检测目标 | 核心问题 |
新鲜度(Freshness) | 表的更新是否及时 | 这张表是不是该来数据了但没来? |
完整性(Completeness) | 表的数据量是否正常 | 这张表这次来的数据量是不是不对? |
前提条件
在开始本操作前,请确保满足以下条件:
已开通 DataBuddy 服务并完成空间初始化。
配置权限 :仅拥有 Schema Manager 权限的用户可以开启或编辑异常检测(角色权限说明详见 成员与权限管理)。
查看权限 :拥有 Schema 读权限即可查看检测结果。
已准备好用于运行检测任务的计算资源。
异常检测告警本期不支持
使用限制
限制项 | 说明 |
配置粒度 | 仅 Schema 级支持批量开启;表级自动继承,不支持单独开启或单独关闭 |
检测维度 | 本期支持新鲜度、完整性;其他维度暂不支持 |
学习期间行为 | 样本不足(新鲜度 < 7 次更新、完整性 < 14 次) 期间不告警,状态显示为「学习中」 |
操作步骤
步骤 1:在 Schema 层级开启异常检测
1. 登录 DataBuddy 控制台。
2. 进入 数据目录 > 选中目标 Catalog > 选中目标 Schema > 详情 。
3. 在数据质量异常检测 点击开启入口,即可配置完成
步骤 2:查看检测结果
1. 在 Schema 详情页的数据质量异常检测 区域点击 查看结果 。
2. 支持按照 Catalog/ Schema 筛选查看结果;支持点击刷新按钮刷新列表
3. 列表页面展示健康表占比,健康表和不健康以及学习中的表 list。
4. 列表字段如下:
列名 | 说明 |
表名 | 表的名称 |
所属 Schema | 表所在 Schema |
状态 | 表的状态 |
最近检测时间 | 该表最近的检测时间 |
检测频率 | 该表检测频率 |
操作 | 查看详情,点击后跳转到表详情页面 |
列名 | 说明 |
表名 | 出现异常的表 |
所属 Schema | 表所在 Schema |
状态 | 表的健康状态 |
异常类型 | 完整性异常 / 新鲜度异常 |
上游根因 | 获取导致表异常的上游根因 |
下游影响 | 获取表异常后对下游的影响范围 |
最近检测时间 | 该表最新一次检测的时间 |
操作 | 查看表详情,点击后跳转到表详情页面 |
列名 | 说明 |
表名 | 表的名称 |
所属 Schema | 表所在 Schema |
状态 | 表的状态 |
最近检测时间 | 该表最近的检测时间 |
检测频率 | 该表检测频率 |
操作 | 查看详情,点击后跳转到表详情页面 |
步骤 3:在表详情页查看检测结果
1. 进入 数据目录 > 选中目标表 > 质量 Tab。
2. 在「异常检测」区域可查看该表的检测结果。
注意
该入口只展示当前表的检测结果,不能 单独为表开启或关闭异常检测。
点击开关时,会跳转到所属 Schema 的开启入口;点击「 为Schema 关闭」会跳转到 Schema 详情页的关闭入口。
步骤 4:编辑或关闭异常检测
操作 | 入口 | 说明 |
编辑 | Schema 详情 > 数据质量监控 > 编辑 | 抽屉打开后可修改计算资源与告警通知 |
关闭 | Schema 详情 > 数据质量监控 > 关闭开关 | 弹出二次确认「关闭后,所有表将停止智能质量检测,是否确认关闭」 |
注意
关闭异常检测后,该 Schema 下所有表都会停止检测;告警发送也会同步停止。
关闭与重新开启的恢复逻辑
为避免反复开启时丢失已学习的样本,系统遵循以下规则:
关闭前的表状态 | 重新开启后的行为 |
学习中(样本不足) | 从断点继续学习 :关闭期间的历史数据保留不清除,重新开启后继续采集,累计样本达标后转为基线就绪 |
基线已就绪(正常检测中) | 立即恢复检测 :使用关闭前已建立的基线继续判定;如关闭超过 30 天,系统自动触发基线重建,重建期间状态临时回到「学习中」 |
关闭期间新增的表 | 自动纳入检测 ,从零开始学习,状态为「学习中」 |
关闭期间的数据处理原则:
关闭期间不采集、不检测、不告警;
已采集的历史数据与基线参数保留在存储中不清除;
重新开启后优先利用已有数据,避免从零开始。
参数说明
Schema 级配置
参数 | 说明 | 是否必填 | 默认值 | 取值范围 |
检测对象 | Schema 范围 | 是 | 当前 Schema | 不可修改 |
检测维度 | 当前支持的检测类型 | 是 | 新鲜度 + 完整性 | 不可修改 |
采集频率 | 数据采集频率 | 是 | 基于历史数据自动学习 | 不可修改 |
告警渠道 | 告警渠道与接收人 | 是 | - | 通知管理中已启用的渠道 |
常见问题
Q:一张表刚开启异常检测,多久能开始告警?
A:系统会立即开始采集历史数据。如果表的元数据中已有足够的更新记录(≥ 7 次),可以立即建立基线并开始检测;否则需等待累计到足够样本,期间状态为「学习中」、不告警。
Q:异常检测和手动质量规则有什么区别,应该用哪个?
A:两者互补。异常检测面向「未知的未知」——零配置发现新鲜度、完整性偏离;手动质量规则面向「已知的风险」——精准守护字段级业务规则。建议先开启异常检测获得兜底,再针对暴露出的高频问题创建手动规则做精细化管理。手动规则详见 创建质量规则。
Q:能否单独为某张表关闭异常检测?
A:暂不支持。检测策略以 Schema 为粒度统一开启与关闭,表级会自动继承。如需让某张表不被检测,请在 Schema 层级关闭异常检测后再有选择地启用。
相关文档
创建质量规则