You need to enable JavaScript to run this app.
导航

配置双数据源校验规则

最近更新时间2024.04.02 16:18:56

首次发布时间2023.11.06 20:39:32

双数据源校验用于验证任意两种数据源之间的数据是否一致,可以是两种相同的数据源,也可以是两种不同的数据源。
该校验规则执行时,并非是对明细数据进行对比(如两份数据逐条校验),而是通过对两种数据源内的聚合指标做对比,来校验是否一致,比如:

  • 数据源A的条数(count*)与数据源B的条数(count*)是否一致。
  • 数据源A的字段A的SUM值与数据源B的字段A的SUM值是否一致。

因此,您需要定义以上聚合的指标,才可以完成该对比校验。

1 前提条件

  • 已在概览页面购买大数据分析湖仓一体DataOps 敏捷研发分布式数据自治解决方案。
  • 已购买 EMR 引擎服务。
  • 比对双方数据源网络已打通或在同一个 VPC 内。

2 创建规则

  1. 登录 DataLeap 控制台。
  2. 选择数据质量 > 数据监控 > 离线数据监控 > 监控对象,进入监控对象页面。
  3. 在页面右上角的项目下拉列表中,选择要管理的项目。
  4. 单击双数据源校验页签,进入双数据源校验页面。
    图片
  5. 引擎下拉列表中,选择要配置的引擎和对应的实例后,单击新建规则按钮,进入规则创建页面。

    说明

    引擎LAS 时,暂不支持新建规则。

  6. 设置相关参数后,根据页面提示,依次单击下一步按钮,设置完成后,单击创建规则按钮完成新建。

创建双数据源校验规则相关参数说明如下表所示。其中名称前带 * 的参数为必填参数,名称前未带 * 的参数为可选参数。

参数

说明

双数据源校验逻辑-选择数据源A

*数据源类型

进行比对的数据源A的类型,支持 MySQL、StarRocks、Doris、Hive 四个选项,下拉可选。

*数据源

使用的所选类型的数据源,自动填充一个已在控制台中登记的数据源,下拉可选其他。
登记数据源的相关说明请参见数据源管理

*XX查询语句

对应所选类型的查询语句,如 MySQL查询语句,按需输入。

说明

  • MySQL、StarRocks、Doris均与开源版本语法保持一致。当选择 StarRocks 或 Doris 时,页面会显示相应的语法提示StarRocks语法说明Doris语法说明,以供快速查看。
  • 仅支持单行聚合数据比对。

双数据源校验逻辑-选择数据源B

*数据源类型

进行比对的数据源B的类型,支持 MySQL、StarRocks、Doris、Hive 四个选项,下拉可选。

*数据源

使用的所选类型的数据源,自动填充一个已在控制台中登记的数据源,下拉可选其他。

*XX查询语句

对应所选类型的查询语句,如 MySQL查询语句,按需输入。

说明

  • MySQL、StarRocks、Doris均与开源版本语法保持一致。当选择 StarRocks 或 Doris 时,页面会显示相应的语法提示StarRocks语法说明Doris语法说明,以供快速查看。
  • 仅支持单行聚合数据比对。

双数据源校验逻辑-关联维度(通过关联维度可实现检验字段的细粒度比对)

source维度

源端数据源A查询语句产出的维度字段,可配置多个。

说明

配置多个维度字段可能会导致校验任务执行时长增加。

target维度

目标端数据源B查询语句产出的维度字段,可配置多个。

双数据源校验逻辑-字段映射及逻辑检查

*source字段

源端数据源A查询语句产出的指标字段,至少配置一个。

*target字段

目标端数据源B查询语句产出的指标字段,至少配置一个。

*报警条件

是指规则发出报警时,指标需要满足的条件。当监控指标被计算出来后,如果满足报警条件,就会发出报警。
报警条件支持不相等差值绝对值大于两种报警选项,多个报警条件之间的关系为

  • 不相等:若A指标和B指标不相等,则发出报警。
  • 差值绝对值大于:若A指标和B指标的差值绝对值大于所设置的数值,则发出报警。

设置监控规则

*规则名称

该监控规则的名称,根据所选两端数据源类型和日期自动创建,支持手动修改。

描述信息

规则的描述信息。

设置监控规则-执行方式

*执行方式

监控规则的执行方式,支持关联任务、定时调度和暂不设置三种方式。

  • 关联任务:按照关联任务的调度时间执行。
  • 定时调度:自行设置监控规则的执行时间。
  • 暂不设置:不自动调度执行,可按需手动调度。

*任务名称

要关联任务的名称,可通过任务名称关键词或ID进行搜索选择。
执行方式选择关联任务时,需设置该参数。

说明

  • 仅支持关联当前项目下调度频率为小时/天/周/月级的离线任务。
  • 该任务每次运行完成(包括调度、重跑、回溯),会启动该监控规则的执行。

*规则强弱

提供强、弱两个配置选项。

  • 当选择时,需设置熔断方式。任务执行完成之后会进入强规则运行阶段,由熔断方式决定下游任务运行情况。
  • 如果是弱规则,任务会继续运行,如果失败仅发生报警通知,不会阻塞下游任务运行。

执行方式选择关联任务时,需设置该参数。

*熔断方式

如果是强规则,可选择以下两种熔断方式:

  • 在规则运行完成之前,实例将一直处于运行中状态:是指若触发强规则告警,则实例状态置为失败,阻塞下游任务运行;若正常完成则置为成功。
  • 若规则运行超过 X 分钟仍未结束,直接置实例为成功:是指规则运行超过设定时间,会触发告警通知,下游仍会继续运行,但可能存在数据质量污染风险,需要及时关注监控结果。超时时间可自行设定,取值范围为0~200。

*执行频率

任务监控规则执行频率,提供分钟级、小时级、天级三个选项。
执行方式选择定时调度时,需设置该参数。

*执行时间

根据执行频率,设置具体的执行时间。
执行方式选择定时调度时,需设置该参数。

报警设置

*报警渠道

支持邮箱、短信、电话、Webhook 和飞书的告警方式,支持多选。

说明

  • 配置相应的飞书报警机器人后,才会显示飞书选项。报警机器人由您自行创建并配置,相关操作说明请参见告警机器人配置
  • 当选择电话报警时,会默认选中飞书,若支持飞书渠道,则会发送飞书消息。

*hookUrl

Webhook 请求地址,以 http 或 https 开头。
从下拉列表中选择 http 或 https,填写 Webhook URL 地址。欲了解详细的配置说明,请参见 Webhook 使用说明
报警渠道选择 Webhook 时,需设置该参数。

说明

设置 Webhook 后,通知消息将主动推送至对应 hookUrl 中。

*报警对象

接收报警的用户、飞书群或值班计划接收人。

  • 报警渠道选择邮箱短信Webhook 时,需选择接收报警的用户或值班计划。
    • 用户:输入用户账号关键词后,在下拉列表中选择,支持设置多个。
    • 值班计划:输入值班计划名称的关键词后,在下拉列表中选择。设置后,报警消息将发送至值班计划中的接收人。
  • 报警渠道选择电话飞书时,需设置接收报警消息的用户、值班计划或您所加入的飞书群。
    • 用户:报警消息将发送至用户名对应的飞书中。
      输入用户账号关键词后,在下拉列表中选择,支持设置多个。
    • 飞书群:报警消息将发送至飞书群ID对应的飞书群中。
      可通过飞书开放平台的开发工具模块,查看要输入的飞书群ID。获取ID的相关说明可通过下拉列表中的获取群ID查看。
    • 值班计划:报警消息将发送至值班计划中接收人的飞书中。
      输入值班计划名称的关键词后,在下拉列表中选择。

    说明

    • 将配置好的数据质量报警机器人加入飞书群后,才可发送消息至相应的飞书群。
    • 可通过查看值班计划按钮,查看值班计划列表及值班设置是否符合预期,并支持添加新值班计划,相关操作说明请参见值班管理

*报警形式

支持普通和紧急两种形式。
报警渠道选择飞书时,才需设置该参数。

*报警发送

报警发送的次数。

  • 发送次数 X:可按需配置发送的次数,默认 1 次。
  • 无限制,直至手动ACK解除:无次数限制,若取消发送,需手动ACK(Acknowledgement)来解除报警。
    • 报警频率
      若不及时ACK,系统会从首次报警起至次日(天级监控至次日00:00点;小时级监控至次日对应小时)按照固定频率发起规则校验,若不通过则触发报警。
    • 报警ACK
      ACK表示您已知晓这个报警信息,并会采取相应行动处理,不希望再次收到报警。ACK某个监控后,在设置的时间段内不会重复报警,最长23小时59分钟,过期后将再次发起重复检测。
      综上,建议及时ACK或进行任务/数据处理!

说明

  • 报警渠道选择飞书时,才支持无限制,直至手动ACK解除选项。收到报警消息后,可在飞书端执行报警ACK操作。
  • 报警形式选择紧急时,自动选中无限制,直至手动ACK解除,不可编辑。

*发送间隔

报警发送的间隔时间,默认5分钟,可编辑。

*报警免打扰

可选择是否开启报警免打扰。
当选择开启时,可按需设置免打扰的时间段。

3 管理规则

对已创建的双数据源校验规则,可进行相应的管理操作,步骤如下:

  1. 登录 DataLeap 控制台。
  2. 选择数据质量 > 数据监控 > 离线数据监控 > 监控对象 > 双数据源校验,进入双数据源校验页面。
    图片
  3. 在页面右上角的项目下拉列表中,选择要管理的项目。
  4. 可执行以下操作:
    • 设置搜索信息,搜索符合条件的监控规则。
    • 单击某条规则名称操作列的 ... > 试跑按钮,在弹出的窗口中,设置试跑时间,可以开启新的试跑。
    • 单击某条规则名称操作列的 ... > 开启/关闭按钮,在弹出的确认对话框中,单击确定按钮,可以开启/关闭该规则。
    • 单击某条规则名称操作列的编辑按钮,在编辑规则页面中,可以修改其规则信息。
    • 单击某条规则名称操作列的 ... > 删除按钮,在弹出的确认对话框中,单击确定按钮,可以删除该规则。
    • 单击某条规则名称操作列的 ... > 关联任务按钮,在弹出的窗口中,可以设置该规则的关联任务。
    • 单击某条规则名称操作列的 ... > 分享链接按钮,可以复制相应对象的链接。
    • 单击某条规则名称操作列的 ... > 近7天结果按钮,跳转到运行结果页面,查看该规则截止到操作当天的7天监控结果。
    • 单击某条规则名称操作列的 ... > 转让Owner 按钮,在弹出的窗口中,可以选择将规则转让给新的owner。
    • 勾选一条或多条规则后,单击对应的按钮,执行批量操作。