扫码阅读
手机扫码阅读

数据分析新星,DuckDB处理100万条数据比Pandas快350倍

47 2024-10-10

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:数据分析新星,DuckDB处理100万条数据比Pandas快350倍
文章来源:
AI科技论谈
扫码关注公众号

基准测试比较:Pandas vs DuckDB

当处理超亿级数据集时,Pandas的性能较慢,而开源的DuckDB因其列式存储性能优异,在大数据处理上的速度远超Pandas。

1. 基准测试设置

基准测试在M2 Pro MacBook Pro上进行,使用纽约市出租车和豪华轿车委员会提供的行程数据。测试目标是加载Parquet格式数据并计算月度统计信息。

1.1 数据集信息

数据集包含超过1.11亿条记录,来源于2024年4月的纽约市政府官方网站。

1.2 测试目标

目标是使用Pandas和DuckDB加载数据并计算行程总数、平均持续时间、行驶距离、总车费和小费金额等月度统计信息。

1.3 Pandas设置

Pandas需要将所有数据加载入内存,处理Parquet文件时的读取效率较低,且要处理多级索引重置的问题。

2. DuckDB设置

DuckDB通过简单的SQL命令和高效的parquet_scan()函数,能够提高数据处理效率。

3. 基准测试结果 — DuckDB比Pandas快352倍

DuckDB仅需两秒即可处理超过1亿条记录,展现了其在处理大数据时的强大性能。

4. 总结

DuckDB使用SQL语言快速执行数据聚合查询,速度提升了数个量级。它支持多种文件格式和与多家数据库厂商产品的兼容性,是Pandas的有效替代品。

推荐书单

《利用Python进行数据分析 原书第3版》是Python数据分析领域的权威指南,针对最新版本的Python和pandas进行了更新。

想要了解更多内容?

查看原文:数据分析新星,DuckDB处理100万条数据比Pandas快350倍
文章来源:
AI科技论谈
扫码关注公众号