You need to enable JavaScript to run this app.
导航
配置使用双数据源校验规则
最近更新时间:2024.11.29 16:40:00首次发布时间:2024.11.29 16:40:00

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

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

因此,您需要定义以上聚合的指标,才可以完成该对比校验。
当前数据质量仅支持 EMR 引擎下的双数据源校验,本文将为您介绍如何操作。

1 前提条件

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

2 EMR 集群初始化

EMR 引擎上传 Spark Jar 包后才能正常使用。若没有上传,当选择相应 EMR 引擎时,系统会弹窗提示您上传,操作如下:

  1. 登录 DataLeap 控制台。
  2. 选择数据质量 > 数据监控 > 离线数据监控 > 监控对象,进入监控对象页面。
  3. 在页面右上角的项目下拉列表中,选择要管理的项目。
  4. 单击双数据源校验页签,进入双数据源校验页面。
  5. 引擎下拉列表中,选择 EMR 引擎和对应的实例,弹出作业程序包未上传提示窗口。
    Image
  6. 单击确定按钮上传程序包,等待几秒钟,待系统弹出上传成功的提示,则表示上传成功。

    说明

    • 具备 EMR 引擎的根目录读写权限的账号才能执行上传操作,主账号默认具备该权限。
    • 数据监控数据探查数据对比页面选择 EMR 引擎实例后,系统都会进行 Spark Jar 的扫描,可通过任一入口进行上传,上传成功一次即可。

2 创建规则

Spark Jar 包上传成功后,即可创建规则,操作如下:

  1. 单击新建规则按钮,进入规则创建页面。
    Image

  2. 根据页面提示,设置相关参数并依次单击下一步按钮。
    创建双数据源校验规则相关参数设置如下表所示。欲了解其他配置情况的详细介绍可参见配置双数据源校验规则

    参数

    说明

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

    *数据源类型

    进行比对的数据源 A 和数据源 B 的类型,均下拉选择 StarRocks

    *数据源

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

    *StarRocks查询语句

    输入所选类型的查询语句,例如:

    • 数据源 A:select count(*) as cnt,avg(price) as price, address, id from 库名.表名1 group by address,id
    • 数据源 B:select count(*) as cnt,avg(price) as price, address, id from 库名.表名2 group by address,id

    说明

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

    source维度

    源端数据源A查询语句产出的维度字段,根据示例的查询语句配置两个,分别为 addressid

    说明

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

    target维度

    目标端数据源B查询语句产出的维度字段,分别填写与 source维度对应的两个 addressid

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

    *source字段

    源端数据源A查询语句产出的指标字段,根据示例的查询语句配置两个,分别为 cntprice

    *target字段

    目标端数据源B查询语句产出的指标字段,分别填写与 source字段对应的两个 cntprice

    *报警条件

    两个指标的报警条件均选择不相等,即若A指标和B指标不相等,则发出报警。

    说明

    两个报警条件之间的关系为

    设置监控规则

    *规则名称

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

    设置监控规则-执行方式

    *执行方式

    监控规则的执行方式,选择关联任务,即按照关联开发任务的调度时间执行。

    *任务名称

    通过任务名称关键词或ID进行搜索并选择要关联任务的名称。

    说明

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

    *规则强弱

    选择,即如果失败仅发生报警通知,不会阻塞下游任务运行。

    报警设置

    *报警渠道

    选择邮箱+站内信

    *报警对象

    选择接收报警的用户,默认当前用户,可按需修改。

    *报警发送

    报警发送次数,默认 1 次。

    *发送间隔

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

    *报警免打扰

    选择关闭

  3. 设置完成后,单击创建规则按钮完成新建并展示在列表中。
    Image

3 运行规则并查看结果

  1. 单击该规则操作列的试跑按钮,在弹出的窗口中,设置试跑时间,可以开启新的试跑。
    Image
  2. 单击确定按钮,跳转到该规则的运行结果页面,待运行结束后,可以查看报警状态。
    Image
  3. 单击该监控信息操作列的运行日志按钮,可以查看该规则的监控运行日志,查找问题。
    Image