2016-11-07 5 views
0

Я столкнулся с проблемами производительности при экспорте данных из Hive в Netezza через экспорт sqoop.Проблемы производительности экспорта sqoop

Есть ли способ улучшить производительность sqoop?

Вот подробности:

columns present in the table(source and destination) : 282 
format of file : text 
no of splits: 99 
data to be exported : 1000 MB 
+0

Вы можете добавить команду 'sqoop'? –

+0

Я бы попросил вас разбить процесс на несколько потоков, параллельные нагрузки таким образом, что вы можете улучшить скорость передачи. – NzGuy

+0

Вот пример использования команды sqoop: sqoop export -Dmapreduce.job.queuename = QUEUENAME --connect jdbc: netezza:// SERVER_STRING/DB_NAME - имя пользователя USER - password-файл/PATH-таблица TABLE_NAME --batch -columns "СПИСОК 282 КОЛУМБОВ" --export-dir/DIR_PATH - входные поля-завершены '\ 001 '-lines-terminated-by' \ n '--input-null-string "\\\ N" - input-null-non-string "\\\ N" -m 100 –

ответ

1

Использование -batch в команде экспорта sqoop. Также

Для дальнейшего повышения загрузки данных вы можете использовать --direct. Ограничение: двоичные и большие типы объектов не поддерживаются в этом режиме.

0

Каков размер вашего кластера и сколько максимальных слотов вы можете выделить для своей работы Sqoop? Соответственно, дайте -m. что увеличит общее время обработки. Но, пожалуйста, убедитесь, что экспорт sqoop не является атомарным процессом, поэтому создайте промежуточную таблицу, а затем используйте промежуточную таблицу для экспорта данных, иначе может возникнуть вероятность несогласованных данных.