[python学习笔记] - python下csv,feather,parquet,jay,pickle的读写性能及空间占用测试

pandas下读写文件性能测试

测试目标类型,csv,parquet,feather,jay,pickle
使用package:pandas,dash,datatable
pandas使用单cpu读取,dash使用所有cpu读取。
耗时数据仅做量级参考,具体数值存在随机误差。

测试环境

cpu: AMD 3700x 8核16线程
RAM:64G 3200MHz
测试目标数据文件:
csv格式,2.75GB,27181814行,15列

固态硬盘

磁盘信息:pice3.0 nvme read:2200MB/s write:1700MB/s

数据类型 空间占用 耗时-write 耗时-read 耗时-read-dt 耗时-read-dash
csv 2.75GB 145.01s 28.08s 1.67s 0.01s
parquet 0.71GB 14.37s 4.39s - 0.03s
feather 1.10GB 5.32s 3.66s - -
jay 3.37GB 24.16s 9.94s 0.0006s -
pickle(gzip) 2.82GB 4.86s 3.34s - -

机械硬盘

磁盘信息:HDD 2TB 7200R read:176MB/s write:176MB/s

数据类型 空间占用 耗时-write 耗时-read 耗时-read-dt
csv 2.75GB 145.87s 28.35s 1.65s
parquet 0.71GB 14.55s 4.39s -
feather 1.10GB 5.36s 3.63s -
jay 3.37GB 53.51s 9.50s 0.0005s
pickle(gzip) 2.82GB 17.93s 3.53s -

Python Dataframe之excel、csv、pickle、feather、parquet、jay、hdf5 文件存储格式==》存读效率对比
Speed up a pandas query 10x with these 6 Dask DataFrame tricks

你可能感兴趣的:(Python,性能分析,学习笔记,学习)