В настоящее время, когда я STORE в HDFS, он создает много файлов деталей.
Можно ли сохранить один CSV файл?
Ответ 1
Вы можете сделать это несколькими способами:
Чтобы установить количество редукторов для всех операций Pig, вы можете использовать свойство default_parallel, но это означает, что каждый отдельный шаг будет использовать один редуктор, уменьшая пропускную способность:
set default_parallel 1;
До вызова STORE, если одна из выполняемых операций (COGROUP, CROSS, DISTINCT, GROUP, JOIN (внутренняя), JOIN (внешняя) и ORDER BY), вы можете использовать PARALLEL 1 чтобы обозначить использование одного редуктора для выполнения этой команды:
Вы также можете использовать команду Hadoop getmerge для объединения всех этих файлов part *.
Это возможно только в том случае, если вы запускаете скрипты Pig из оболочки Pig (а не из Java).
Это как преимущество перед предлагаемым решением: поскольку вы все еще можете использовать несколько редукторов для обработки ваших данных, ваша работа может работать быстрее, особенно если каждый редуктор выводит несколько данных.