unix – 排序大型二进制文件

前端之家收集整理的这篇文章主要介绍了unix – 排序大型二进制文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否有Unix实用程序用于排序包含固定长度二进制记录的大文件

换句话说,我正在寻找类似sort(1)的东西,但是对于具有固定长度记录的二进制文件.

我可以将文件转换为文本,然后使用sort(1)排序,然后转换回二进制表示,但我正在寻找更多时间和空间效率的东西.

结果证明你很幸运;有一个GNU样式的unix程序就是这样做的: bsort.

bsort是一种超高效的inplace radix排序实现,在处理大于ram的文件时要特别注意内存访问模式.高效率我的意思是从2014年中期开始能够最好地利用http://sortbenchmark.org的2014年节能10 ^ 8记录排序 – 记录为889焦耳,其早期原型能够在一台股票macbook pro上以335焦耳排序.对于完全适合ram(三位数兆字节)的“小”数据集,它比libc的qsort库快约3倍.

原文链接:https://www.f2er.com/bash/385791.html

猜你在找的Bash相关文章