在Linux中对大文件(> 50GB)进行排序

时间:2014-06-18 10:40:03

标签: python linux sorting

我有大文件(> 50GB),我需要根据基于Linux的系统上的a键(每行中的第一个字段)进行排序,然后检查重复的密钥。
我尝试使用sort命令,但没有通过(文件太大)。
然后,我尝试将split文件分成多个文件(每个100MB),使用sort -m对每个文件进行排序,但我的驱动器上的空间不足,无法完成整个过程(需要花费很多时间)时间)。
任何人都可以想到更快,更少占用空间的方式来执行此任务吗?
Python 中的库是否可以执行此任务?

由于

2 个答案:

答案 0 :(得分:1)

您是否尝试过排序?

sort file.txt -o file.txt

答案 1 :(得分:0)

我可能会建议您创建一个sqlite数据库,导入所有字段都是表行。

完成后,对数据执行排序和过滤变得非常容易。

以下是一些可以帮助您开始使用sqlite' using python`

的链接

SQLite Python Tutorial

https://docs.python.org/2/library/sqlite3.html