快速上手 | Datavines 两表值比对规则用法

Datavines 是一站式开源数据可观测性平台,提供元数据管理、数据概览报告、数据质量管理,数据分布查询、数据趋势洞察等核心能力,致力于帮助用户全面地了解和掌管数据,让您做到心中有数。


场景

比较某张表(有时间分区列)今天的数据量和昨天的数据量,如果今天的数据量小于昨天的数据量就需要告警。

思路

使用两表值比对规则配合内置时间参数。

使用两表值比对的规则,通过编写 SQL 语句来统计今天和昨天的数据量,然后比较两个值,如果今天的值大于昨天的值则为真,否则为假。

步骤

  • 选择数据比对作业中的两表值比对规则
  • 选择对应的数据库和表,并编写计算实际值 SQL 语句。
    • 语句里面用到了$[today]时间变量,系统会自动替换成今天的日期,格式为yyyy-MM-dd,也可以自己配置格式 $[today(yyyyMMdd)]
    • 注意 as 后面的别名一定要是 actual_value,否则统计会出错。
    • 表名可以用${table},系统会自动替换,也可以直接写正确的表名。
select count(1) as actual_value from ${table} where data_date='$[today]'
  • 选择对应的数据库和表,并编写计算期望值 SQL 语句
    • 语句里面用到了$[yesterday]时间变量,系统会自动替换成昨天的日期,格式为yyyy-MM-dd,也可以自己配置格式 $[yesterday(yyyyMMdd)]
    • 注意 as 后面的别名一定要是 expected_value,否则统计会出错。
    • 表名可以用${table2},系统会自动替换,也可以直接写正确的表名。
select count(1) as expected_value from ${table2} where data_date='$[yesterday]'
  • 配置结果判断公式
    • 结果公式选择:实际值-期望值
    • 比较符选择:>=
    • 阈值:0

如果公式实际值-期望值 >= 0的结果为真, 那么就证明今天的表行数大于昨天的表行数,否则就证明今天的表行数小于昨天的表行数,结果是异常的,需要告警。

视频操作演示

视频演示

加入我们

Datavines 的目标是成为更好的数据可观测性领域的开源项目,为更多的用户去解决元数据管理和数据质量管理中遇到的问题。在此我们真诚欢迎更多的贡献者参与到社区建设中来,和我们一起成长,携手共建更好的社区。

关于Datavane

Datavane 是一个专注于大数据领域的开源组织(社区),由一群大数据领域优秀的开源项目作者共同创建,旨在帮助开源项目作者更好的建设项目、为大众提供高质量的开源软件,宗旨是:只为做一个好软件。目前已经聚集了一批优质的开源项目,涉及到数据集成、大数据组件管理、数据质量等。

Datavane 社区中,所有的项目都是开源开放的,代码质量和架构设计优质的潜力项目。社区保持开放中立、协作创造、坚持精品,鼓励所有的开发者、用户和贡献者积极参与我们的社区、共同合作,创新创造,建设一个更加强大的开源社区。

posted @ 2023-07-16 13:09  孙朝和  阅读(126)  评论(0编辑  收藏  举报