Количество картографов в sqoop - PullRequest
0 голосов
/ 29 апреля 2018

Я знаю, что у sqoop есть опция, в которой мы можем установить количество картографов (по умолчанию 4). В проектах реального времени кто решает, и как определяется количество картографов? Используем ли мы значение по умолчанию или любое другое число? Я знаю некоторые теоретические ссылки, в которых говорится, что число картографов определяется вашим оборудованием и другими соображениями, но это не дает мне практического решения. Любая помощь в том, как это на самом деле сделано в производстве, была бы очень уместной.

1 Ответ

0 голосов
/ 29 апреля 2018

--num-mappers является подсказкой, и Sqoop может не использовать точно указанное число. По умолчанию это значение 4.

Этот параметр управляет параллелизмом. Например, если вы импортируете данные из базы данных в таблицу Hive, число картографов определяет параллельные соединения, которые Sqoop будет устанавливать с базой данных для одновременной передачи и выполнения передачи данных. С одной стороны, использование большего числа картографов приведет к большему параллелизму и ускорит передачу данных. С другой стороны, это увеличит нагрузку на базу данных.

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

Кроме того, в вашем кластере должно быть достаточно свободных ресурсов для поддержки указанного числа картографов.

Вы можете выполнить несколько пробных прогонов с несколькими различными значениями и посмотреть, что дает наилучшую производительность для вашего набора данных и среды.

...