关于 csv 大文件, Python 处理的问题

2022-10-18 22:05:54 +08:00
 goodboysisme

之前有个关于一个近 10G 的 csv 文件关键词查询的的需求。 文件宽 80 长几千万吧,有各类数据。 使用了 pandas 分块处理,最后只弄成搜索一个关键词需要十几分钟。 大伙有什么只用 python 能更高效的建议吗?

3239 次点击
所在节点    Python
27 条回复
someonedeng
2022-10-19 10:48:01 +08:00
放数据库里
mmm159357456
2022-10-19 10:55:48 +08:00
如果一定要用 pandas ,那么可以考虑加 dask ,再用 map 系列函数多核加速
PeterD
2022-10-19 11:17:40 +08:00
可以试试 rg + xsv
BJL
2022-10-19 14:08:25 +08:00
赞同楼上,如果只是一次性查询,rg 非常的好用
xuelu520
2022-10-19 16:51:00 +08:00
楼上既然说到了数据库,要不考虑下 ES ?几千万数据写 ES ,查询都是秒秒钟呀。
goodboysisme
2022-10-19 18:19:36 +08:00
@dayeye2006199
@ETiV
遍历一次 6-8 分钟左右,只是临时用的而已。看网上一些文章使用 pandas 速度比我的快几百倍心里过不去而已...
goodboysisme
2022-10-19 18:35:23 +08:00
@mmm159357456 我 6 个核都拉到百分之 80 左右了,dask 这个的确没有用过

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/887921

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX