本文主要是介绍DolphinDB与pandas读取csv文件速度对比测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
速度
DolphinDB一直说自己速度快,前面使用中并没有遇到实际场景,今天需要读取一个800M的csv文件,特地测试一下。
-
测试方式有三种
-
pandas的pd.read_csv()
-
DolphinDB的loadText()
-
DolphinDB的ploadText()
-
-
测试文件
1990年到2018年的所有A股日K线数据,总共840M。数据格式为
[9930906 rows x 13 columns]
-
pandas.read_csv()
>> t = datetime.now() >> trade = pd.read_csv('D:\DolphinDB\Python\CHstock1990_2018.csv') >> print(datetime.now() - t)
次数 时间 1 25.765263 2 21.028936 3 20.476992 4 21.289992 5 20.709985 6 21.352990 去除第一次的异常值,取剩余五次计算平均值:20.971779
-
loadText()
>> t = datetime.now() >> trade = s.loadText('D:/DolphinDB/Python/CHstock1990_2018.csv') >> print(datetime.now() - t)
次数 时间 1 33.008495 2 32.152022 3 33.735014 4 31.155987 5 33.996996 6 32.901004 取六次均值:32.824919
-
ploadText()
>> t = datetime.now() >> trade = s.ploadText('D:/DolphinDB/Python/CHstock1990_2018.csv') >> print(datetime.now() - t)
次数 时间 1 18.863003 2 19.764002 3 18.942235 4 19.214004 5 19.554998 6 19.845996 取六次均值:19.364106
-
结果分析
用电脑在常规工作环境中载入,先载入六次read_csv,再载入六次ploadText,再载入六次loadText,得到上述结果。
我不是专业测试,不清楚业内正经测试应该是怎么个流程与环境,然,这就是我正常使用时候得到的结果。
ploadText() > pd.read_csv() > loadText()
但是有几个要点:
- 首次使用read_csv,经常是比较慢的;
- 对于他们各自的底层逻辑并不清楚,所以这个测试可能缺乏理论依据,等后续懂的更多之后再来修补
这篇关于DolphinDB与pandas读取csv文件速度对比测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!