сортировка очень большая для больших файлов

Я хочу отсортировать файл (с удалением дубликатов), который содержит список слов размером почти 25 ГБ. Я использую команду sort в терминале Ubuntu, но для вывода отсортированного файла требуются часы, команда:

sort -u input.txt>output.txt

Есть ли какой-нибудь альтернативный и эффективный способ сделать то же самое?

1
задан 28 August 2019 в 09:52

2 ответа

От моего личного опыта: если Вы хотите уникальные строки, удостоверяются, что Вы также используете

LC_ALL=C sort -u 

Я вижу улучшения скорости фактором 10, но он, вероятно, зависит от символов в файле (я часто должен использовать его для переводов, таким образом, у меня есть символы с диакритикой в файле).

2
ответ дан 7 December 2019 в 13:14

Действительно невероятный инструмент является xsv (https://github.com/BurntSushi/xsv). Выполнение его для 3 173 959 файлов строк

xsv sort input.txt >output.csv

У меня есть вывод за 3 секунды

0
ответ дан 7 December 2019 в 13:14

Другие вопросы по тегам:

Похожие вопросы: