Great Expectations 数据验证快速上手指南:六步从安装到读懂验证报告

发布时间:2026/11/7 6:49:22

Great Expectations 数据验证快速上手指南:六步从安装到读懂验证报告 Great Expectations 数据验证快速上手指南六步从安装到读懂验证报告【免费下载链接】great_expectationsAlways know what to expect from your data.项目地址: https://gitcode.com/GitHub_Trending/gr/great_expectationsGreat Expectations 是一个开源数据验证框架它把「数据质量检查」从散落在各个脚本里的手写断言变成可复用、可文档化、可调度执行的测试。本教程用一份用户行为日志 CSV 做示例数据走完完整链路装好框架、创建数据上下文、登记数据源、写三条数据期望Expectation、跑一次验证、打开报告。一条命令装好 Great ExpectationsGreat Expectations 支持 Python 3.10 到 3.13官方建议在虚拟环境中部署避免和系统里已有的包互相污染。建环境、激活、安装三步走完python -m venv gx_env source gx_env/bin/activate pip install great_expectations⚠️ Windows 下激活命令是gx_env\Scripts\activate如果系统里装过旧版 Great Expectations先在虚拟环境外确认pip list里没有残留避免版本混用。安装包已带齐 Pandas 等核心依赖装完即可进入下一步。创建数据上下文整个项目的家数据上下文Data Context是 Great Expectations 的核心对象数据源、期望套件、验证定义、检查点、报告站点全都挂在它下面。在准备存放项目的空目录里执行import great_expectations as gx context gx.get_context()get_context()会自动检测当前目录已有配置就加载没有就生成一个文件型上下文并顺手搭好项目骨架。数据上下文落在磁盘上是什么样当前目录会多出一个great_expectations/子目录里面是主配置great_expectations.yml、期望套件与验证结果的存储目录以及 Data Docs 报告站点的位置。后面所有操作本质上都是在往这个上下文里登记对象。登记数据源指向行为日志假设行为日志放在data/user_events.csv有user_id、event_type、event_time三列。登记数据源分三步圈定文件夹、声明 CSV 资产、指向具体文件data_source context.data_sources.add_pandas_filesystem( nameuser_events_source, base_directory./data, ) csv_asset data_source.add_csv_asset(nameuser_events) batch_definition csv_asset.add_batch_definition_path( nameuser_events_batch, pathuser_events.csv, )这三层对象各司其职数据源Data Source描述数据从哪来数据资产Data Asset描述哪一类文件批次定义Batch Definition描述验证哪一份具体文件。真正执行验证时加载进内存的是批次定义对应的数据。以后日志按月分目录也可以换成按正则批量匹配的方式模式不变。写三条数据期望期望Expectation就是写给数据的测试用例。先建一个期望套件Expectation Suite挂上前两条规则expectation_suite context.suites.add(gx.ExpectationSuite(nameuser_events_suite)) expectation_suite.add_expectation( gx.expectations.ExpectColumnValuesToNotBeNull(columnuser_id) ) expectation_suite.add_expectation( gx.expectations.ExpectColumnValuesToBeInSet( columnevent_type, value_set[page_view, page_load, purchase, user_signup], ) )第一条要求user_id不能有空值第二条限定event_type只能取四种事件名。再补一条时间窗规则expectation_suite.add_expectation( gx.expectations.ExpectColumnValuesToBeBetween( columnevent_time, min_value2024-01-01, max_value2024-12-31, ) )内置的期望类型有几十种非空、唯一性、取值范围、枚举、分布、列间关系都能覆盖还可以给规则加mostly参数容忍少量异常值。跑通流程上面三条足够。把数据和规则绑起来执行一次验证规则和数据各自都不产生作用绑到一起才生效。要登记两个对象验证定义Validation Definition负责哪份数据用哪套规则检查点Checkpoint负责跑哪些验证、跑完做什么validation_definition context.validation_definitions.add( gx.ValidationDefinition( nameuser_events_validation, databatch_definition, suiteexpectation_suite, ) ) checkpoint context.checkpoints.add( gx.Checkpoint( nameuser_events_checkpoint, validation_definitions[validation_definition], actions[gx.checkpoint.actions.UpdateDataDocsAction(nameupdate_data_docs)], ) ) result checkpoint.run()result[success]为 True 表示所有期望都通过actions列表还能挂 Slack 通知、结果回写对象存储等动作每个动作一行代码官方文档有完整清单。生成并阅读 Data Docs 报告验证结果不该只留在result变量里。Great Expectations 能把历次结果编译成一个可浏览的静态站点叫 Data Docscontext.build_data_docs() context.open_data_docs()第一行把静态 HTML 写进 data_docs 目录第二行直接在浏览器打开。报告怎么读站点首页是每次验证的总体通过情况点进单次验证能看到每条 Expectation 的判定结果、观测值和样本统计。失败的期望会展开「失败行预览」像下面这张截图还附带一段可直接运行的取数代码方便你定位到具体坏行提示第一次跑几乎必然有期望失败这很正常。数据验证的价值在于把数据可能有问题变成确切知道哪些行有问题失败报告本身就是资产。把验证接进日常工作流到这里整条链路已经闭环每来一份新数据调一次checkpoint.run()就能出验证结果并自动刷新报告。要上调度只需把这段调用包成一个脚本交给 Airflow、Prefect 或系统 cron 按时触发也可以改用great_expectations命令行工具在 CI 里执行。SQL 类数据源PostgreSQL、Snowflake 等与期望参数化的写法可以照着仓库 docs/docusaurus/docs/core/ 目录下的入门教程延伸结构和刚才跑通的流程一致。下一步行动给你的检查点 actions 加一个 Slack 通知动作具体做法见官方文档的 Trigger Actions 章节和 GitHub 仓库中的示例。【免费下载链接】great_expectationsAlways know what to expect from your data.项目地址: https://gitcode.com/GitHub_Trending/gr/great_expectations创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/31 21:10:42

如何在 Windows 上安装 MongoDB 并连接本地服务?

如何在 Windows 上安装 MongoDB 并连接本地服务? 【免费下载链接】toBeBetterJavaer 一份通俗易懂、风趣幽默的Java学习指南,内容涵盖Java基础、Java并发编程、Java虚拟机、Java企业级开发、Java面试等核心知识点。学Java,就认准二哥的Java进…

2026/11/7 3:23:24

xManager 上手指南:3分钟任意升级、降级与安装Spotify版本

xManager 上手指南:3分钟任意升级、降级与安装Spotify版本 【免费下载链接】xManager Ad-Free, New Features & Freedom 项目地址: https://gitcode.com/GitHub_Trending/xm/xManager 想换一个指定版本的Spotify——比如尝鲜新功能,或者回到某…

2026/11/7 11:53:50

安康老牌的电工证通过率揭秘:应届生必看的实操考试攻略

安康老牌的电工证通过率揭秘:应届生必看的实操考试攻略 怕考不过白交培训费?尤其是像你这样刚毕业的驻马店工程类毕业生,拿到安康老牌的电工证,是进入建筑、电力、制造等行业门槛的第一步,也是唯一通行证。但现实是,很多人在报名后才发现,考证并不像想…

2026/11/7 11:53:50

家装电工证考什么官方回应来了!急用证的别错过这些细节

家装电工证考什么官方回应来了!急用证的别错过这些细节 急需特种作业证才能上岗找工作?现在考家装电工证已经不是以前那种“走过场”的事了。尤其是最近郑州市应急管理局发布的新规,明确要求报考人员必须符合学历、工作经验等硬性条件,不然连报名资格都没…

2026/11/7 11:53:50

特种作业操作证接线真实经历:实操考试心里没底怕挂科?

特种作业操作证接线真实经历:实操考试心里没底怕挂科? 实操考试心里没底怕挂科?你不是一个人,很多学员都是带着这种焦虑去考【特种作业操作证接线】的。我自己在濮阳某培训机构的学员群里,看到太多人发“怕做不好接线”“怕老师骂”“怕挂科重来”。这些…

2026/11/7 11:53:50

电工作业口诀和方法有效期多久

电工证考试太难?工地太忙根本没时间复习考试 别踩坑 工地太忙根本没时间复习考试,这是很多一线电工的真实写照。特别是像信阳浉河区这样工程密集的地区,电工每天要面对高压设备、复杂线路和现场作业,复习考试的时间更是捉襟见肘。如果备考方法不当,不仅…

2026/11/7 11:53:50

代别人考电工证全国通用吗?官方报名入口你知道吗

代别人考电工证全国通用吗?官方报名入口你知道吗 之前考的证在外省能不能转过来,这个问题很多人都问过,尤其是像你这样在许昌市政公用工程行业工作的,经常跑项目,证书能不能全国通用就成了刚需。不过,先说清楚, 代别人考电工证…

2026/11/7 11:48:50

高压电工证考啥科目?真实经历告诉你怎么避坑

高压电工证考啥科目?真实经历告诉你怎么避坑 你是不是也和我一样,听说高压电工证在找工作、转行、提薪方面特别管用,但又不知道从哪儿开始?网上一搜,全是各种培训机构、代办机构,价格五花八门,靠谱程度却没法判断。我自己在信阳浉河区从事市政公用工程…

2026/11/5 15:39:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/6 10:49:01

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/7 0:03:08

郑州报考避坑指南:电工证和钳工证怎么选?实操考试心里没底怕挂科

郑州报考避坑指南:电工证和钳工证怎么选?实操考试心里没底怕挂科 实操考试心里没底怕挂科?你不是一个人。特别是在郑州这样的城市,很多施工企业负责人和一线作业人员在报考电工证和钳工证时都面临着同样的困惑。到底该考哪个证?哪个更适合自己?哪个证书…

2026/11/7 0:03:08

广西电工证办理流程全解析:外省证怎么转?在哪考最靠谱?

广西电工证办理流程全解析:外省证怎么转?在哪考最靠谱? 之前考的证在外省能不能转过来?这个问题我遇到太多了,今天就拿广西电工证办理流程来具体说说,别再走弯路了。广西电工证的报考、复审、继续教育这些环节,如果你不了解,真的会吃大亏,尤其对于从…

2026/11/7 0:03:08

电气电工证都有哪些保姆级教程

电气电工证都有哪些保姆级教程 你是不是正愁不知道去哪报名,怕被中介坑?别急,这篇保姆级教程专为河南初次报考人员准备,帮你搞清楚 电气电工证都有哪些 ,以及如何避开那些坑。 电气电工证都有哪些?别被五花八门的证书搞懵了…

2026/11/5 15:39:06

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/6 10:49:01

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑