数据对账对于数据开发和数据迁移流程中的数据一致性至关重要,而跨源数据对账的能力是检验数据迁移或数据加工前后是否一致的关键指标。
数据质量监控中的对账作业支持跨源数据对账能力,可将创建的规则应用到两张表中进行质量监控,并输出对账结果。
前提条件
在DataArts Studio控制台的数据质量模块,“数据质量监控 > 对账作业”页面创建归属目录。基于某个数据连接创建对账作业,需要选择作业归属目录,请参见下图创建归属目录。
下表是目录导航栏按键说明
序号 | 说明 |
---|---|
1 | 新建目录 |
2 | 刷新目录 |
3 | 选择目录,单击右键,可新建目录、删除目录和对目录重命名。 |
创建作业
1.在DataArts Studio控制台首页,选择实例,点击“进入控制台”,选择对应工作空间的“数据质量”模块,进入数据质量页面。
2.选择“数据质量监控 > 对账作业”。
3.单击“新建”,在弹出的对话框中,参见下表配置相关参数。
参数名 | 说明 |
---|---|
作业名称 | 对账作业的名称,只能包含中文、英文字母、数字、“_”,且长度为1~64个字符。 |
描述 | 为更好的识别数据对账作业 ,此处加以描述信息。描述信息长度不能超过256个字符。 |
所属目录 | 数据对账作业的存储目录,可选择已创建的目录。 |
作业级别 | 支持提示,一般,严重和致命四种级别,作业级别决定发出通知消息的模板样式。 |
4.单击“下一步”,进入规则配置页面。您需要点击规则下图中红框内按钮,然后参见以下表“配置模板规则”配置数据对账规则。您也可选择添加对账规则。
打开对账作业规则配置
配置模板规则
模块 | 参数名 | 说明 |
---|---|---|
基本信息 | 子作业名称 | 在作业的执行结果中,每条规则对应一个子作业。为便于结果查看和日志定位,建议您补充子作业信息。 |
基本信息 | 描述 | 为更好的识别子作业,此处加以描述信息。 |
来源对象/目的对象 | 规则类型 | 来源对象的“规则类型”包括“表级规则”,“字段级规则”和“自定义规则”。字段级规则可针对表中的具体字段配置监控规则。此处选择为表级规则,页面中其他设置项对应为表级规则配置项。 目的对象的“规则类型”由来源对象的规则类型自动生成。 |
来源对象/目的对象 | 数据连接 | 来源对象/目的对象支持的数据源类型:DWS,MRS Hive,DLI,ORACLE、RDS(MySQL、PostgreSQL)。 从下拉列表中选择已创建的数据连接。 说明 规则都是基于数据连接的,所以在建立数据质量规则之前需要先到管理中心模块中建立数据连接。 针对通过代理连接的MRS HIVE,需要选择MRS API方式或者代理方式提交: MRS API方式:通过MRS API的方式提交。历史作业默认是MRS API提交,编辑作业时建议不修改。 代理方式:通过用户名、密码访问的方式提交。新建作业建议选择代理提交,可以避免权限问题导致的作业提交失败。 |
来源对象/目的对象 | 数据对象 | 在来源对象选择的数据表将和右侧目的对象的数据表做结果比较。选择配置的数据对账规则所应用到的表。 说明 数据表与数据库强相关,基于已选择的数据库。数据库基于已建立的数据连接。 |
来源对象/目的对象 | SQL | 当“规则类型”选择“自定义规则”时,需要配置该参数。此处需输入完整的SQL语句,定义如何对数据对象进行数据质量监控。 |
计算引擎 | 集群名称 | 选择运行对账作业的引擎。仅数据连接为DLI类型时,此参数有效。 |
规则模板 | 模板名称 | 该参数定义如何对数据对象做数据质量监控。 来源对象的模板名称包含内置的规则模板和用户自定义的规则模板。 目的对象的“模板名称”由来源对象的规则类型自动生成。 说明 模板类型与规则类型强相关,详情请参见新建规则模板章节中的 系统内置的规则模板一览表。除去系统内置规则模板外,您也可关联在新建规则模板中新建的自定义模板。 |
规则模板 | 版本 | 仅“模板名称”选择为自定义的规则模板时,需要配置该参数。自定义的规则模板发布后,会产生对应的版本号,此处选择所需的版本。 |
计算范围 | 选择扫描区域 | 支持选择“全表扫描”或“条件扫描”,默认为全表扫描。 当仅需计算一部分数据,或需周期性按时间戳运行质量作业时,建议通过设置where条件进行条件扫描。 |
计算范围 | where条件 | 输入where子句,系统会选择符合条件的数据进行扫描。 例如需要筛选数据表中“age”字段在(18, 60]区间范围内的数据时,where条件可设置为如下内容:age > 18 and age <= 60 where条件还支持输入为SQL动态表达式,例如当需要根据“time”字段筛选数据表中24小时前的数据时,where条件可设置为如下内容: time >= (date_trunc('hour', now()) - interval '24 h') and time <= (date_trunc('hour', now())) |
告警条件 | 告警表达式 | 此参数可选,如果您需要针对当前规则设定告警条件,则可以在此配置告警条件的表达式。 配置规则的告警条件后,系统通过“告警参数”的值,结合告警条件进行真假判断,如果结果为真则进行告警。另外,除了单一告警表达式的结果,您还可以通过逻辑运算符组成组成更复杂的告警条件进行告警。当前表达式中支持如下逻辑运算符,且可以通过“(”和“)”进行包围: +:相加 -:相减 *:相乘 /:相除 ==:等于 !=:不等于 >:大于 <:小于 >=:大于等于 <=:小于等于 !:非 ll:或 &&:与 例如,对账作业的来源侧和目的侧的“规则模板”为“表行数”时,您可以参考如下样例进行配置: 需要配置来源侧表行数小于100时告警,则此处可设置为“ ${1_1} < 100 ”,其中“${1_1} ”为通过告警参数配置的来源侧表“总行数”。需要配置来源侧表行数不等于目的侧表行数时告警,则此处可设置为“ ${1_1}!=${2_1} ”,其中“${1_1} ”为通过告警参数配置的来源侧表“总行数”,“${2_1} ”为通过告警参数配置的目的侧表“总行数”。需要配置来源侧表行数小于100或来源侧表行数不等于目的侧表行数时告警,则此处可设置为“ (${1_1}<100)||(${1_1}!=${2_1}) ”,其中“${1_1} ”和“${2_1} ”分别为通过告警参数配置的来源侧表和目的侧表的“总行数”,“|| ”表示满足两个条件之一即会告警。 |
告警条件 | 告警参数 | 此参数来源于规则模板的输出结果。您可以单击界面显示的参数从而输入告警表达式中的告警参数,单击后系统会在“告警表达式”输入框给出参数的表达式。 例如“规则模板”为“表行数”时,点击告警参数“总行数”,在“告警表达式”输入框会显示为“ ${1_1} ”。 |
告警条件 | 逻辑运算符 | 可选,本参数支持将单一告警表达式的结果进行逻辑运算,组成更复杂的告警条件。 您可以将鼠标光标放在“告警表达式”输入框处需要进行逻辑运算的两个告警表达式之间,然后单击输入如下之一运算符。另外,您也可以手动输入,当前表达式中支持如下逻辑运算符,且可以通过“(”和“)”进行包围: +:相加 -:相减 *:相乘 /:相除 ==:等于 !=:不等于 >:大于 <:小于 >=:大于等于 <=:小于等于 !:非 ll:或 &&:与 例如,“规则模板”为“表行数”,需要配置来源侧表行数小于100或来源侧表行数不等于目的侧表行数时告警,则此处可设置为“ (${1_1}<100)||(${1_1}!=${2_1}) ”,其中“${1_1} ”和“${2_1} ”分别为通过告警参数配置的来源侧表和目的侧表的“总行数”,“|| ”表示满足两个条件之一即会告警。 |
5.单击“下一步”,设置订阅配置信息,如果需要接收SMN通知,打开通知状态,选择通知类型和SMN服务主体,如下图。
订阅配置
6.单击“下一步”,选择调度方式,支持单次调度和周期调度两种方式,周期调度的相关参数配置请参见下表“配置周期调度参数”。配置完成后单击“提交”。
说明
单次调度会产生手动任务的实例,手动任务的特点是没有调度依赖,只需要手动触发即可。
周期调度会产生周期实例,周期实例是周期任务达到启用调度所配置的周期性运行时间时,被自动调度起来的实例快照。
周期任务每调度一次,便生成一个实例工作流。您可以对已调度起的实例任务进行日常的运维管理,如查看运行状态,对任务进行终止、重跑等操作。
只有支持委托提交作业的MRS集群,才支持对账作业周期调度。支持委托方式提交作业的MRS集群有:
MRS的非安全集群。
MRS的安全集群,集群版本大于 2.1.0,并且安装了MRS 2.1.0.1以上的补丁。
配置周期调度参数
参数名 | 说明 |
---|---|
生效日期 | 调度任务的生效日期。 |
调度周期 | 选择调度任务的执行周期,并配置相关参数。 分钟 小时 天 周 说明 调度周期选择分钟/小时,需配置调度的开始时间、间隔时间和结束时间。 调度周期选择天,需要配置调度时间,即确定了调度任务于每天的几时几分启用。 调度周期选择周,需要配置生效时间和调度时间,即确定了调度任务于周几的几时几分启用。 |
导出对账作业
系统支持批量导出对账作业,一次最多可导出200个对账作业。
1.选择“数据质量监控 > 对账作业”,选择要导出的对账作业。
2.单击“导出”,弹出“导出对账作业”对话框。
3.单击“导出”,切换到“导出记录”页签。
4.在导出文件列表中,单击最新导出文件对应的“下载”,可将质量作业的Excel表格下载到本地。
导入对账作业
系统支持批量导入对账作业,一次最大可导入1M数据的文件,并且最多200个对账作业。
1.选择“数据质量“监控” > 对账作业”,单击“导入”,弹出“导入对账作业”对话框。
2.在“导入配置”页签,选择模板名称重名策略。
- 终止:如果对账作业名称有重复,则全部导入失败。
- 跳过:如果对账作业名称有重复,会忽略后继续导入。
- 覆盖:如果对账作业名称有重复,会覆盖现有同名作业。
3.单击“上传文件”,选择准备好的数据文件。
说明
可通过如下两种方式填写数据文件:
- (推荐使用)通过“导出”功能,可将数据直接/或修改后批量导入系统。
- 通过“下载Excel模板”,将数据填写好,再导入至系统中。
4.分别配置数据连接、集群、目录、主题、的映射资源信息。单击“导入”,将填好的Excel表格模板导入到系统。
- 数据连接:选择导入后的数据连接类型。
- 集群:如果数据连接类型是DLI,需要选择对应的队列。
- 目录:选择导入后的对账作业存储目录。
- 主题:如果配置了消息通知,需要选择主题。
5.单击“导入记录页签”,可查看对应的导入记录。