如何将多组日志文件合并成一组

现在有个需求,将多组日志(每组日志文件包含多个日志,每个日志20M)合并成一个,按照日志内容中的时间戳排序后,生成一组日志文件(每个日志100m)。
原有数据格式为:
[URL][时间戳]

我目前的想法有两种,一种是将所有日志都存到内存里 然后排序。另外一种是读一段排一段,咨询了下别人,说有相关的多文件排序算法,所以想请教下。有没有简单的框架或者排序算法。

阅读 6.4k
2 个回答

空间换时间吧。
是不是可以读取后,保存到数据库啊,然后再操作排序。是不是更快速点。只是一开始要写一个小程序操作读取,写入。第一次麻烦点,以后就省事多了。

如果源日志个数不多可以用方法一,简单粗暴有效,还可以用其他工具现成的排序方法。(比如我自己的应用就是1-4个日志文件合并之后展示,我就直接一个一个读出来追加到QT的表里,然后展示的时候按时间列排序)
如果源文件个数多,而且本身已经是按时间排序的,那就用方法二,归并排序。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题