Я тестирую свой UDF на виртуальной машине Windows с 8 ядрами и 8 ГБ оперативной памяти. Я создал 5 файлов по 2 ГБ и запустил скрипт свиней после изменения «mapred.tasktracker.map.tasks.maximum». следующие во время выполнения и статистика:Оптимизация UDF в Hadoop
mapred.tasktracker.map.tasks.maximum = 2
duration = 20 min 54 sec
mapred.tasktracker.map.tasks.maximum = 4
duration = 13 min 38 sec and about 30 sec for task
35% better
mapred.tasktracker.map. tasks.maximum = 8
duration = 12 min 44 sec and about 1 min for task
only 7% better
Почему такое небольшое улучшение при изменении параметров? есть идеи? Работа была разделена на 145 задач. !
[4 слота] [1]
[8 слоты] [2]
Сегодня я повторил тест на локальном компьютере Windows (не виртуальном) с локальным диском и получил те же результаты. На локальной машине я не могу улучшить результат? – geldar
Суть в том, что вам нужно больше дисков для обеспечения пропускной способности вашей работы, на какой-то стадии добавление большего количества слотов задач (ядер) будет зависеть, поскольку вы ограничены скоростью чтения диска –