小编row*_*194的帖子

如何将预先排序的文件合并为单个大文件,而不使用过多的内存或临时磁盘

我正在尝试对 1.4TB 文件进行排序(最好是删除重复行)。

分割和排序各个块不是问题,但重新组装它们却是一个挑战。我从手册页中期望“sort -m”(在 FreeBSD 11 下)会进行简单的合并,创建一个聚合的完美排序的输出,可以选择使用 -u 选项抑制重复项。

但在让它运行一段时间后,我发现 sort(到目前为止)已经生成了数百个临时文件,就像它像平常一样对输入进行排序一样。

我没有足够的磁盘空间来存储相同的数据 3 次。是否有任何实用程序可以对已排序的文件进行简单合并,而不需要临时磁盘空间?

===结果===

我最终使用了“标准”排序。处理过程需要大约 50 个小时的高 CPU 和磁盘负载,其中包括生成数百个临时文件。尽管输入已经被完美排序,但还是如此。我仍然有兴趣了解是否有一个简单的实用程序可以整齐地合并预先排序的文件。

freebsd sort merge

8
推荐指数
2
解决办法
3282
查看次数

标签 统计

freebsd ×1

merge ×1

sort ×1