监测数据质量

您可使用数据管理DMS的数据质量功能来自定义表或列维度的数据质量规则,并结合任务编排的稽核任务自动检查数据质量,保证数据的一致性、唯一性、充分性等,从而提升二次数据分析与开发的质量。

前提条件

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

  • 您具有如下任意权限。

    • 您的系统角色为管理员、DBA或结构只读,更多信息,请参见系统角色

    • 您为目标实例的实例Owner或实例DBA,更多信息,请参见编辑实例

    • 您具有表或表所属库的查询、变更、导出任意一个权限,更多信息,请参见查看我的权限

背景信息

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

名词解释

  • 数据质量规则:为保障数据符合某些预期,对表或列设置的规则。例如,表的行数需要为固定值,列的最大值为100等。

  • 稽核任务:用于监测与校验数据是否符合目标数据质量规则。设置质量规则和调度周期后,自动检查数据质量并生成报告。

操作步骤

  1. 登录数据管理DMS 5.0
  2. 进入表详情页面。您可以选择以下任意一种方式进入表详情。

    • 通过SQL Console控制台进入。

      1. 在顶部菜单栏中,选择SQL窗口 > SQL窗口

      2. 请先选择数据库对话框中,搜索并选择目标数据库,单击确认

      3. 在右上角的扩展功能区域,单击表列表表详情

      4. 操作列中,选择更多 > 查看表详情,进入表详情页面。

    • 通过搜索进入。

      1. 单击首页页签,在页面中间的搜索框中,输入目标表名称。

      2. 选择标签,单击目标表最右侧的详情按钮,进入表详情页面。

      表详情

  3. 单击数据质量页签。

  4. 单击创建规则,并在右侧弹出的面板中,配置参数。

    配置项

    说明

    示例值

    规则名称

    定义规则的名称。

    列的最大值为100

    规则类型

    选择规则的类型,支持的选项:

    • 表规则:创建表级别的规则,例如检验表的行数是否符合预期。

    • 列规则:创建列级别的规则,例如检验列中空值的个数。

    列规则

    规则模版

    选择系统内置规则模版,更多信息,请参见数据质量规则模板

    列的最大值

    列名

    选择规则所应用的目标列名。

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

    columns_test

    比较方式

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

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

    小于等于

    期望值

    输入期望的目标值。

    100

  5. 单击确定

    数据质量规则创建成功后,默认状态为已启用

    说明

    您还可以在目标规则模板的操作列,执行以下操作:

    • 单击禁用,禁用目标规则模板。禁用后,该规则模板将无法新建稽核任务。

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

    • 选择更多 > 编辑,编辑数据质量规则。

    • 选择更多 > 日志,查看规则的历史版本。

  6. 在目标规则模板的操作列,选择更多 > 新建任务流

    新建任务流

  7. 系统自动跳转至任务编排页面,在任务编排中配置稽核任务节点,并发布该任务流。

    说明

    更多信息,请参见概述

    设置任务流的调度周期并发布后,系统会自动根据调度周期和数据质量规则对数据进行检测。

数据质量规则模板

规则类型

规则模版

表规则

表的行数(固定值):检验当前表的行数是否满足预期。例如配置表的行数小于10万行。

列规则

  • 列的最大值:检验某列中的最大值是否满足预期,例如配置表的主键最大值不能超过2147483647(即2³¹ - 1)。

  • 列的最小值:检验某列中的最小值是否满足预期,例如配置表中某零配件的字段最小值不能低于3。

  • 符合含通配符的该表达式的个数(固定值):检验某列中符合格式要求的个数是否符合预期。例如配置某字段中以a开头的个数必须小于10。

  • 符合该正则表达式的个数(固定值):检验某列中符合格式要求的个数是否符合预期,例如配置某列(存储电子邮箱)中符合正则表达式要求的个数必须大于100。

  • 列中空值的个数(固定值):检验某列中空值的个数是否满足预期,例如配置某列中空值的个数小于等于0。

  • 列中唯一值的个数(固定值):检验某列中唯一值的个数是否满足预期,例如配置某列中唯一值的个数大于等于100,以保障所有数据中一定会出现100个不同的值。

  • 列中重复值的个数(固定值):检验某列中重复的个数是否满足预期,例如配置某列中重复值的个数一定小于100,以保障所有数据中出现重复值的次数不会超过100。