大日志处理问题

 问题描述:有几个压缩好的大日志文件,压缩后,2,3G,解压后估计有5,6G数据库

须要将这些日志解析出来,存储到分布树数据库中去。看了下线上的机器,虽然日志

每一个机器的绝对内存均可以将这些数据读入进去,可是正常可用内存却只有几个G内存

并且还要被其余程序占用,解析代码用JAVA来写,运行JAVA代码的时候能够指定it

使用的内存XMS,XMX。程序

解决方法: 因为日志信息容许有必定的丢失,因此能够采用将文件切割的办法,方法

将大文件切割为一个个的小文件,而后JAVA代码在将这些小文件读进去处理。这样数据

以来运行时占用的内存就能够控制在必定范围内。脚本

 日志切割采用SHELL脚本下面的:split -b 100m $openFile 将日志切分为每一个100M文件

这样每次只须要读入100M的数据进行处理。一行一条数据的话,切割完也就丢失几十条压缩

日志信息而已,能够接受。

相关文章
相关标签/搜索