如何加快 sort 的排序速度
GNU sort 工具是我们经常用来对文本文件进行排序或去重的工具。sort 默认的参数可能并不适合排序上 G 的大文件。我们来看一下经常被忽略的 GNU sort 单文件排序优化策略。
例如,我们有一个 100G 的 data.csv 文件,要按第一列的编号排序。命令如下:
env LC_ALL=C sort -S 60% -k 1n,1n -t, --parallel=4 --compress-program=pzstd -o data_sorted.csv data.csv
其中:
- env LC_ALL=C 指定 sort 按照字节排序,无视内容的语言和编码。在不同的语言环境下,sort 会根据该语言的特点进行字典序的比较 …