创建数据表质量规则
为了提升数据表质量监控的便捷性,Dataphin支持创建校验数据表的质量规则。数据表参与质量规则校验时,如果触发了质量弱监控规则,系统会给您发送告警消息,便于您及时发现并处理异常;如果触发了质量强监控规则,系统会自动中断该表所在的任务,避免脏数据流入下游,同时系统会给您发送告警消息,便于您及时发现并处理异常。本文为您介绍如何单独配置数据表的质量规则和批量配置数据表的质量规则。
前提条件
已发布数据表至生产环境。如何发布数据表至生产环境,请参见管理发布任务。
权限说明
超级管理员、质量管理员和资源负责人可以添加监控对象及引入Dataphin数据表资源。
超级管理员、质量管理员和质量负责人可以批量配置质量规则及新建、删除异常归档表。
质量负责人、普通用户需具备Dataphin数据表的读权限,如果没有权限,则需要申请数据表权限,详情请参见申请、续期和交还表权限。
超级管理员、质量管理员可查看所有Dataphin数据表的质量规则。
项目成员可查看自己所加入的项目的Dataphin数据表的质量规则。
普通成员(个人)可查看数据表的质量负责人是自己的Dataphin数据表的质量规则。
特殊的,若质量规则中开启了权限限制,则优先遵循质量规则的权限限制执行。
从不同视角查看质量规则
Dataphin支持从全局、项目、个人三个视角查看Dataphin数据表的质量规则。

全局:超级管理员、质量管理员可从全局查看所有Dataphin数据表质量规则。
项目:超级管理员、质量管理员支持切换所有项目查看Dataphin数据表的质量规则,项目成员仅可选择已加入的项目并查看该项目下的Dataphin数据表的质量规则。
个人:超级管理员、质量管理员支持切换至任一成员查看Dataphin数据表质量规则,普通成员仅可查看质量负责人是自己的Dataphin数据表质量规则并且不支持切换。
当从项目视角查看质量规则时,筛选项不展示所属项目。
当从个人视角查看质量规则时,筛选项不展示质量负责人。
步骤一:选择数据表
在Dataphin首页,单击顶部菜单栏的资产。
按照下图操作指引,进入添加监控对象对话框。
在添加监控对象对话框中,下拉选择参数后,单击配置质量规则。
如果您的表类型选择物理表,可以通过选择所属项目、环境筛选数据表。
如果您的表类型选择逻辑表,可以通过选择数据板块、环境筛选数据表。
步骤二:质量规则配置
质量规则支持自定义配置和引用数据标准监控(引用数据标准监控需开通数据标准模块)两种方式,自定义配置是基于系统内置/自定义质量规则模板快速创建,也支持自定义SQL,满足灵活的监控诉求;引用数据标准监控是引用当前资产对象映射到的数据标准已配置的质量规则,更好地满足标准约束。
自定义配置
数据表悬停新建质量规则选择自定义配置或单击新建质量规则,进入新建质量规则对话框。
在新建质量规则对话框,配置参数。
参数
描述
规则名称
自定义质量规则的名称。
规则强度
选择质量规则的强弱:
如果您选择了强规则,则质量规则校验的结果为异常时报警,同时在有下游任务的情况下(代码检查调度、任务触发调度)会阻塞下游任务,防止污染数据扩散;如果没有下游任务(如周期质量调度),则仅告警。
如果您选择了弱规则,则质量规则校验的结果为异常时报警但不阻塞下游任务节点。
描述
自定义质量规则描述。不超过128字符。
配置方式
模板创建:使用通用的系统模板和自定义的业务模板,快速创建质量规则。
系统模板:模板内置参数可配置,适合通用的规则创建。
自定义模板:模板预置参数,无需配置,一般用于含业务逻辑的规则创建。
自定义SQL:可通过SQL灵活自定义质量监控规则,适用于灵活复杂场景。
规则模板
下拉可选择规则模板,完整性、唯一性、及时性、有效性、一致性、稳定性、自定义SQL。
完整性:包括字段空值校验和字段空字符串校验。
唯一性:包含字段唯一性校验、字段分组个数校验和字段重复值个数校验。
及时性:包含时间函数比较、单表时间字段比较和两表时间字段比较。
有效性:包含字段格式校验、字段长度校验、字段值域校验、码表参照对比和数据标准码表参照对比(需开通数据标准模块)。
一致性:包含单表字段值一致性比较、单表字段统计值一致性比较、单字段业务逻辑一致性比较、两表字段值一致性比较、两表字段统计值一致性比较、两表字段业务逻辑一致性比较和跨源两表字段统计值一致性比较。
稳定性:包含表稳定性校验、表波动性校验、字段稳定性校验和字段波动性校验。
自定义SQL:包含自定义统计指标校验和自定义数据详情校验。
详情请参见创建全域数据表规则的模板类型说明。
规则类型
规则类型包含系统类型和自定义类型。
系统类型和模板有关,是模板最基础的属性。
支持用户自定义模板的类型,作为说明和筛选功能。
规则配置
规则配置因选择不同的规则模板而变化。详情请参见创建全域数据表规则的规则配置说明。
特殊说明:
校验表数据过滤:默认关闭,开启后可配置校验表的过滤条件或分区过滤或普通数据过滤,过滤条件将会直接追加至校验SQL中;如校验表有分区过滤需求,建议在调度配置中配置分区表达式,配置后会以校验分区为最小查看粒度查看质量报告。
当规则模板选择一致性/两表字段统计值一致性比较、一致性/跨源两表字段统计值一致性比较时,可选择是否开启对比表数据过滤,开启后可配置对比表的过滤条件或分区过滤或普通数据过滤,过滤条件将会直接追加至校验SQL中。
规则校验
数据质量规则校验后,结果会和异常校验的配置进行对比,符合条件则校验结果为不通过;同时触发告警等后续流程。
异常校验可用指标由模板和配置内容决定,支持多种条件的and / or条件,实际配置中建议小于3条。
详情请参见创建全域数据表规则的校验配置说明。
异常归档
默认关,开启后可以归档异常数据到文件或归档表中,质量校验后可以下载、分析归档的异常数据。
归档模式支持仅归档异常字段和归档完整记录。
仅归档异常字段:只去重归档当前监控字段,适用于通过单字段就可以完整确定异常数据的情况。
归档完整记录:归档异常数据所在的整条记录,适用于必须通过完整记录才能定位异常数据的情况。 注意:因归档完整记录会极大增加归档数据量,建议正常情况下都使用仅归档异常字段。
异常数据存储支持默认文件服务器和异常数据归档表。若未创见异常归档表,可点击管理异常归档表创建,详情请参见步骤五:添加异常归档表。
默认文件服务器:存储在默认的文件服务器位置,后续只能进行数据的下载。一个规则单次最多归档100条,建议只归档异常字段或小数据量时使用。
异常数据归档表:可以将异常数据存储到表中,后续可以直接读表进行数据分析或数据下载。自定义存储的大小和生命周期可以由您进行统一管理,有更高的灵活性,一个规则单次最多归档10000条。
注意:异常归档表需要满足特定的格式要求,否则可能会报错,详情配置请参见步骤五:添加异常归档表。
说明在归档表中针对本次校验的异常数据进行下载不超过1000条。
预览SQL
说明关键信息没有填写完整,预览SQL不可用。
左边为上次保存配置SQL预览,若未配置,则为空;右边为当前配置SQL预览。
单击确定。
引用数据标准监控
数据表悬停新建质量规则选择引用数据标准监控。
在引用数据标准监控对话框选择需要引用的数据标准规则。
说明引用后不支持修改规则详情配置,可自行配置调度、修改规则强弱等信息。
您可以根据有效性、唯一性、完整性、稳定性四种规则模板筛选标准规则,也可以输入对象名称进行搜索。
在引用数据标准规则对话框,支持修改规则名称、开启或关闭生效状态,您也可以点击关联标准下的标准编码查看标准详情。
您可点击操作列下的
图标查看质量规则。
单击添加选择规则,完成引用数据标准规则。
规则配置列表
质量规则创建完成后,您可在规则配置列表进行查看、编辑、试跑、运行、删除等操作。

区域 | 描述 |
①筛选及搜索区 | 支持按照对象或者规则名称进行快捷搜索。 支持按照规则类型、规则模板、规则强度、试跑状态、生效状态、规则来源进行筛选。 |
②列表区 | 为您展示规则配置列表的对象名称、规则名称、试跑状态、生效状态、规则类型、规则模板、规则强度、调度类型信息。
|
③操作区 | 您可进行查看、克隆、编辑、试跑、运行、调度配置、删除操作。
|
④批量操作区 |
|
步骤三:新建调度
规则配置调度时,可以基于该表格当前已有的调度快速进行配置(每个表上限20个调度规则)。
同一个规则最多能配置10个调度。
调度配置完全一致时,支持自动去重。
若当前表为Hologres分区表,建议使用固定任务触发调度。
校验分区会作为质量校验时的过滤条件下发到质量校验的语句中,控制每次质量校验的范围。校验分区也会作为后续质量报告等下游的基本单元,质量报告的查看会以校验分区为最小查看粒度。
单击新建调度。
在新建调度对话框,配置参数。
参数
描述
调度名称
自定义调度名称。
调度类型
支持定时调度、代码检查触发调度和固定任务触发调度。
定时调度:按照设置的时间,周期性的对数据进行质量检测,适合数据文档产出的场景。
调度周期:包含日、周、月、小时、分钟五种周期类型。
代码检查触发调度:在每一个代码任务执行时,会检查是否修改了该规则所覆盖的表/分区;如果涉及到配置了该调度方式的表发生变更,则会开始执行质量规则。
说明适用于表的修改任务不固定/重点监控表,每次变更都需要监控的情况。
固定任务触发调度:仅在指定的任务完成后,执行配置的质量规则。支持指定SQL、离线管道、Python、Shell、Datax、Spark_jar和Hive_MR的任务类型。
说明适用于表的修改任务固定的情况。
固定任务触发只能选择生产环境任务,若规则强度配置了强规则,调度任务校验失败,可能会影响线上任务,请根据业务需求谨慎操作。
触发任务:支持选择所有任务均完成触发、任一任务完成即触发和任一任务执行前触发。
调度条件
默认关闭,开启后,在质量规则正式调度前,会先判断是否满足调度条件。满足条件才会正式调度,不满足条件则忽略本次调度。
业务日期/执行日期:若调度类型选择定时调度(定时调度不支持执行日期)、代码检查触发调度、固定任务触发调度,支持配置日期,可选择普通日历或自定义日历,如何自定义日历,请参见新建公共日历与标签。
若选择普通日历,则条件可选月份、星期、日期。例如下图:
若选择自定义日历,则条件可选日期类型、标签。例如下图:
实例类型:若调度类型选择代码检查触发调度、固定任务触发调度,支持配置实例类型,可选择周期实例、补数据实例、手动实例。例如下图:
说明至少配置一条规则。如需添加规则,请单击+添加规则按钮。
最多配置10个调度条件。
调度条件之间的关系可配置为且、或。
校验范围
当调度类型选择代码检查触发调度时,需配置任务更新的分区或自定义分区。
任务更新的分区:若检查任务中更新了分区,则直接按照任务更新的分区下发任务。
注意:动态分区场景可能解析不到分区,将不会进行质量校验。
自定义分区:对于无法解析的场景,可以使用自定义分区,按照业务日期或者执行日期来指定校验的分区范围。分区表达式详情请参见内置分区表达式类型。
分区表达式
您可以自定义配置分区表达式,如ds='${yyyyMMdd}'。
也可以选择Dataphin内置分区表达式或对其进行修改,以帮助您快速配置,分区表达式详情请参见内置分区表达式类型。
说明若有多个分区条件进行校验,可用and或or进行连接,如
province="浙江" and ds<=${yyyyMMdd}。
若质量规则中配置了过滤条件,则分区表达式和过滤条件之间为and关系,校验数据时,两个条件会一起进行过滤。
若不填写分区表达式,则会对全表进行扫描。
注意:全表扫描将会消耗较大的资源,并且部分不支持全表扫描,建议配置分区表达式以避免全表扫描。
分区表达式触发
若选择代码检查触发调度或固定任务触发调度展示,默认开启。
开启分区表达式触发,则只有触发调度的分区满足分区表达式才会执行;如配置的分区表达式为每周一,则只有周一的分区更新会触发质量校验。
关闭分区表达式触发,则每一次代码触发都会执行质量校验,执行的是根据配置的业务日期计算出的分区表达式;推荐当代码中触发分区为动态分区或表达式时使用。
分区预算
默认业务日期当天。
单击确定。
调度配置列表
调度创建完成后,您可在调度配置列表进行查看、编辑、克隆、删除等操作

区域 | 描述 |
①筛选及搜索区 | 支持按照调度名称进行快捷搜索。 支持按照定时调度、触发调度进行筛选。 |
②列表区 | 为您展示规则配置列表的调度名称、调度类型、最后更新人、最后更新时间信息。 |
③操作区 |
|
步骤四:告警配置
单击告警设置后,再单击右上角的编辑,在告警配置页面,选择告警接收人及告警方式,可选择不超过5个告警接收人及不超过3个告警值班表。
如果质量规则校验的结果为异常,则告警信息会发送至告警接收人。
单击确定。
步骤五:添加异常归档表
异常归档表实现质量规则校验异常的记录归档。
单击异常归档,再单击添加异常归档表按钮。
在添加异常归档表对话框,配置参数。
添加方式支持选择已有表和新建表两种方式。增加了特殊的质量校验字段,异常数据归档不会写入原来的数据表。
选择已有表:支持选择同项目或同数据源表,归档表包含必须的质量监控表的所有字段及校验字段(如Dataphin质量规则ID、质量规则名称、质量校验时间、异常归档模式、校验日期等字段)。
新建表:可自定义表名,需在归档表所属项目或所属板块内,不超过128字符,默认填入当前表名_exception_data。添加成功后会在同库或同数据源新建表。
归档表包含必须的质量监控表的所有字段及校验字段(如Dataphin质量规则ID、质量规则名称、质量校验时间、异常归档模式、校验日期等字段)。
单击确定,完成异常归档表添加。
查看异常归档表列表
添加成功后,默认第一个为归档表。点击异常归档表的名称,可以查看字段、数据类型、字段描述信息。您可以对归档表执行设为默认、删除操作。
设为默认:若把该表设为默认,则异常数据只能归档到默认的归档表。
删除:仅删除和异常归档表的引用关系,不会删除异常归档表本身,删除后如果需要可以重新添加。
步骤六:查看质量报告
单击质量报告,查看当前质量规则的规则校验概览和规则校验明细。
您可根据异常结果、分区时间、规则或对象的名称关键字快捷筛选校验明细。
单击
图标,查看质量规则的规则校验详情。
单击
图标,查看质量规则的执行日志。

步骤七:设置质量规则权限管理
单击权限管理,指定成员查看校验记录详情、质量规则详情、质量报告。
可查看详情:可选择所有成员或仅超级管理员、质量管理员和质量负责人。
单击确定。
批量添加数据表质量规则
批量添加质量规则支持表级和字段级配置,便于提高规则配置效率。
按照下图操作指引,进入添加质量规则页面。
在添加质量规则页面,配置参数。
基本信息配置
字段级基本信息配置
表级基本信息配置
参数
描述
规则名称、规则强度、描述、配置方式、规则模板、规则类型
详情请参见步骤二:新建质量规则。
配置方式不支持自定义SQL。
对象筛选
需配置表类型、环境、所属项目后,单击筛选按钮筛选数据表。表类型包括物理表、事实逻辑表、维度逻辑表、汇总逻辑表。
如果您的表类型选择物理表,可通过选择环境、所属项目筛选数据表。
如果您的表类型选择逻辑表,可通过选择环境、数据板块筛选数据表。
对象选择
勾选您所需配置的数据表及该数据表的字段。
当规则模板选择稳定性-表稳定性校验和稳定性-表波动性校验时,支持表级配置。对象选择只需勾选数据表。
单击下一步。
单击取消后,此次配置的质量规则均不添加。
规则配置
参数
描述
基准表
对象选择所勾选的数据表。基于该表的字段进行规则详情配置。例如:A表有id、name两个字段,B表有id、age两个字段,C表有name、age两个字段,以A表为基准表,id为校验字段,则B表校验通过,C表校验不通过。
说明当规则模板选择复杂(即校验时除了校验字段外还需其他字段)配置模板时,需配置基准表。
当需批量配置对比字段,不同的表,字段不同,则基准表可提供快捷选择。
基准表适用场景:若有相似或者相同需求的情况下,推荐使用批量配置;若是完全不同的需求,使用基准表在第三步校验时一定会报错。
规则配置、规则校验、异常归档
详情请参见步骤二:新建质量规则。
单击下一步。
对象详情配置
字段级详情配置
您可查看所选数据表的字段校验信息,也可以修改规则名称,同时,您可以单击操作列下的
图标编辑该字段的规则配置和校验配置,也可以删除该字段或删除整个数据表。
表级详情配置
您可查看所选数据表校验信息,也可以修改规则名称,同时,您可以单击操作列下的
图标编辑该表的规则配置和校验配置,也可以删除该数据表。
完成配置后,单击添加规则。
在质量规则列表,配置调度后,单击完成,即可在Dataphin数据表规则列表页面查看。
批量添加数据表规则列表
建议在质量规则试跑成功后,并在生效状态开启的状态下保存。
批量质量规则创建完成后,您可在规则配置列表进行查看、编辑、试跑、运行、删除等操作。

区域 | 描述 |
①筛选及搜索区 | 支持按照对象或者规则名称进行快捷搜索。 支持按照试跑失败、未试跑、未生效、未配置调度进行筛选。 |
②列表区 | 为您展示规则配置列表的对象名称、规则名称、所属数据表/所属数据板块、试跑状态、生效状态、资源负责人、质量负责人、调度方式等信息。 生效状态:建议生效规则前先进行试跑,针对试跑成功的规则开启生效状态。避免错误的规则阻塞线上任务。
|
③操作区 | 您可进行查看、编辑、调度配置、试跑、转交质量负责人、删除操作。
|
④批量操作区 |
|
数据表规则列表
您可以在质量规则列表页面查看已经配置的数据表规则信息,并进行查看、运行、质量负责人管理、删除等操作。

序号 | 描述 |
①筛选及搜索区 | 您可以通过筛选条件过滤需要查询的质量规则。 您可以根据我负责的、校验开关、最近一次校验状态、质量负责人、表类型、数据板块、所属项目、资源负责人条件进行精确筛选。 |
②列表区 | 为您展示表名称、校验开关、生效/总质量规则数、最近一次校验状态、质量负责人、表类型、数据板块、所属项目数据表质量规则详细信息,同时您可以在操作列对规则进行查看质量规则详情、运行、查看质量报告、质量负责人管理、删除的操作。
|
③批量操作区 | 您可以批量选择任务,进行运行、质量负责人管理、开启、关闭、删除、权限管理操作。
|