Groovy / Grails在阅读大型csv文件时速度很慢

时间:2014-12-07 20:07:17

标签: php csv grails groovy

我有一个很大的csv文件(168MB,149K行,125列)。 我想用以下代码得到第三列的总和:

def tot = 0

new File("/path/to/big/file.csv").splitEachLine(";") { row ->
    try {
        tot += row[2].toBigDecimal()
    } catch(Exception e) {}
}

println tot

需要11秒:

root@front1:~# time groovy test.groovy
8691797.09805144

real    0m10.965s
user    0m9.977s
sys     0m0.500s
root@front1:~#

我用php编写的类似代码只需2秒即可在同一台机器上获得相同的结果。

为了获得相同的执行时间,我是否应该在groovy / grails中进行任何调整或更好的代码?

由于

Groovy版本:2.3.8 JVM:1.6.0_29供应商:Oracle Corporation操作系统:Linux

0 个答案:

没有答案