# 数据质量 数据质量模块主要用于评估、监控和提高数据的质量。 它是数据管理流程中的一个重要组成部分,可以帮助组织确保数据的准确性、完整性、一致性和可靠性,从而支持业务决策和分析。 数据质量模块包括:质量规则、质量作业、质量问题三个子模块。 ## 质量规则 ### 简介 质量规则模块用于定义和管理数据质量规则。数据质量规则是一组规则或标准,用于评估数据的质量和完整性。 这些规则可以是业务规则、技术规则或法规遵从性规则,旨在确保数据的准确性、一致性、完整性和可靠性。 质量规则具体分为规则模板和自定义规则。 ### 体系 质量规则通过左侧的树形结构进行管理,其中包含最多两级文件夹。 第二级文件夹下只能创建目录作为叶子节点,目录下可以挂载规则模板或自定义规则,并在右侧列表中展示。 ![image-20230314175543692](../images/quality/rule/infra.png) ### 规则模板 规则模板是一组预定义的规则,用于评估和监测数据的质量。数据质量规则允许用户自定义带有占位符的SQL模板,占位符分为表占位符和列占位符。 在后续创建质量作业时,数据管理人员可以从模板库中选择适合他们的模板,选择对应的表或列对占位符进行填充,以适应特定的业务需求。 规则模板通过其检查对象可以分为表级或列级的模板。 #### 列表 规则模板列表中会展示 `名称、状态、级别、校验类型、创建人、创建时间、备注`等信息,并可通过部分列进行筛选或排序。 点击左侧不同文件夹或目录可以显示其内部包含的规则模板。 ![image-20230314175626646](../images/quality/rule/template_list.png) #### 新建 新建规则模板的入口有下面两种: 1. 可通过点击体系结构中目录右侧的图标并选择`新建规则模板` 2. 点击右侧列表中的`新建规则模板`按钮 ![image-20230314175707246](../images/quality/rule/create_entrance.png) 进入新建页面后,需要填写或选则 `名称、状态、级别、校验类型、备注、规则目录`等基本信息 同时填写规则模板的核心内容 -- SQL模板 ##### SQL模板 SQL模板支持将表或者列转换为对应的占位符,其它语法均可参数标准的SQL语法。 当内容被两个大括号包围时,会被识别为表占位符,当内容被单个大括号包围时,会被识别为列占位符。 表占位符被替换为实际表后,会带上相应的schema;表占位符被替换为实际列后,只会被替换为实际的列名。 占位符被实时识别之后会以列表的形式作为输入参数显示在输入框的下方。 ![image-20230315103316753](../images/quality/rule/template_sql.png) ##### 试运行 在模板创建之前必须进行试运行,点击试运行按钮即可弹出试运行的配置框。 将对应的占位符替换为实际的表或列之后,点击对应按钮开始运行。 试运行之后页面会获取到对应的SQL输出,需要选择其中一列作为规则模板的输出并点击提交即可完成创建。 ![image-20230315103435821](../images/quality/rule/template_trial.png) #### 上下线及审批 点击上下线按钮后,该模板会进入审批流程。审批流程通过后,模板才会实际上下线。 只有上线状态的模板,在作业创建时才会被显示。 如果没有作业依赖已上线的模板,该模板才能被申请下线。 ![image-20230315103610531](../images/quality/rule/template_approval.png) #### 删除 点击删除或批量删除按钮可以直接删除未上线的模板 非`未上线`状态的模板不允许删除 #### 权限 点击权限按钮可以为对应的模板设置相应的权限。 ### 自定义规则 自定义规则允许用户在创建质量作业任务时,填写不带占位符的规则SQL。 ![image-20230315112331360](../images/quality/problem/udrules.png) ## 质量作业 ### 简介 数据质量作业允许用户批量管理、检查和运行数据质量任务。 质量作业由左侧的树状体系结构进行管理。作业内部又分为任务组和任务。 ### 体系 质量规则通过左侧的树形结构进行管理,其中包含最多两级文件夹。 第二级文件夹下只能创建目录作为叶子节点,目录下可以挂载规则模板或自定义规则,并在右侧列表中展示。 ![image-20230315103750500](../images/quality/job/infra.png) ### 创建 创建质量作业时,首先需要选择创建视角: 数据视角 或 规则视角。 然后需要填写相应的基本信息,如`名称、备注`等 ![image-20230315103843609](../images/quality/job/create_view.png) #### 数据视角 数据视角下,任务组以检查对象进行分组。 选定任务组的检查对象后,可以在任务组下创建不同的任务。 这些任务可以选择不同的规则模板对任务组中的检查对象进行检查。 选择模板后,需要手动点击模板中的占位符并选择对应的元数据进行填充。 同时对预警及问题数据抽取等进行配置。 如果选择保存问题数据,这些问题数据将被抽取到平台中的临时存储数据库中,可以通过`系统设置`页面进行全局的设置。 同时,也可以不依赖规则模板,通过创建自定义的规则SQL形成自定义任务。任务创建成功后,这些自定义任务中的SQL会形成自定义规则展示在质量规则的页面中。 ![image-20230315104001266](../images/quality/job/create_data_view.png) #### 规则视角 规则视角下,任务组以规则模板进行分组。 选定任务组所使用的规则模板后,可以在任务组下创建不同的任务,这些任务可以选择不同的检查对象。 选择数据对象后,仍需要手动点击模板中的占位符并选择对应的元数据进行填充。 同时对预警及问题数据抽取等进行配置。触发预警条件会生成相应的质量问题,并按需抽取问题数据。 #### 调度配置 配置是否开启定时以及定时调度规则等信息 ![image-20230315104114059](../images/quality/job/dispatch.png) #### 试运行 质量作业配置完成后,需要进行试运行,试运行成功后方可创建。 如果试运行失败,会将失败信息显示在对应的任务配置栏中。 ![image-20230315104215261](../images/quality/job/trial.png) ### 上下线及审批 点击上下线按钮后,该作业会进入审批流程。 已上线的作业不允许删除和修改。 ![image-20230315104327933](../images/quality/job/approval.png) ### 运行及状态 作业的运行状态共有下面7种 - 尚未检查 - 正在检查 - 检查完成 - 检出异常 - 运行失败 - 元数据被删除 - 跳过检查 ### 权限 点击权限按钮可以为对应的质量作业设置相应的权限。 ### 删除 点击删除或批量删除按钮可以直接删除未上线的模板 非`未上线`状态的模板不允许删除。 ## 质量问题 当质量任务运行成功并触发了预警时,会生成相应的质量问题。 ### 问题列表 质量问题以列表形式展示,内容包括`名称、状态、告警级别、关联任务、问题数据、元数据类型、关联元数据、源系统名称、问题类别、创建方式、创建人、创建时间、负责人、关闭时间`等信息。 同时支持批量关闭、删除、搜索、刷新列表等功能。 点击`问题名称`可进入相应的问题详情页 点击问题上对应的按钮可以进行`修复、申请关闭、删除、权限设置`等操作 ![image-20230315105127305](../images/quality/problem/list.png) ### 问题详情 分为`基本信息`和`问题数据清单`两个页面 #### 基本信息 展示列表中的基本信息以及检出问题的检查SQL 支持对问题名称和问题概要进行编辑 ![image-20230315110708204](../images/quality/problem/baseinfo.png) #### 问题数据清单 如果对应的任务中选择了保存数据且抽取到了相应的问题数据,该页面会展示相应数据列表 ![image-20230315110743378](../images/quality/problem/data_list.png) ### 问题修复 在`问题列表`或`问题数据清单`中点击修复按钮即可对数据进行即时修复,修复之后的数据如需恢复到对应的元数据表中,可借助Wasp产品实现。 ### 问题关闭 点击关闭按钮即可申请关闭相应的质量问题,在审批通过后该问题即被关闭 ![image-20230315105303897](../images/quality/problem/close.png) ### 问题删除 已关闭的问题才能进行删除,删除时会将问题数据清单一并删除