Dataphin支持创建校验指标的质量规则,提升指标质量监控的便捷性。本文为您介绍如何配置指标质量规则。
前提条件
权限说明
超级管理员、质量管理员和指标负责人支持为质量规则配置调度、告警等。
质量负责人、普通用户需要额外具备逻辑表字段的读取权限,如需申请,请参见申请、续期和交还表权限。
校验规则说明
指标参与质量规则校验时,如果触发了质量弱监控规则,系统会给您发送告警消息,便于您及时发现并处理异常;如果触发了质量强监控规则,系统会自动中断该表所在的任务,避免脏数据流入下游,同时系统会给您发送告警消息,便于您及时发现并处理异常。
质量规则试跑和运行区别
试跑和运行的区别在于执行的方式和显示的结果,试跑指对某个质量规则进行一次模式执行,以检测规则的正确性和运行情况,试跑的结果不会在质量报告中显示;运行指在特定时间内对质量规则进行检查,运行的结果会输出到质量报告中,便于用户查看与分析。
质量规则配置
在Dataphin首页,在顶部菜单栏选择治理 > 数据质量。
单击左侧导航栏的质量规则,在指标页面,单击目标对象的名称,进入质量规则详情页面,配置质量规则。
在质量规则详情页面,单击新建质量规则。
在新建质量规则对话框,配置参数。
参数
描述
基本信息
规则名称
自定义质量规则的名称。
规则强度
支持弱规则和强规则。
如果您选择了弱规则,则质量规则校验的结果为异常时报警但不阻塞下游任务节点。
如果您选择了强规则,则质量规则校验的结果为异常时报警,同时在有下游任务的情况下(代码检查调度、任务触发调度)会阻塞下游任务,防止污染数据扩散;如果没有下游任务(如周期质量调度),则仅告警。
描述
自定义质量规则描述。不超过128个字符。
配置方式
模板创建:使用通用的系统模板和自定义的业务模板,快速创建质量规则。
系统模板:模板内置参数可配置,适合通用的规则创建。
自定义模板:模板预置参数,无需配置,一般用于含有业务逻辑的规则创建。
自定义SQL:可通过SQL灵活自定义质量监控规则,适用于灵活复杂场景。
规则模板
下拉可选择规则模板,唯一性、稳定性、自定义SQL。
唯一性:包含字段分组个数校验和字段重复值个数校验。
稳定性:包含字段稳定性校验和字段波动性校验。
自定义SQL:包含自定义统计指标校验。
详情请参见质量规则模板类型。
规则类型
规则类型和模板有关,是模板最基础的属性,可用于说明和筛选功能。
规则配置
规则配置
当规则模板选择为唯一性时,对应的参数如下所示。
字段分组个数校验/字段重复值个数校验:
校验表数据过滤:默认关闭,开启后可配置校验表的过滤条件或分区过滤或普通数据过滤,过滤条件将会直接追加至校验SQL中;如校验表有分区过滤需求,建议在调度配置中配置分区表达式,配置后会以校验分区为最小查看粒度查看质量报告。填写数据过滤内容,例如:
id = 12 --单表
T1.id=12 and T2.name = "张三" --双表
当规则模板选择为稳定性时,对应的参数如下所示。
字段稳定性校验/字段波动性校验:
统计方式:建议根据业务场景选择统计方式。
校验表数据过滤:默认关闭,开启后可配置校验表的过滤条件或分区过滤或普通数据过滤,过滤条件将会直接追加至校验SQL中;如校验表有分区过滤需求,建议在调度配置中配置分区表达式,配置后会以校验分区为最小查看粒度查看质量报告。填写数据过滤内容,例如:
id = 12 --单表
T1.id=12 and T2.name = "张三" --双表
当规则模板选择为自定义SQL时,对应的参数如下所示。
自定义统计指标校验:
自定义SQL:支持select查询语句,查询对象须包含主表。例如:
select sum(sale) from tableA where ds=${bizdate};
校验配置
规则校验
数据质量规则校验后,结果会和异常校验的配置进行对比,符合条件则校验结果为不通过;同时触发告警等后续流程。
异常校验可用指标由模板和配置内容决定,支持多种条件的and/or条件,实际配置中建议小于3条。
详情请参见指标校验配置。
业务属性配置
属性信息
业务属性填写规范取决于质量规则属性的配置。例如:
归口管理部门所对应的字段取值类型为枚举值(多选),可选枚举值范围为大数据部、业务部、技术部。因此,创建质量规则时,该属性值为下拉多选框,可选项为枚举值(多选),可选枚举值范围为大数据部、业务部、技术部。
规则负责人所对应的字段取值类型为自定义输入,属性字段长度为256。因此,在创建质量规则时,该属性值可以输入不超过256个字符。
若属性字段的填写方式为范围区间,则配置方式如下:
范围区间:常用于取值范围是连续数值或日期的情况。可选择>、>=、<、<=四种符号。更多属性配置,请参见新建及管理质量规则属性。
调度属性配置
调度方式
支持选择已配置的调度;若暂未决定调度方式,您可创建质量规则后再配置。如需新建,请参见新建调度。
单击保存,完成规则配置。
您可以单击预览SQL,查看本次配置对比上次保存的配置,便于查看SQL变更。
说明关键信息没有填写完整,预览SQL不可用。
左边为上次保存配置的SQL预览,若未配置,则为空;右边为当前配置的SQL预览。
规则配置列表
您可以在规则配置列表页面查看已经配置的指标规则信息,并进行查看、编辑、试跑、运行、删除等操作。
区域
描述
①筛选及搜索区
支持按照对象或者规则名称进行快捷搜索。
支持按照规则类型、规则模板、规则强度、试跑状态、生效状态进行筛选。
说明若质量规则属性配置了可搜索、可筛选的业务属性且为启用状态,则可根据该属性进行搜索或筛选。
②列表区
为您展示规则配置列表的对象类型/名称、规则名称/ID、试跑状态、生效状态、规则类型、规则模板、规则强度、调度类型、相关知识库文档信息,单击刷新前的图标,可选择您需展示的规则列表字段。
生效状态:建议生效规则前先进行试跑,针对试跑成功的规则开启生效状态。避免错误的规则阻塞线上任务。
开启生效状态后,所选规则会按照配置的调度自动执行。
停用生效状态后,所选规则不会自动执行,但可以手动执行。
相关知识库文档:点击查看详情,查看规则关联的知识库信息。包括表名称、校验对象、规则以及相关知识库文档信息,同时,您可对知识库执行搜索、查看、编辑、删除操作。操作详情请参见查看知识库。
③操作区
您可进行查看、克隆、编辑、试跑、运行、调度配置、关联知识库文档、删除操作。
查看:可查看规则配置详情。
克隆:可快速克隆规则。
编辑:编辑规则后,需重新试跑。
试跑:支持选择已有调度或自定义校验范围试跑规则,试跑后,可单击图标查看试跑日志。
运行:支持选择已有调度或自定义校验范围运行规则,运行后,可在校验记录中查看校验结果。
调度配置:支持在弹框中筛选调度类型或用调度名称快捷搜索调度。也支持编辑调度。
关联知识库文档:规则关联知识库后,可在质量规则和治理工作台中查看关联知识。支持选择未被关联的知识库。如需创建,请参见创建及管理知识库。
删除:删除此质量规则对象将删除对象下的所有质量规则,删除后不可撤销,请谨慎操作。
④批量操作区
您可批量进行试跑、运行、配置调度、开启、关闭、修改业务属性、关联知识库文档、删除操作。
试跑:支持选择已有调度或自定义校验范围批量试跑规则,试跑后,可单击图标查看试跑日志。
运行:支持选择已有调度或自定义校验范围批量运行规则,运行后,可在校验记录中查看校验结果。
调度配置:支持在对话框中筛选调度类型或用调度名称快捷搜索调度。也支持编辑调度,为质量规则批量配置调度。仅支持修改选中规则中在质量规则列表页面可编辑的规则。
开启:批量开启生效状态后,所选规则会按照配置的调度自动执行。仅支持开启选中规则中在质量规则列表页面可编辑的规则。
关闭:批量停用生效状态后,所选规则不会自动执行,但可以手动执行。仅支持关闭选中规则中在质量规则列表页面可编辑的规则。
修改业务属性:当业务属性对应的字段取值类型为单选或多选时,支持批量修改业务属性。
当业务属性对应的字段取值类型为多选时,支持追加或修改属性值。
当业务属性对应的字段取值类型为单选时,支持直接修改属性值。
关联知识库文档:规则关联知识后,可在质量规则和治理工作台中查看关联知识。支持为监控对象批量配置知识库。如需创建,请参见创建及管理知识库。
删除:支持批量删除质量规则的对象,删除后不可撤销,请谨慎操作。仅支持删除选中规则中在质量规则列表页面可编辑的规则。
新建调度
规则配置调度时,可以基于当前已有的调度快速进行配置(每个表上限为20个调度规则)。
同一个规则最多能配置10个调度。
调度配置完全一致时,支持自动去重。
校验范围会作为质量校验时的过滤条件下发到质量校验的语句中,控制每次质量校验的范围。校验范围也会作为后续质量报告等下游的基本单元,质量报告的查看会以校验范围为最小查看粒度。
在质量规则详情页面,单击调度配置页签,再单击新建调度按钮,进入新建调度对话框。
在新建调度对话框中,配置参数。
参数
描述
调度名称
自定义调度名称。
调度类型
支持定时调度、数据更新触发调度和固定任务触发调度。
定时调度:根据设置的调度时间,支持定时、周期性地对数据进行质量检测,适合数据产出时间相对固定的场景。
调度周期:质量规则运行会占用一定的计算资源,建议避免同一时间并发执行多条质量规则,以免影响生产任务的正常运行。调度周期包含日、周、月、小时、分钟五种周期类型。
数据更新触发调度:所有代码任务执行时,均会解析本次任务运行是否更新当前表指定的校验范围。适用于表的修改任务不固定或需要重点监控的表,即每次变更都需监控的情况。
说明建议检验范围选择任务更新的分区(非分区表将校验全表),系统会自动识别所有数据变更并进行校验,避免遗漏。
固定任务触发调度:在指定的任务运行成功后或运行前,执行配置的质量规则。支持选择引擎SQL、离线管道、Python、Shell、Virtual、Datax、Spark_jar、Hive_MR、数据库SQL节点的任务类型触发任务。适用于表修改任务固定的情况。
说明固定任务触发只能选择生产环境任务,若规则强度配置了强规则,调度任务校验失败,可能会影响线上任务,请根据业务需求谨慎操作。
触发时机:选择进行质量检测的触发时机。支持选择所有任务都运行成功后触发、每个任务每次运行成功后均触发和每个任务每次运行前触发。
触发任务:支持选择当前用户有运维权限的生产任务节点,可以根据节点输出名称搜索。
说明当触发时机选择所有任务都运行成功后触发时,触发任务建议选择同调度周期的任务,避免因调度周期不同而导致规则延迟运行,质量检测结果延迟产出。
调度条件
默认关闭,开启后,在质量规则正式调度前,会先判断是否满足调度条件。满足条件才会正式调度,不满足条件则忽略本次调度。
业务日期/执行日期:若调度类型选择定时调度(定时调度不支持执行日期)、数据更新触发调度、固定任务触发调度,支持配置日期,可选择普通日历或自定义日历,如何自定义日历,请参见创建及管理公共日历。
若选择普通日历,则条件可选月份、星期、日期。例如下图:
若选择自定义日历,则条件可选日期类型、标签。例如下图:
实例类型:若调度类型选择数据更新触发调度、固定任务触发调度,支持配置实例类型,可选择周期实例、补数据实例、手动实例。例如下图:
说明至少配置一条规则。如需添加规则,请单击+添加规则按钮。
最多配置10个调度条件。
调度条件之间的关系可配置为且、或。
校验范围
当调度类型选择定时调度、固定任务触发调度时,校验范围支持自定义校验范围;当调度类型选择数据更新触发调度时,校验范围支持任务更新的分区、自定义校验范围。
任务更新的分区:若检查任务中更新了分区,则直接按照任务更新的分区下发任务。
说明动态分区场景可能解析不到分区,将不会进行质量校验。
波动性校验规则(如校验分区大小、分区行数、字段统计值)需要指定分区,不支持任务更新分区校验范围。
非分区表如有数据更新时将校验全表。
自定义校验范围:对于无法解析的场景,可以使用自定义校验范围,按照业务日期或者执行日期来指定校验范围表达式。
校验范围表达式:为可输入的下拉选择框,支持直接输入需要校验的范围,如
ds='${yyyyMMdd}'
;也可以选择内置的校验范围表达式然后进行修改,以帮助您快速配置,分区表达式详情请参见内置分区表达式。说明若有多个条件进行校验,可用and或or进行连接,如
province="浙江" and ds<=${yyyyMMdd}。
若质量规则中配置了过滤条件,则校验范围表达式和过滤条件之间为AND关系,校验数据时,两个条件会一起进行过滤。
校验范围表达式支持对全表进行扫描。
注意:全表扫描将会消耗较大的资源,并且部分不支持全表扫描,建议配置分区表达式以避免全表扫描。
校验范围预算:默认为业务日期当天。
单击确定,完成调度配置。
调度配置列表
调度创建完成后,您可以在调度配置列表进行查看、编辑、克隆、删除等操作。
区域 | 描述 |
①筛选及搜索区 | 支持按照调度名称进行快捷搜索。 支持按照定时调度、数据更新触发调度、固定任务触发调度进行筛选。 |
②列表区 | 为您展示规则配置列表的调度名称、调度类型、最后更新人、最后更新时间信息。 |
③操作区 | 您可以对调度执行编辑、克隆、删除操作。
|
告警配置
您可以给不同的规则配置不同的告警方式以实现区分告警,例如:为强规则异常配置电话告警,为弱规则异常配置短信告警;如果一个规则同时命中了多条告警配置,支持设置告警的生效策略。
单个监控对象下支持创建不超过20个告警配置。
在质量规则详情页面,单击告警配置页签,再单击新建告警配置按钮,进入新建告警配置对话框。
在新建告警配置对话框中,配置参数。
参数
描述
覆盖范围
支持选择所有规则、所有强规则、所有弱规则和自定义。
说明单个监控对象下,所有规则、所有强规则和所有弱规则3种范围支持各配置一条告警,后续新增的规则根据规则强度自动匹配对应的告警;如需变更其中的某一条告警配置,可修改已有配置。
自定义范围可选择当前监控对象下已配置的所有规则,不超过200条。
告警配置名称
单个监控对象下的告警配置名称唯一,不超过256个字符。
告警接收人
配置告警接收人及告警方式。需选择至少一种告警接收人及告警方式。
告警接收人:支持选择自定义、值班表和质量负责人三种告警接收人。
支持配置不超过5个自定义告警接收人;支持配置不超过3个值班表。
告警方式:支持选择电话、邮件、短信、钉钉不同的接收方式。
单击确定,完成告警配置。
告警配置列表
告警配置完成后,您可以在告警配置列表中进行排序、编辑、删除操作。
序号 | 描述 |
①排序区 | 支持配置一条质量规则符合多条告警配置时的告警生效策略:
|
②列表区 | 为您展示告警配置的名称、生效范围、每种告警类型的具体接收人以及对应的告警接收方式。 生效范围:自定义告警支持查看配置的对象名和规则名,若该规则被删除,则无法查看对象名,建议您更新告警配置。 |
③操作区 | 您可以对配置的告警执行编辑和删除操作。
|
查看质量报告
单击质量报告,查看当前质量规则的规则校验概览和规则校验明细。
您可根据异常结果、分区时间、规则或对象的名称关键字快捷筛选校验明细。
在规则校验明细列表中的操作列单击图标,查看质量规则的规则校验详情。
在规则校验明细列表中的操作列单击图标,查看质量规则的执行日志。
设置质量规则权限管理
单击权限管理,配置可查看详情,即指定成员查看校验记录详情、质量规则详情、质量报告。
可查看详情:可选择所有成员或仅超级管理员、质量管理员和质量负责人。
单击确定,完成权限管理配置。
后续步骤
上述质量规则配置完成后,即可在指标规则列表页面查看。详情请参见管理监控对象列表。