Tag Archives: 导入

程序切割超大日志文件

前阵子做的一个信令统计分析的项目,数据量实在太大了,信令日志入库之前需要根据LAC按地市切割之后分别入库,考虑到性能决定还是用C++写个小程序来切割,平台是Server2003,所以就拿VC6来做,不过对于MFC那些类都不太熟,也懒得去查,所以主程序基本上就是C写的,不过考虑到性能,不能一行一行读,还得有个buffer一次性读过来,然后处理,结果弱爆了,就这么一小程序半天也没搞定,总是有异常,而且错误都不知所云,debug也找不着个所以然来。最后一怒之下写了个java,用的BufferReader/Writer,半个小时就搞定,在笔记本上试了一下,切一个1G的文件用了49秒,也就是说读写都是20多MB/s,考虑的硬盘的速度,提升的空间已经不太大了。

不得不吐槽一下,VC6是我用过最烂的IDE,没有之一。哪天要是能摆脱Visual Studio我就去搞个mac去。

Buffer的大小是1MB,太大了对于速度也没多大影响,白白占用内存而已