Чем удалить дубли в очень больших файлах? - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB90.1887
BTC/USD67854.2920
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 11.03.2015, 05:41
Start Post: Чем удалить дубли в очень больших файлах? 
  #11
SEng
Senior Member
 
Аватар для SEng
 
Регистрация: 28.07.2007
Адрес: Russia
Сообщений: 179
Бабло: $27730
Отправить сообщение для SEng с помощью ICQ
Question

Есть несколько текстовых файлов размером по 40-50 гб.
Чем их слить в один файл без дублей строк?
Желательно под виндой (хотя не принципиально).
SEng вне форума  
Старый 11.03.2015, 21:36   #12
SEng
Senior Member
 
Аватар для SEng
 
Регистрация: 28.07.2007
Адрес: Russia
Сообщений: 179
Бабло: $27730
ТС -->
Отправить сообщение для SEng с помощью ICQ
автор темы ТС По умолчанию

короче не дождался я, вырубил sort
Mongo потянет 4 млрд записей?
SEng вне форума  
Старый 11.03.2015, 22:06   #13
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Цитата:
Сообщение от SEng
Mongo потянет 4 млрд записей?
даже mysql потянет
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 12.03.2015, 02:09   #14
sliderxxx
Ебланнед
 
Регистрация: 20.08.2008
Сообщений: 1,067
Бабло: $153400
По умолчанию

Сначала уникализируй, потом объединяй. Скорость sort по ощущениям обратно пропорциональна объему файла. И по моему vim быстрее уникализирует, вот только откроет ли он такие файлы - хз.
sliderxxx вне форума  
Старый 12.03.2015, 19:24   #15
Joe Perry
Member
 
Регистрация: 19.09.2014
Сообщений: 49
Бабло: $11495
По умолчанию

http://stackoverflow.com/questions/3...se-performance
Joe Perry вне форума  
Старый 12.03.2015, 20:22   #16
Matt Cutts
Senior Member
 
Регистрация: 24.09.2009
Сообщений: 821
Бабло: $106455
По умолчанию

Решение на коленке - если строки на английском, предложу вот эту тулзу, предварительно подробив на 10гб файлы. Скорость удивит.
Matt Cutts вне форума  
Старый 15.03.2015, 17:24   #17
relonger
Юниор
 
Регистрация: 20.02.2015
Сообщений: 17
Бабло: $4040
По умолчанию

Алгоритмически правильно это делается так:
все файлы разбиваются на несколько файлов каждый допустим по 1Гб, которые можно спокойно отсортировать внутри. А потом выполняется сортирующее слияние несколько файлов с удалением повторов - это легко пишется за 5 минут на любом скриптовом языке. Если надо могу написать
relonger вне форума  
Старый 15.03.2015, 19:00   #18
SEng
Senior Member
 
Аватар для SEng
 
Регистрация: 28.07.2007
Адрес: Russia
Сообщений: 179
Бабло: $27730
ТС -->
Отправить сообщение для SEng с помощью ICQ
автор темы ТС По умолчанию

Уточню: в исходных файлах дублей нет, но одни и те же записи дублируются в нескольких файлах.

Хотелось бы убрать пересечения, слить уникальные в один файл либо базу.

Нормального решения пока не нашел.
SEng вне форума  
Старый 15.03.2015, 19:11   #19
spasibo
Senior Member
 
Регистрация: 14.04.2013
Сообщений: 131
Бабло: $28815
По умолчанию

ну можно так попробоавть. сначала объединить
Код:
cat *.txt > big.txt
а потом
Код:
awk '!x[$0]++' big.txt > uniq.txt
awk в отличие от sort -u не будет сортировать строки
spasibo вне форума  
Старый 15.03.2015, 19:36   #20
SEng
Senior Member
 
Аватар для SEng
 
Регистрация: 28.07.2007
Адрес: Russia
Сообщений: 179
Бабло: $27730
ТС -->
Отправить сообщение для SEng с помощью ICQ
автор темы ТС По умолчанию

Цитата:
Сообщение от Matt Cutts Посмотреть сообщение
Решение на коленке - если строки на английском, предложу вот эту тулзу, предварительно подробив на 10гб файлы. Скорость удивит.
там вперемешку, ru eng
SEng вне форума  
Старый 20.03.2015, 13:32   #21
relonger
Юниор
 
Регистрация: 20.02.2015
Сообщений: 17
Бабло: $4040
По умолчанию

Ну что, еще актуально, помочь?
relonger вне форума