Я думаю, что проблема здесь в огромном количестве данных.На первом шаге я бы попытался разбить данные на несколько файлов: например, создать файл для каждого символа, например, где вы помещаете слова с первым символом, обозначенным «a», в a.txt, первый символ равен «b» в b.txt.,...
впоследствии я попробую использовать сортировку по умолчаниюалгоритмы и проверьте, работают ли они с размером файлов.После сортировки очистка двойников должна быть легкой.
если файлы остаются большими, вы также можете разделить их, используя более 1 символа, например: