开源数据质量管理工具预研——Griffin VS Deequ VS Great expectations VS Qualitis。

概述

数据质量监控(DQC)是最近很火的一个话题,也是数据治理中最重要的一环。有一句话说得好。数据质量未必是数据治理中最重要的一部分,但是数据质量可能是让数据治理工作全部崩盘的第一步。

所以做好数据质量监控非常重要,废话少说本文将从开源数据质量解决方案预研的角度,带大家了解目前四个比较成熟的数据质量管理工具,希望对大家做技术选型的时候有一些帮助。

对于开源框架的研究,对于我们自研数据质量的工具也有巨大的帮助。

1、Apache Griffin

在开源数据质量解决方案——Apache Griffin入门宝典一文中,对Griffin有过详细的介绍。

Griffin是一个开源的大数据数据质量解决方案,由eBay开源,它支持批处理和流模式两种数据质量检测方式,是一个基于Hadoop和Spark建立的数据质量服务平台 (DQSP)。它提供了一个全面的框架来处理不同的任务,例如定义数据质量模型、执行数据质量测量、自动化数据分析和验证,以及跨多个数据系统的统一数据质量可视化。

Griffin于2016年12月进入Apache孵化器,Apache软件基金会2018年12月12日正式宣布Apache Griffin毕业成为Apache顶级项目。

Griffin官网地址:https://griffin.apache.org/

Github地址:https://github.com/apache/griffin

Griffin的架构分为三个部分。

各部分的职责如下:

  • Define:主要负责定义数据质量统计的维度,比如数据质量统计的时间跨度、统计的目标(源端和目标端的数据数量是否一致,数据源里某一字段的非空的数量、不重复值的数量、最大值、最小值、top5的值数量等)
  • Measure:主要负责执行统计任务,生成统计结果
  • Analyze:主要负责保存与展示统计结果

所以本身Griffin带了一个页面,可以通过页面设置进行一些监控结果展示。

Griffin对部分组件有依赖关系,这点要注意。

JDK (1.8 or later versions)
MySQL(version 5.6及以上)
Hadoop (2.6.0 or later)
Hive (version 2.x)
Spark (version 2.2.1)
Livy(livy-0.5.0-incubating)
ElasticSearch (5.0 or later versions)

当然Giffin也不是万能的,目前Griffin还是有很多的问题的,选择也要慎重:

Griffin的社区并不太活跃,可以共同讨论的人不多。

目前最新版本还是0.6,可能会有一些问题。

网上技术文档很少,当然这方面大数据流动也会不断的输出新的技术文档帮助大家。

deequ是amazon开源的spark数据质量管理的工具。

其架构图如下所示:

亚马逊内部正在使用 Deequ 来验证许多大型生产数据集的质量。数据集生产者可以添加和编辑数据质量约束。系统定期计算数据质量指标(使用数据集的每个新版本),验证数据集生产者定义的约束,并在成功时将数据集发布给消费者。在错误情况下,可以停止数据集发布,并通知生产者采取行动。数据质量问题不会传播到消费者数据管道,从而减少它们的爆炸半径。

要使用 Deequ,让我们看一下它的主要组件。

指标计算——Deequ 计算数据质量指标,即完整性、最大值或相关性等统计数据。Deequ 使用 Spark 从 Amazon S3 等源中读取数据,并通过一组优化的聚合查询计算指标。您可以直接访问根据数据计算的原始指标。
约束验证——作为用户,您专注于定义一组要验证的数据质量约束。Deequ 负责导出要在数据上计算的所需指标集。Deequ 生成数据质量报告,其中包含约束验证的结果。
约束建议- 您可以选择定义自己的自定义数据质量约束,或使用自动约束建议方法来分析数据以推断有用的约束。

Deequ 和 Spaek关联密切,使用Spark技术框架的可以考虑,目前Deequ 已经更新到2.X版本,使用的也比较多,社区较为活跃。

Github地址:

https://github.com/awslabs/deequ

3、Great Expectations

可能很多同学对这个框架比较陌生,但是在数据科学领域great_expectations可是一个很火的框架。

github地址:https://github.com/great-expectations/great_expectations

目前标星已近7K。

Great expectations是一个python的工具包,Python近几年在数据分析领域大放异彩,而Python本身对于数据质量问题的解决一直是一个大问题。而Great expectations正好弥补了这方面的不足。

由于对Python支持良好,部分公司采用Airflow,Great expectations等Python技术栈来进行数据质量的解决方案建设。

Great expectations社区非常活跃,最新版本为0.15,但是版本更新非常快,bug修复也很快,值得长期关注。

4、Qualitis

对于微众那套大数据平台熟悉的同学,对于Qualitis不会陌生。

Qualitis是一个支持多种异构数据源的质量校验、通知、管理服务的数据质量管理平台,用于解决业务系统运行、数据中心建设及数据治理过程中的各种数据质量问题。

Qualitis基于Spring Boot,依赖于Linkis进行数据计算,提供数据质量模型构建,数据质量模型执行,数据质量任务管理,异常数据发现保存以及数据质量报表生成等功能。并提供了金融级数据质量模型资源隔离,资源管控,权限隔离等企业特性,具备高并发,高性能,高可用的大数据质量管理能力。

Github地址为:

https://github.com/WeBankFinTech/Qualitis

官网给出了其余Griffen的对比,优势还是很多的。

目前Qualitis有社区支持,整体还是很活跃的。

但是由于Qualitis对Linkis的依赖,灵活性要差一些,要用就得用全套的。

总之,对于数据质量工具的探索还不能停止,也期待更多优质的项目和工具的出现,我们会保持持续的关注。

数据治理的理论体系比较健全,但是实践工具太少,可以参考的工具也太少。

为了更专注提高效率,目前数据治理相关学习交流群按不同方向做了区分,欢迎大家入群。

另外 数据治理工具箱 知识星球也已成立,这是一个数据治理落地实践方向的知识星球。大数据流动发布的数据治理相关文章与资料(包括付费内容)都将在知识星球进行长期同步。星球的目标是收集数据治理实践工具的相关资料,并定期组织实战学习小组,让数据治理的相关资料可以长久的保存,同时也解决文章被频繁抄袭的问题,欢迎大家加入。

【数据质量】数据质量管理工具预研——Griffin VS Deequ VS Great expectations VS Qualitis相关推荐

  1. 数据治理-数据质量-数据质量管理方法和工具

    常用质量管理工具 目前,在质量管理领域,有一系列常用的数据质量管理工具,主要分为传统的质量管理工具.新的质量管理工具和其他质量管理工具. 传统的质量管理七大工具 传统的七种工具包含分层法.检查表.帕累 ...

  2. 数据湖技术Iceberg0.12预研文档

    Iceberg0.12预研 本次预研场景主要为kafka=>flink sql=>iceberg=>hive=>hdfs=>trino(presto) 本次预研使用组件如 ...

  3. 数据治理-数据质量-数据质量实施方法

    质量实施方法 数据质量领域研究学者和专家结合自身实践,先后提出了一系列质量管理得项目实施方法,其中以全面信息质量管理.全面数据质量管理.数据管理十步法.六西格玛等.         与传统数据质量管理 ...

  4. 数据治理-数据质量-数据质量的概念和维度

    大数据质量的基本概念 数据是表示事物各种属性的基本元素,通常情况下,只要符合数据应用的需要,就可以将它视为合格数据,即数据质量合格.结合质量的定义分析可知,数据质量就是"一组固有特征满足表示 ...

  5. Apache拯救世界之数据质量监控工具 - Apache Griffin

    点击上方蓝色字体,选择"设为星标" 回复"面试"获取更多惊喜 八股文交给我,你们专心刷题和面试 Hi,我是王知无,一个大数据领域的原创作者. 放心关注我,获取更 ...

  6. 数据质量稽核工具-datacheck

    简介 一个简单的数据质量稽核自动化工具,通过配置稽核sql,自动化发送报警. 实现常见的稽核规则的检查,例:数据的一致性.完整性.及时性检查,指标的历史波动检查.关联检查.指标平衡检查.其他根据实际业 ...

  7. 十步法原则解决数据质量问题

    一.相关概念 1.1 数据质量 数据的一组固有属性满足数据消费者要求的程度. 1)数据固有属性 真实性:即数据是客观世界的真实反映 及时性:即数据是随着变化及时更新的 相关性:即数据是数据消费者关注和 ...

  8. 什么是数据质量-- 读DAMA数据管理有感

    通过学习数据管理知识管理体系指南,了解到在数据质量管理过程中,一个重要原则就是将改进集中在对组织及客户最重要的数据之上开展(即关键数据),也就是说,并不是所有的数据都一样重要,要分出来三六九等,要好钢 ...

  9. 基于 Amazon 云端数据质量治理解决方案

    点击上方[凌云驭势 重塑未来] 一起共赴年度科技盛宴! 数据质量治理是数据治理中的一个重要环节,它对于一个面向数字化转型的企业来说尤为重要,而目前市场上缺乏完全基于 Amazon 的.全面覆盖业务和技 ...

最新文章

  1. PYTHON_DACORATOR
  2. BZOJ-3110-K大数查询-ZJOI2013-整体二分
  3. 基于C++全局变量的声明与定义的详解
  4. 信息学奥赛一本通_长乐一中老师演绎“奥赛传奇”
  5. 怎样使用Eclipse来开发Android源码
  6. VS2005 sp1安装体会
  7. (转)Spring Boot 2 (八):Spring Boot 集成 Memcached
  8. 返回固定页面的web服务器
  9. less 之Extend 及 Extend all用法
  10. android游戏boss坐标,混沌与秩序2已知boss刷新点分布图详解(已更新到20号boss)...
  11. ubuntu修改默认root密码
  12. 软件nginx 0.8.16
  13. AB PLC学习笔记
  14. 基于Kears的Reuters新闻分类
  15. VXGI体素全局照明
  16. 问:未来5年的IT互联网行业,就业形势会是什么样的?
  17. 面试经历---UC(2016年01月11日下午面试)
  18. chart.js-一款轻巧实用的可视化图表工具
  19. 区块链被正式纳入“新基建”,产业落地及生态共创成为行业共识
  20. ESP32学习】驱动ws2812

热门文章

  1. semantic.css,CSS框架:Semantic UI的优缺点
  2. 星光嵌入式SIM800C GPRS GSM开发板发布
  3. 衡水东方计算机学校是技校吗,河北衡水技校有哪些 衡水哪个技术学校好
  4. 最近研究Scratch及Scratchjr,关于幼儿/青少年学电脑及编程
  5. Cport 详细解释和应用
  6. 连载神器测评|更专业的连载小说追书App
  7. keepalived配置(lvs+NAT+直连+TUN隧道+服务切换企业微信邮件告警)
  8. 福特试验电子围栏限速
  9. 实现 防止视频被下载功能
  10. Stateflow使用笔记