Pracuję nad skonfigurowaniem klastru hadoop, w którym wszystkie węzły są dość heterogeniczne, tj. Każda ma inną liczbę rdzeni. Obecnie muszę ręcznie edytować mapred-site.xml
w każdym węźle wypełnić {cores}
:Automatycznie ustawić maksymalną liczbę zadań mapowania na węzeł na liczbę rdzeni?
<property>
<name>mapred.tasktracker.map.tasks.maximum</name>
<value>{cores}</value>
</property>
Czy istnieje prostszy sposób na to, kiedy dodać nowe węzły? Większość innych wartości to niektóre wartości domyślne, a maksymalne zadania mapowe to jedyna rzecz, która zmienia się z węzła na węzeł.
Dzięki. Wiedziałem, że mogę uruchomić jakiś skrypt, żeby to zrobić, ale liczyłem na jakąś zmienną, którą mógłbym wprowadzić. Albo co najmniej rozsądniejsze domyślne niż 2. – job
Można poprawić kod źródłowy TaskTracker, aby zinterpretować formuła w mapred-site.xml (np. '$ CORES/2-1' na przykład) - ale najlepiej też znaleźć metodę Java, aby określić liczbę rdzeni. –