2011-02-07 2 views
1

Я попытался предваряя мой запрос с:Умение ограничить максимальные редукторы для хэд-хауса?

set mapred.running.reduce.limit = 25; 

И

set hive.exec.reducers.max = 35; 

Последний один в тюрьме работу с 530 переходников до 35 ... которая заставляет меня думать, что это будет попробовать и рожок для обуви 530 редукторов стоит работа в 35.

Теперь давая

set mapred.tasktracker.reduce.tasks.maximum = 3; 

попытаться выяснить, является ли это число неким максимальным для каждого узла (ранее было 7 на кластере с 70 потенциальными редукторами).

Update:

set mapred.tasktracker.reduce.tasks.maximum = 3; 

не имели никакого эффекта, стоит попробовать, хотя.

ответ

1

Не совсем решение вопроса, но потенциально хороший компромисс.

set hive.exec.reducers.max = 45; 

Для супер запроса обреченности, который имеет 400+ восстановителей, это остроги самого дорогая задача ульи до 35 редукторов общих. У моего кластера в настоящее время только 10 узлов, каждый узел поддерживает 7 редукторов ... поэтому на самом деле только 70 редукторов могут работать как один раз. Замещая работу до менее 70, я заметил небольшое улучшение скорости без каких-либо видимых изменений в конечном продукте. Тестирование этого в производстве, чтобы выяснить, что именно происходит здесь. Тем временем это хорошее компромиссное решение.

Смежные вопросы