小编Kri*_*ris的帖子

我可以在一次操作中解压缩和合并已排序的文本文件吗?

我有数以万计的 gzip 压缩文本文件,每个文件都已经在内部进行了排序。

我编写了一个脚本来解压缩它们(创建一个副本),然后使用sort -m它们来合并它们。

这一切都运行良好,但在尝试提高性能时,我注意到解压缩操作约占总运行时间的 16-20%。

基本上,合并操作必须重复扫描整个文本文件,一次将 16 个文件合并为 1 个。通常,这会导致对我拥有的数据进行大约 4-5 次完整扫描。解压缩基本上增加了一次额外的扫描。

通过 50-100 GB 的数据节省 5-6 次扫描中的 1 次是一项可观的节省。

因此,我开始想知道是否可以将输出gunzip直接输入sort(或其他工具)并基本上将解压缩轮与第一轮合并相结合。输出不会被压缩。

有谁知道这是否可以做到?理想情况下使用标准工具,但如果符合要求,我也愿意接受第三方工具。

linux sort

4
推荐指数
1
解决办法
2342
查看次数

标签 统计

linux ×1

sort ×1