创建指标质量规则

Dataphin支持创建校验指标的质量规则,提升指标质量监控的便捷性。本文为您介绍如何配置指标质量规则。

前提条件

已经添加监控对象才可配置质量规则,如何添加监控对象,请参见添加监控对象

权限说明

  • 超级管理员、质量管理员和指标负责人支持为质量规则配置调度、告警等。

  • 质量负责人、普通用户需要额外具备逻辑表字段的读取权限,如需申请,请参见申请、续期和交还表权限

校验规则说明

指标参与质量规则校验时,如果触发了质量弱监控规则,系统会给您发送告警消息,便于您及时发现并处理异常;如果触发了质量强监控规则,系统会自动中断该表所在的任务,避免脏数据流入下游,同时系统会给您发送告警消息,便于您及时发现并处理异常。

质量规则试跑和运行区别

试跑和运行的区别在于执行的方式和显示的结果,试跑指对某个质量规则进行一次模式执行,以检测规则的正确性和运行情况,试跑的结果不会在质量报告中显示;运行指在特定时间内对质量规则进行检查,运行的结果会输出到质量报告中,便于用户查看与分析。

质量规则配置

  1. 在Dataphin首页,在顶部菜单栏选择治理 > 数据质量

  2. 单击左侧导航栏的质量规则,在指标页面,单击目标对象的名称,进入质量规则详情页面,配置质量规则。

  3. 质量规则详情页面,单击新建质量规则

    image

  4. 新建质量规则对话框,配置参数。

    参数

    描述

    基本信息

    规则名称

    自定义质量规则的名称。

    规则强度

    支持弱规则强规则

    • 如果您选择了弱规则,则质量规则校验的结果为异常时报警但不阻塞下游任务节点。

    • 如果您选择了强规则,则质量规则校验的结果为异常时报警,同时在有下游任务的情况下(代码检查调度、任务触发调度)会阻塞下游任务,防止污染数据扩散;如果没有下游任务(如周期质量调度),则仅告警。

    描述

    自定义质量规则描述。不超过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个字符。

    若属性字段的填写方式为范围区间,则配置方式如下:

    范围区间:常用于取值范围是连续数值或日期的情况。可选择>>=<<=四种符号。更多属性配置,请参见新建及管理质量规则属性

    调度属性配置

    调度方式

    支持选择已配置的调度;若暂未决定调度方式,您可创建质量规则后再配置。如需新建,请参见新建调度

  5. 单击保存,完成规则配置。

    您可以单击预览SQL,查看本次配置对比上次保存的配置,便于查看SQL变更。

    说明
    • 关键信息没有填写完整,预览SQL不可用。

    • 左边为上次保存配置的SQL预览,若未配置,则为空;右边为当前配置的SQL预览。

    规则配置列表

    您可以在规则配置列表页面查看已经配置的指标规则信息,并进行查看、编辑、试跑、运行、删除等操作。

    image

    区域

    描述

    筛选及搜索区

    支持按照对象或者规则名称进行快捷搜索。

    支持按照规则类型、规则模板、规则强度、试跑状态、生效状态进行筛选。

    说明

    若质量规则属性配置了可搜索、可筛选的业务属性且为启用状态,则可根据该属性进行搜索或筛选。

    列表区

    为您展示规则配置列表的对象类型/名称、规则名称/ID、试跑状态、生效状态规则类型规则模板规则强度调度类型、相关知识库文档信息,单击刷新前的image图标,可选择您需展示的规则列表字段。

    • 生效状态:建议生效规则前先进行试跑,针对试跑成功的规则开启生效状态。避免错误的规则阻塞线上任务。

      • 开启生效状态后,所选规则会按照配置的调度自动执行。

      • 停用生效状态后,所选规则不会自动执行,但可以手动执行。

    • 相关知识库文档:点击查看详情,查看规则关联的知识库信息。包括表名称、校验对象、规则以及相关知识库文档信息,同时,您可对知识库执行搜索、查看、编辑、删除操作。操作详情请参见查看知识库

    操作区

    您可进行查看、克隆、编辑、试跑、运行、调度配置、关联知识库文档、删除操作。

    • 查看:可查看规则配置详情。

    • 克隆:可快速克隆规则。

    • 编辑:编辑规则后,需重新试跑。

    • 试跑:支持选择已有调度自定义校验范围试跑规则,试跑后,可单击image图标查看试跑日志

    • 运行:支持选择已有调度自定义校验范围运行规则,运行后,可在校验记录中查看校验结果。

    • 调度配置:支持在弹框中筛选调度类型或用调度名称快捷搜索调度。也支持编辑调度。

    • 关联知识库文档:规则关联知识库后,可在质量规则和治理工作台中查看关联知识。支持选择未被关联的知识库。如需创建,请参见新建及管理知识库

    • 删除:删除此质量规则对象将删除对象下的所有质量规则,删除后不可撤销,请谨慎操作。

    批量操作区

    您可批量进行试跑、运行、配置调度、开启、关闭、修改业务属性、关联知识库文档、删除操作。

    • 试跑:支持选择已有调度自定义校验范围批量试跑规则,试跑后,可单击image图标查看试跑日志

    • 运行:支持选择已有调度自定义校验范围批量运行规则,运行后,可在校验记录中查看校验结果。

    • 调度配置:支持在对话框中筛选调度类型或用调度名称快捷搜索调度。也支持编辑调度,为质量规则批量配置调度。仅支持修改选中规则中在质量规则列表页面可编辑的规则。

    • 开启:批量开启生效状态后,所选规则会按照配置的调度自动执行。仅支持开启选中规则中在质量规则列表页面可编辑的规则。

    • 关闭:批量停用生效状态后,所选规则不会自动执行,但可以手动执行。仅支持关闭选中规则中在质量规则列表页面可编辑的规则。

    • 修改业务属性:当业务属性对应的字段取值类型为单选或多选时,支持批量修改业务属性。

      • 当业务属性对应的字段取值类型为多选时,支持追加或修改属性值。

        image

      • 当业务属性对应的字段取值类型为单选时,支持直接修改属性值。

        image

    • 关联知识库文档:规则关联知识后,可在质量规则和治理工作台中查看关联知识。支持为监控对象批量配置知识库。如需创建,请参见新建及管理知识库

    • 删除:支持批量删除质量规则的对象,删除后不可撤销,请谨慎操作。仅支持删除选中规则中在质量规则列表页面可编辑的规则。

新建调度

说明
  • 规则配置调度时,可以基于当前已有的调度快速进行配置(每个表上限为20个调度规则)。

  • 同一个规则最多能配置10个调度。

  • 调度配置完全一致时,支持自动去重。

  • 校验范围会作为质量校验时的过滤条件下发到质量校验的语句中,控制每次质量校验的范围。校验范围也会作为后续质量报告等下游的基本单元,质量报告的查看会以校验范围为最小查看粒度。

  1. 质量规则详情页面,单击调度配置页签,再单击新建调度按钮,进入新建调度对话框。

  2. 新建调度对话框中,配置参数。

    参数

    描述

    调度名称

    自定义调度名称。

    调度类型

    支持定时调度数据更新触发调度固定任务触发调度

    • 定时调度:根据设置的调度时间,支持定时、周期性地对数据进行质量检测,适合数据产出时间相对固定的场景。

      • 调度周期:质量规则运行会占用一定的计算资源,建议避免同一时间并发执行多条质量规则,以免影响生产任务的正常运行。调度周期包含小时分钟五种周期类型。

    • 数据更新触发调度:所有代码任务执行时,均会解析本次任务运行是否更新当前表指定的校验范围。适用于表的修改任务不固定或需要重点监控的表,即每次变更都需监控的情况。

      说明

      建议检验范围选择任务更新的分区(非分区表将校验全表),系统会自动识别所有数据变更并进行校验,避免遗漏。

    • 固定任务触发调度:在指定的任务运行成功后或运行前,执行配置的质量规则。支持选择引擎SQL、离线管道、Python、Shell、Virtual、Datax、Spark_jar、Hive_MR、数据库SQL节点的任务类型触发任务。适用于表修改任务固定的情况。

      说明

      固定任务触发只能选择生产环境任务,若规则强度配置了强规则,调度任务校验失败,可能会影响线上任务,请根据业务需求谨慎操作。

      • 触发时机:选择进行质量检测的触发时机。支持选择所有任务都运行成功后触发每个任务每次运行成功后均触发每个任务每次运行前触发

      • 触发任务:支持选择当前用户有运维权限的生产任务节点,可以根据节点输出名称搜索。

        说明

        当触发时机选择所有任务都运行成功后触发时,触发任务建议选择同调度周期的任务,避免因调度周期不同而导致规则延迟运行,质量检测结果延迟产出。

    调度条件

    默认关闭,开启后,在质量规则正式调度前,会先判断是否满足调度条件。满足条件才会正式调度,不满足条件则忽略本次调度。

    • 业务日期/执行日期:若调度类型选择定时调度(定时调度不支持执行日期)、数据更新触发调度固定任务触发调度,支持配置日期,可选择普通日历自定义日历,如何自定义日历,请参见新建公共日历

      • 若选择普通日历,则条件可选月份星期日期。例如下图:

        image

      • 若选择自定义日历,则条件可选日期类型标签。例如下图:

        image

    • 实例类型:若调度类型选择数据更新触发调度固定任务触发调度,支持配置实例类型,可选择周期实例补数据实例手动实例。例如下图:

      image

    说明
    • 至少配置一条规则。如需添加规则,请单击+添加规则按钮。

    • 最多配置10个调度条件。

    • 调度条件之间的关系可配置为且、或。

    校验范围

    当调度类型选择定时调度、固定任务触发调度时,校验范围支持自定义校验范围;当调度类型选择数据更新触发调度时,校验范围支持任务更新的分区、自定义校验范围。

    • 任务更新的分区:若检查任务中更新了分区,则直接按照任务更新的分区下发任务。

      说明
      • 动态分区场景可能解析不到分区,将不会进行质量校验。

      • 波动性校验规则(如校验分区大小、分区行数、字段统计值)需要指定分区,不支持任务更新分区校验范围。

      • 非分区表如有数据更新时将校验全表。

    • 自定义校验范围:对于无法解析的场景,可以使用自定义校验范围,按照业务日期或者执行日期来指定校验范围表达式。

      • 校验范围表达式:为可输入的下拉选择框,支持直接输入需要校验的范围,如ds='${yyyyMMdd}';也可以选择内置的校验范围表达式然后进行修改,以帮助您快速配置,分区表达式详情请参见内置分区表达式类型

        说明
        • 若有多个条件进行校验,可用andor进行连接,如province="浙江" and ds<=${yyyyMMdd}。

        • 若质量规则中配置了过滤条件,则校验范围表达式和过滤条件之间为AND关系,校验数据时,两个条件会一起进行过滤。

        • 校验范围表达式支持对全表进行扫描。

          注意:全表扫描将会消耗较大的资源,并且部分不支持全表扫描,建议配置分区表达式以避免全表扫描。

      • 校验范围预算:默认为业务日期当天。

  3. 单击确定,完成调度配置。

调度配置列表

调度创建完成后,您可以在调度配置列表进行查看、编辑、克隆、删除等操作。

image.png

区域

描述

筛选及搜索区

支持按照调度名称进行快捷搜索。

支持按照定时调度数据更新触发调度固定任务触发调度进行筛选。

列表区

为您展示规则配置列表的调度名称调度类型最后更新人最后更新时间信息。

操作区

您可以对调度执行编辑、克隆、删除操作。

  • 编辑:可以修改已配置的调度信息。

    重要

    所有引用此调度的规则配置将同步改变,请谨慎操作。

  • 克隆:可快速复制调度配置。

  • 删除:被规则配置引用的调度不支持删除。

告警配置

您可以给不同的规则配置不同的告警方式以实现区分告警,例如:为强规则异常配置电话告警,为弱规则异常配置短信告警;如果一个规则同时命中了多条告警配置,支持设置告警的生效策略。

说明

单个监控对象下支持创建不超过20个告警配置。

  1. 质量规则详情页面,单击告警配置页签,再单击新建告警配置按钮,进入新建告警配置对话框。

    image.png

  2. 新建告警配置对话框中,配置参数。

    参数

    描述

    覆盖范围

    支持选择所有规则所有强规则所有弱规则自定义

    说明
    • 单个监控对象下,所有规则、所有强规则和所有弱规则3种范围支持各配置一条告警,后续新增的规则根据规则强度自动匹配对应的告警;如需变更其中的某一条告警配置,可修改已有配置。

    • 自定义范围可选择当前监控对象下已配置的所有规则,不超过200条。

    告警配置名称

    单个监控对象下的告警配置名称唯一,不超过256个字符。

    告警接收人

    配置告警接收人及告警方式。需选择至少一种告警接收人及告警方式。

    • 告警接收人:支持选择自定义、值班表和质量负责人三种告警接收人。

      支持配置不超过5个自定义告警接收人;支持配置不超过3个值班表。

    • 告警方式:支持选择电话、邮件、短信、钉钉、飞书、企业微信、自定义渠道不同的接收方式。此接收方式可通过配置渠道设置进行管控。

  3. 单击确定,完成告警配置。

告警配置列表

告警配置完成后,您可以在告警配置列表中进行排序、编辑、删除操作。

image.png

序号

描述

①排序区

支持配置一条质量规则符合多条告警配置时的告警生效策略:

  • 命中的第一条告警配置生效:选择该告警策略时,只有规则命中的第一条告警配置生效,其他配置均不生效,此时支持对已配置的告警进行排序。单击规则排序,您可以选中告警配置名称前的image.png图标进行拖拽排序或选择操作列下的图标进行移动,图标从左到右依次为:置顶、置底。调整完告警顺序后,单击排序完成按钮,完成排序。

    image.png

  • 所有告警配置均生效:当前告警配置列表中的告警对当前监控对象下的质量规则均生效。

    例如:当您配置了多条告警配置且选择所有告警配置均生效时,系统会按照告警接收方式+告警接收人+告警规则合并告警;特殊情况下,如果告警接收人为同一个接收人,告警方式为自定义和质量负责人时,会按照合并策略合并告警消息。

    说明

    值班表不支持告警合并。

②列表区

为您展示告警配置的名称、生效范围、每种告警类型的具体接收人以及对应的告警接收方式。

生效范围:自定义告警支持查看配置的对象名和规则名,若该规则被删除,则无法查看对象名,建议您更新告警配置。

③操作区

您可以对配置的告警执行编辑和删除操作。

  • 编辑:支持修改已配置的告警信息。若修改告警接收人和告警方式,请及时同步相关人员,避免遗漏业务告警信息。

  • 删除:删除后,此条告警配置命中的规则将不再生效,请谨慎操作。

查看质量报告

单击质量报告,查看当前质量规则的规则校验概览规则校验明细

  • 您可根据异常结果、分区时间、规则或对象的名称关键字快捷筛选校验明细。

  • 在规则校验明细列表中的操作列单击image图标,查看质量规则的规则校验详情。

  • 在规则校验明细列表中的操作列单击image图标,查看质量规则的执行日志。

设置质量规则权限管理

  1. 单击权限管理,配置可查看详情,即指定成员查看校验记录详情、质量规则详情、质量报告。

    可查看详情:可选择所有成员仅超级管理员、质量管理员和质量负责人

  2. 单击确定,完成权限管理配置。

后续步骤

上述质量规则配置完成后,即可在指标规则列表页面查看。详情请参见查看监控对象列表