您可以为数据表创建列维度或表维度的数据质量规则,以保证数据的一致性、唯一性、充分性等,提升二次数据分析与开发的质量。

前提条件

  • 目标实例的管控模式为安全协同模式,更多信息,请参见管控模式

  • 您具有如下任意权限。
    • 您的角色为管理员、DBA或结构只读,更多信息,请参见系统角色
    • 您为目标实例的实例Owner或实例DBA,更多信息,请参见编辑实例
    • 您具有表或表所属库的查询、变更、导出任意一个权限,更多信息,请参见查看我的权限

背景信息

随着企业的数字化发展,越来越多的生产数据可以被用来进行二次数据分析与开发。但该数据往往来源各异、结构多样、数据量大且相互依赖。在这样的情况下,保障数据的正确性与符合预期显得尤为重要。

为解决该类似问题,DMS提供了数据质量功能,在该功能中,您可以自定义数据质量规则,例如配置某列中空值的个数小于0。再结合任务流的稽核任务,根据您所配置的数据质量规则对数据开发任务进行定期巡检,以保证数据的一致性、唯一性、充分性等。

操作概览如下:

步骤 说明
步骤一:配置数据质量 按需为目标表创建数据质量规则。
步骤二:创建稽核任务
  • 为目标数据质量规则创建稽核任务,实现定期巡检。
  • 在具体的开发任务中,创建稽核任务,并选择目标数据质量规则,实现定期巡检。例如获取到生产数据在投入二次分析前,检验数据质量是否符合预期,确保数据分析任务的顺利进行。

步骤一:配置数据质量

  1. 登录新版DMS控制台
  2. 在页面顶部的搜索栏,输入目标表名称,并在弹窗中单击详情,进入目标表的表详情页面。
    全局搜索-详情
    说明 您也可以在SQLConsole中单击 表详情表列表)图标,再单击目标表名称,进入目标表的 表详情页面。
  3. 单击数据质量页签。
  4. 单击创建规则,并在右侧弹出的面板中,配置参数。
    配置项 说明
    规则名称 定义规则的名称。
    规则类型 选择规则的类型,支持的选项:
    • 表规则:创建表级别的规则,例如检验表的行数是否符合预期。
    • 列规则:创建列级别的规则,例如检验列中空值的个数。
    规则模版 选择系统内置规则模版,更多信息,请参见数据质量规则模板
    列名 选择规则所应用的目标列名。

    该参数仅在规则类型列规则时显示。

    比较方式 选择比较方式,实际值将与期望值进行比较。

    支持大于大于等于等于小于等于小于不等于

    期望值 输入期望的目标值。
    例如,您希望配置 newtest列中空值的个数小于等于10,您可以进行如下配置:
    • 规则名称newtest列空值小于等于10。
    • 规则类型列规则
    • 规则模版为列中空值的个数(固定值)。
    • 列名newtest列。
    • 比较方式小于等于
    • 期望值为10。
  5. 单击确定
    此时,您已创建数据质量规则,创建后该规则默认为 已启用状态,您可以基于该规则创建稽核任务,对数据进行检测,更多信息,请参见 步骤二:创建稽核任务
    说明 执行其他操作:
    • 选择更多 > 编辑,编辑数据质量规则。
    • 选择更多 > 日志,查看规则的历史版本。
    • 单击目标规则右侧的禁用,禁用该规则。禁用后,该规则将无法新建稽核任务。

      若该规则已应用在稽核任务中,则会禁用失败,请删除目标稽核任务后重试。

步骤二:创建稽核任务

稽核任务用于检查数据质量,设置质量规则和调度周期后,自动检查数据质量并生成报告。

  1. 登录新版DMS控制台
  2. 在页面顶部的搜索栏,输入目标表名称,并在弹窗中单击详情,进入目标表的表详情页面。
    全局搜索-详情
    说明 您也可以在SQLConsole中单击 表详情表列表)图标,再单击目标表名称,进入目标表的 表详情页面。
  3. 单击数据质量页签。
  4. 找到目标规则,选择更多 > 新建任务流
    新建任务流
    系统将跳转至任务编排功能页。
  5. 在任务编排页面中,配置稽核任务节点。
    1. 单击目标任务节点,并单击右侧的内容设置,编辑任务内容。
      稽核任务详情系统已默认选中当前数据库、表名及对应的质量规则。
    2. 单击保存
    说明 您也可以在该节点中增加规则或增加其他任务节点,更多信息,请参见 设计编排任务
  6. 配置任务流调度周期。
    任务流调度周期支持每月、每周、每天等多维度配置,您可以按需求选择调度周期,更多信息,请参见 配置调度
  7. 单击基础属性,打开开启消息通知开关。
    开启该开关后,该任务流的执行状态将会通知 责任人相关人员,更多信息,请参见 消息通知管理
    说明 您还可以按需配置 任务流名称责任人相关人员等基础属性。
  8. 配置完成后,发布任务流,更多信息,请参见发布任务流
    发布后,该任务将根据调度周期,及数据规则,对数据表进行检测。 通知示例如下: 数据质量通知

数据质量规则模板

规则类型 规则模版
表规则 表的行数(固定值):检验当前表的行数是否满足预期。例如配置表的行数小于10万行。
列规则
  • 列的最大值:检验某列中的最大值是否满足预期,例如配置表的主键最大值不能超过2147483647(即2³¹ - 1)。
  • 列的最小值:检验某列中的最小值是否满足预期,例如配置表中某零配件的字段最小值不能低于3。
  • 符合含通配符的该表达式的个数(固定值):检验某列中符合格式要求的个数是否符合预期,例如配置某字段中以a开头的个数必须小于0。
  • 符合该正则表达式的个数(固定值):检验某列中符合格式要求的个数是否符合预期,例如配置某列(存储电子邮箱)中符合正则表达式要求的个数必须大于100。
  • 列中空值的个数(固定值):检验某列中空值的个数是否满足预期,例如配置某列中空值的个数小于等于0。
  • 列中唯一值的个数(固定值):检验某列中唯一值的个数是否满足预期,例如配置某列中唯一值的个数大于等于100,以保障所有数据中一定会出现100个不同的值。
  • 列中重复值的个数(固定值):检验某列中重复的个数是否满足预期,例如配置某列中重复值的个数一定小于100,以保障所有数据中出现重复值的次数不会超过100。