数据管理DMS的数据质量功能可以通过自定义表或列维度的数据质量规则,结合任务流的稽核任务自动检查数据质量,保证数据的一致性、唯一性、充分性等,提升二次数据分析与开发的质量。

前提条件

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

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

背景信息

越来越多的数据需要进行二次数据分析与开发,但这些数据往往来源各异、结构多样、数据量大且相互依赖,在这样的情况下,保障数据正确、符合预期,提高数据质量显得尤为重要。例如,将获取到的数据投入二次数据分析前,先检验数据质量是否符合预期,以确保数据分析任务顺利进行。

名词解释

  • 数据质量规则:为保障数据符合某些预期,对表或列设置的规则。例如,表的行数需要为固定值,列的最大值为100等。
  • 稽核任务:用于监测与校验数据是否符合目标数据质量规则。设置质量规则和调度周期后,自动检查数据质量并生成报告。

操作步骤

  1. 登录数据管理DMS 5.0
  2. 进入表详情页面。您可以选择以下任意一种方式进入表详情。
    • 通过SQLConsole控制台进入。
      1. 在顶部菜单栏中,选择SQL窗口 > SQL窗口
      2. 请先选择数据库对话框中,搜索并选择目标数据库,单击确认
      3. 在右上角的扩展功能区域,单击表列表表详情
      4. 从操作列中,选择更多 > 查看表详情,进入表详情页面。
    • 通过搜索进入。
      1. 单击首页页签,在页面中间的搜索框中,输入目标表名称。
      2. 选择标签,单击目标表最右侧的详情按钮,进入表详情页面。
      表详情
  3. 单击数据质量页签。
  4. 单击创建规则,并在右侧弹出的面板中,配置参数。
    配置项 说明 举例:某列的最大值为100
    规则名称 定义规则的名称。 列的最大值为100
    规则类型 选择规则的类型,支持的选项:
    • 表规则:创建表级别的规则,例如检验表的行数是否符合预期。
    • 列规则:创建列级别的规则,例如检验列中空值的个数。
    列规则
    规则模版 选择系统内置规则模版,更多信息,请参见数据质量规则模板 列的最大值
    列名 选择规则所应用的目标列名。

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

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

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

    小于等于
    期望值 输入期望的目标值。 100
  5. 单击确定
    数据质量规则创建成功后,默认状态为已启用
    说明 您还可以在目标规则模板的操作列,执行以下操作:
    • 单击禁用,禁用目标规则模板。禁用后,该规则模板将无法新建稽核任务。

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

    • 选择更多 > 编辑,编辑数据质量规则。
    • 选择更多 > 日志,查看规则的历史版本。
  6. 在目标规则模板的操作列,选择更多 > 新建任务流
    新建任务流
  7. 系统自动跳转至任务编排页面,在任务编排中配置稽核任务节点,并发布该任务流。
    说明 更多信息,请参见任务编排概述
    设置任务流的调度周期并发布后,系统会自动根据调度周期和数据质量规则对数据进行检测并生成报告。

数据质量规则模板

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