找回密码
 加入
搜索
楼主: user11

[效率算法] [已解决]大量文本约250w行如何短时间快速整理每30行保留一行数据?

 火.. [复制链接]
发表于 2012-7-4 22:55:44 | 显示全部楼层
回复 15# Qokelate


    那又何妨?
发表于 2012-7-4 22:57:14 | 显示全部楼层
回复 16# afan


    假设楼主配置并不高呢?或者可用内存不足呢?
发表于 2012-7-4 23:09:55 | 显示全部楼层
回复 17# Qokelate


    这不是写什么具象的工具,仅是一种效率化的测试。如果面面俱到,结果往往得不偿失。
你有何高见,不妨贴出代码,给我这个外行开开眼,学习下。
发表于 2012-7-4 23:19:23 | 显示全部楼层
本帖最后由 Qokelate 于 2012-7-4 23:38 编辑

回复 18# afan


   呵呵, Afan版主误会了,小弟觉得程序应该要有基本的异常处理,假设楼主数据来自服务器的日志,而这个程序又是运行在服务器上的话,很可能会导致服务器正常的程序无法分配内存导致异常甚至整个服务器失去响应,更严重的是,如果这个程序是伴随日志创建一起运行的,刚开始时程序不会出现任何问题,时间长了就死定了,所以,小弟认为,效率应该建立在稳定运行的基础上
发表于 2012-7-4 23:39:44 | 显示全部楼层
回复 19# Qokelate


    你说的很有道理。一个成熟的软件就应该保证长时间运行而不死定,而我这个就没机会了,只几秒钟就下班了… 开个玩笑 ^  ^
发表于 2012-7-4 23:43:30 | 显示全部楼层
回复 17# Qokelate
看了你这个回帖和后面的几个,感觉说的不是一码事,楼主似乎只是问的处理过程,并没说环境因素,如果考虑环境因素的话,可做的事就太多了
 楼主| 发表于 2012-7-5 09:33:52 | 显示全部楼层
本帖最后由 user11 于 2012-7-5 09:36 编辑

回复 12# afan

非常感谢A版,问题完美解决,

处理200多M只要5260ms;;而原来的我写的,同一个文件,大家看图这是已经24H多了才处理了152W行左右;

设备配的都是联想品牌机,比我家的都好,奔腾双核E5700,3.0GHZ,2G内存,只用实验采集数据有点浪费;

实际测试200M的文件处理的时候Autoit大概用掉500M内存 ,,当文件有353M 的时候,Autoit直接报错了,内存超出但是没关系,,文件很少有超过300的,

正则非常棒,再次感谢超版!!!


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2012-7-5 11:41:07 | 显示全部楼层
正则高手出手就是不一样啊
发表于 2012-7-5 13:22:06 | 显示全部楼层
回复 12# afan


三张图片说明一切。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2012-7-6 21:51:57 | 显示全部楼层
回复 12# afan


    阿凡的代码效率不错!

不过,若是我遇到这种情况,还是不例外地选择用Editor来做了。因为不用想写代码的时间!
刚才我试了下用vim做一楼提的问题,100M大小的文本,处理也只需要两秒钟。当然也是在vim里写正则了。只是我在vim配置里对vim打开大文件做了些处理,这样让机子读入文本文件到内存快很多。其实这里读入文件到内存的时间大于处理的时间了。因为vim没有对大文件进行优化处理,也得全读入内存。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-13 17:45 , Processed in 0.068004 second(s), 14 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表