一.Apache Griffin概述
作者:互联网
文章目录
Apache Griffin概述
Apache Griffin 是一个建立在 Apache Hadoop 和 Apache Spark 之上的数据质量服务平台 (DQSP)。 它提供了一个全面的框架来处理不同的任务,例如定义数据质量模型、执行数据质量测量、自动化数据分析和验证,以及跨多个数据系统的统一数据质量可视化。 它旨在解决大数据应用中数据质量领域的挑战。
一.背景
大数据应用当中有一个无法回避的问题,即数据质量的测量。针对这个问题,不同的团队已经构建了定制的工具来检测和分析各自领域内的数据质量问题。因此,Apache Griffin平台意在提供共享基础设施和通用功能,以解决数据质量的常见痛点,有助于建立一个可信的数据资产。
当前,有大量相关联的数据在多平台(流式和批处理)之间流动时,验证数据质量非常困难且成本高昂。以 eBay 的实时个性化平台为例,每天要验证约 6 亿条记录的数据质量。在这种复杂而大规模的环境中,数据质量往往成为一大挑战。
在 eBay 的数据质量中遇到了以下问题:
- 缺乏从多个数据源到目标应用程序的端到端、统一的数据质量视图,这些视图考虑了数据的沿袭(即数据全生命周期,包括数据的来源和随时间移动的位置)。这需要很长时间来识别和修复数据质量问题。
- 缺乏通过自助服务来测量流式数据的数据质量的统一系统。该系统应该是一个可以在其中注册数据集,可以定义数据质量模型,可以使用简单的工具可视化和监控数据质量,并在检测到问题时向团队发出警报等诸多组件的组合。
- 缺乏共享平台和公开的 API 服务。每个团队不应该自己重新发明轮子,也不必应用和管理自己的硬件和软件基础设施来解决这个常见问题。
考虑到这些问题,Apache Griffin——一个旨在解决上述不足的数据质量服务应运而生。
二.框架结构
Apache Griffin 包括:
数据质量模型引擎:Apache Griffin 是一个模型驱动的解决方案,用户可以根据选定的目标数据集或源数据集,选择各种数据质量维度来执行他们的数据质量验证。它在后端有相应的库支持,目前支持以下指标:
- 准确性 - 将现实世界的对象或可验证的来源反映为数据
- 完整性 - 保留所有必要的数据
- 有效性 - 更正业务指定的数据域内的所有数据值
- 及时性 - 在需要的时候保持数据可用
- 异常检测 - 用于识别不符合预期模式或数据集中其他项目的项目、事件或观察的预建算法函数
- 数据分析 - 对数据集中的数据值进行统计分析和评估,以确保一致性、唯一性和逻辑性。
数据收集层:
Apache Griffin支持两种数据源,批量数据和实时数据。
对于批处理模式,可以通过各种数据连接器从 Hadoop 平台收集数据源。
对于实时模式,可以连接像 Kafka 这样的消息系统进行近实时分析。
数据处理和存储层:
对于批量分析,数据质量模型将根据 hadoop 中的数据源计算 Spark 集群中的数据质量指标。
对于近实时分析,使用来自消息传递系统的数据,然后数据质量模型将基于 Spark 集群计算实时数据质量指标。对于数据存储,可以在后端使用Elasticsearch来满足前端请求。
Apache Griffin 服务:
项目有提供Restful 服务来完成 Apache Griffin 的所有功能,例如探索数据集、创建数据质量度量、发布指标、检索指标、添加订阅等。因此,开发人员可以基于这些 Web 开发自己的用户界面服务。
三.支持的功能列表
在当前版本主要支持以下几个 DQ 功能:
- 数据资产检测 :在服务模块中启用配置,Apache Griffin 可以通过 Hive Metastore 服务检测 Hive 表元数据。
- 指标管理 :在 UI 上执行操作,用户可以创建、删除和更新三种类型的度量,包括:准确性、概要分析和发布指标。但是,调用服务API,用户可以创建、删除和更新六类度量,包括:准确性、概要分析、及时性、唯一性、完整性和发布指标。
- 作业管理: 用户可以创建、删除作业以调度批处理作业,用于计算度量、每次计算的数据范围以及 hdfs 上的“完成文件”等额外的触发条件。
- 基于Spark集群的指标计算: 服务模块将通过Livy 启动并提交计算作业到Spark 集群,Measure 模块默认计算度量值并将其持久化到elasticsearch。
- 指标可视化: 通过服务 API,用户可以从 elasticsearch 中获取每个作业的指标值。准确度指标将呈现为图表,分析指标将在 UI 上显示为表格。
未来有待升级的功能:
- 支持更多的数据源类型: 目前Apache Griffin只支持Hive表,hdfs上的avro文件作为批处理方式的数据源,Kafka作为流方式的数据源。 该项目计划支持更多的数据源类型,如 RDBM、elasticsearch。
- 支持更多的数据质量维度: Apache Griffin 需要支持更多的数据质量维度,比如一致性和有效性。
- 异常检测: Apache Griffin 计划通过分析从 elasticsearch 计算的指标来支持异常检测。
标签:Griffin,数据源,指标,概述,质量,Apache,数据 来源: https://blog.csdn.net/weixin_43160819/article/details/118103939