数据质量中心结合离线开发平台,使用流程如下图所示:
02 质量流程01.png

在离线开发过程中如果需要进行表或字段的质量监控,需要事先在数据质量中心 - 监控列表页面新建监控任务,监控任务创建完成并通过试跑确认无误后可将其绑定至离线开发任务,从而实现对表或字段的质量监控。

新建监控任务


当前对监控任务的新建操作无功能权限限制,所有用户都可在监控列表页面进行监控任务的创建。点击新建监控进入监控任务创建页面。

步骤一:设置监控对象

选择需要监控的库表,若表为分区表,也可以选择具体的分区进行监控,监控名称默认由dqc_开头,拼接库和表的名称,允许修改。
监控任务新建流程 - 图2

说明:
1. 一张表(非分区表)只能创建一个监控任务,分区表若有多个分区,可针对不同的分区创建多个监控任务。但同一个分区且分区值相同情况下,只能创建一个监控任务。
2. 对于MySQL此种不自带分区的数据源类型,提供自定义分区设置。支持自行选择需要配置分区的字段,并选择时间参数。此处选择的字段仍可继续配置稽核规则,若配置规则自定义SQL时和此处配置冲突,则该规则失败,字段支持多选。

步骤二:设置监控规则

点击下一步进入规则设置页面,在该页面中可设置表或字段的规则详情。当前监控规则支持模板规则自定义规则标准推荐规则
监控任务新建流程 - 图3

模板规则
新建规则中选择模板规则可进行规则配置。如果选择了字段级,可选择需要监控的字段名和已经配置好的规则模板、填写期望范围、设置期望规则命中行数或者规则命中行数比率(两个指标中至少配置1项)。
监控任务新建流程 - 图4

  • 规则类型:支持字段级表级
  • 字段名:当规则类型为字段级时,此处选择需要设置规则的字段名称。
  • 规则模板:支持选择在规则模板页面中已经存在的模板。根据不同的规则类型进行展示。
  • 规则代码:显示所选模板的规则代码,支持按逆向方式执行规则
    • 默认:采样结果=根据规则代码计算的行数。
    • 逆向:采样结果=总行数-根据规则代码计算的行数。
  • 期望范围:此处内容取决于模板配置时填写的采样方式和计算规则,填写一项期望范围即可。
  • 规则控制:强规则和弱规则。
    • 强规则:规则不通过时,任务置为失败状态,停止运行。
    • 弱规则:规则不通过时,任务继续运行。
  • 描述:规则的描述信息。

如果选择了表级别,提供主键唯一性、表行数和表行数波动率的规则模板可供选择。
监控任务新建流程 - 图5

自定义规则

如果规则模板不满足要求,还可以选择自定义规则,针对字段级书写SQL语句。
监控任务新建流程 - 图6

如果对字段还有其他处理逻辑,比如需要有where语句,需要做sum操作等,或者对表进行自定义规则的创建,可以在表级(自定义SQL)中书写SQL语句实现。
监控任务新建流程 - 图7

标准推荐规则
如果当前表的字段关联了数据标准中的数据元,则字段在此处可引用数据元的质量稽核规则。点击标准推荐规则,可看到已关联数据元的字段,展开后可依次配置格式有效性值域有效性(关于数据元可查在数据标准产品介绍中进行查看)。

监控任务新建流程 - 图8

监控规则创建完成后,可以在页面查看创建好的规则,支持对规则进行重新编辑、删除或禁用操作。

监控任务新建流程 - 图9

步骤三:试跑监控任务

监控任务创建完成之后,支持对监控任务执行试跑,以查看监控规则结果是否符合预期。点击完成并试跑,可以选择试跑任务执行的队列,当试跑成功或失败时支持多种方式的通知。
监控任务新建流程 - 图10

步骤四:查看试跑执行结果

执行实例页面中,可以查看全部的监控任务详情,可以通过筛选实例类型试跑,查看试跑的实例。
监控任务新建流程 - 图11
在操作栏,通过点击运行结果,可查看监控任务下规则的执行情况,若不符合预期,可以对监控规则进行调整后,再在离线开发中使用。
监控任务新建流程 - 图12

步骤五:离线开发绑定质量监控任务

监控任务创建成功之后,需要在离线开发任务节点中绑定监控任务。在离线开发的任务流中,选中节点然后右键,选择配置质量监控
监控任务新建流程 - 图13
在弹窗中,配置已经创建成功的监控任务。需要注意的是,一个监控任务只能被一个任务节点绑定。
监控任务新建流程 - 图14
节点绑定监控任务后,节点会带有质量监控的图标,点击图标也可以查看该节点具体绑定的监控任务。
监控任务新建流程 - 图15

步骤六:配置报警

将任务提交上线,在线上模式下,可针对质量监控配置报警。点击添加数据质量报警功能按钮后,在弹窗中可选择报警对象(报警对象即为当前任务流下各个节点绑定的数据质量监控任务),若当前工作流中包含多个监控任务,可针对不同的监控任务配置多个报警。
监控任务新建流程 - 图16

数据质量报警包含质量异常和质量检测失败两种触发规则,支持邮件等多种接收方式,支持循环报警策略,支持质量报警上报的功能(默认会上报给项目的负责人)。