Слияние большого набора данных самым быстрым способом

У меня большой набор данных ~ 100 ГБ с меньшими файлами csv ~ 100 000. Я хочу объединить все CSV-файлы вместе самым быстрым способом. Файлы находятся в двух разных папках.

  1. Кто-то предложил мне создать два файла с именами файлов из обеих папок и с использованием имени файла, итерации в каталоге для добавления выходных файлов вместо использования glob ls * . Как я могу добиться этого с помощью Linux. Я довольно новичок в этом, если кто-то может мне помочь, я был бы признателен.
  2. Если какой-либо другой способ, учитывая набор данных, добиться результата

2 Solutions collect form web for “Слияние большого набора данных самым быстрым способом”

Попробуйте что-то вроде этого:

 find /path/to/dir1 /path/to/dir2 -type f -name '*.csv' -exec cat {} + >/path/to/merged.csv 

Обязательно не помещайте объединенный файл в любой из входных каталогов. 🙂

Если вы правильно поняли, вы хотите создать один (100 ГБ размер?) Файл из всех ваших файлов. В этом случае кошка может сделать трюк:

 cat foo1 foo2 bar1 bar2 > newfile 

или в вашем случае

 cat folder1/* folder2/* > newfile 

который возьмет все файлы из folder1 и folder2 и объединит их (как текст) в новый файл. обратите внимание, что кошка просто добавляет файлы в конец (например, добавляет строки)

Тем не менее, это сохранит старые файлы, и вам понадобится в два раза больше места, поэтому вы можете также обрабатывать их отдельно:

 for f in folder1/* folder2/* ; do cat $f >> newfile && rm $f done 

таким образом каждый файл добавляется, а затем удаляется.

Это то, что вы искали?

  • Я хочу динамически печатать значение из файла csv
  • Сортировка каталогов и файлов в каждом каталоге в порядке возрастания и экспорт данных в csv
  • Как Wget изображения из CSV, добавлять URL-адрес и имена файлов из полей?
  • Команда unix для усечения каждой строки файла
  • создавать данные для чтения текста из файла
  • вырезать первый и последний элемент в CSV
  • Учитывая CSV-файл, как мне удалить контент между 2-й и 3-й вкладками каждой строки?
  • Добавление значений во втором столбце, если первая запись столбца одинакова в UNIX
  • Удалить запятую между кавычками только в файле с разделителями-запятыми
  • Сортировка файла CSV по первому столбцу, игнорирование заголовка
  • Как заставить excel интерпретировать китайские символы в CSV-файле
  • Как я могу изменить первую строку большого файла gzip без распаковки всего этого?
  • Linux и Unix - лучшая ОС в мире.