【开源项目推荐】Great Expectations—开源的数据质量工具

大家好,我是独孤风。

又到了本周的开源项目推荐。数据质量是企业进行数据治理非常重要的一个环节,高质量的数据对管理决策,业务支撑都有非常重要的作用。
只有持续的数据质量改进才能推动数据治理体系的完善,差劲的数据质量就如同顽固的疾病一样,如果不能得到及时的改善,最终可能会导致重大的问题。
近几年来,管理数据质量的工具层出不穷,但是能够全面的对企业数据质量进行分析与洞察的工具并不多见。
那么,有没有好用的开源的数据质量项目呢?
今天为大家推荐的开源项目,就是一个极为优秀的数据质量检查工具,开源的数据质量管理项目。让我们一起来看看吧~

概述

今天为大家推荐的开源项目名为Great Expectations。
Great Expectations是一个开源的数据质量检查工具,使用了基于机器学习的数据质量自动化管理工作流程。它可以轻松地对数据质量进行验证、建模和监控。用户以期望(expectations)的形式定义断言(assertions)。顾名思义,期望是您期望从数据中获得的质量,断言则是用声明性语言编写的。
例如,下图的断言示例定义了passenger_count列的值必须介于1和6之间。

Great Expectations根据这个规则,就会对数据进行验证,并且能够自动生成便于阅读的数据诊断报告。Great Expectations的另一个功能是自动化数据分析。它可以根据统计数据,自动从数据中生成期望。由于数据质量工程师不必从头开始编写断言,因此大幅节省了开发的时间。一旦各种预期准备就绪,它们就可以被合并到数据管道中。

可在大数据流动后台回复“GreatExpectations”获取安装包,源代码与学习资料。

功能演示

请参考大数据流动视频号的功能演示:

如何安装?

整个Great Expectations的使用流程如下图所示。

需要python版本为 3.8 到 3.11。

可以用下面的命令进行安装。

pip install great_expectations

如果要在python代码中使用,可以这样引入。

import great_expectations as gx

随后建立一个上下文。

context = gx.get_context()

连接数据。

validator = context.sources.pandas_default.read_csv(
    "https://raw.githubusercontent.com/great-expectations/gx_tutorials/main/data/yellow_tripdata_sample_2019-01.csv"
)

定义一个期望

validator.expect_column_values_to_not_be_null("pickup_datetime")
validator.expect_column_values_to_be_between(
    "passenger_count", min_value=1, max_value=6
)
validator.save_expectation_suite()

定义一个检查点。

checkpoint = context.add_or_update_checkpoint(
    name="my_quickstart_checkpoint",
    validator=validator,
)

随后执行就可以了。

checkpoint_result = checkpoint.run()

如果要查看结果可以执行下面的命令。

context.view_validation_result(checkpoint_result)

支持的数据源

目前Great Expectations支持如下的数据源。

更多大数据,数据治理,人工智能知识分享,开源项目推荐,学习社群加入,请关注大数据流动。

posted @ 2024-01-05 08:29  独孤风  阅读(1184)  评论(0编辑  收藏  举报