Дано: очень большой файл(многократно превышает объем оперативной памяти компьютера) с множеством строк, которые содержат, например, по 1000 символов(кирилица, латиница, цифры, знаки, пробелы) в случайном порядке. В нем специально разбросано 15% дубликатов строк. Необходимо обработать данный файл и создать новый файл, который будет содержать только уникальные строки.
Работаю на python 3.6.
Пытался обрабатывать "пачками" по N строк(пока не заполнится оперативная память на 80%), собирая эти пачки в множества и дополняя данными этих множеств новый файл. Неудачно.
Пытался делать то же самое несколько раз(т.е. из итогового "нового" файла также вычленял только уникальные значения и записывал в новый файл по кругу). Неудачно.
Пытался брать пачки из разных мест документа и проделывать выделение уникальных строк несколько раз. Тоже неудачно. Пытался собирать множества методом забора каждой второй(третьей, десятой и т.д.) строки. Тоже итог неудачный.
Может быть есть эффективный метод?
sort -u fileв Питоне? – jfs Jun 10 '18 at 19:48