Pergunta

Eu tenho uma Hadoop 2.2 cluster implementado em um pequeno número de máquinas poderosas.Eu tenho uma restrição para o uso de FIOS, como framework, que eu não estou muito familiarizado com.

  1. Como faço para controlar o número real de mapear e reduzir as tarefas que serão executadas em paralelo?Cada máquina tem muitos núcleos de CPU (12 a 32) e memória RAM suficiente.Eu quero aproveitá-las ao máximo.
  2. Como posso monitorar que as minhas configurações, na verdade, levou a uma melhor utilização da máquina?Onde posso verificar quantos núcleos (threads, processos) foram utilizados durante um determinado trabalho?

Obrigado por me ajudar a derreter estas máquinas :)

Foi útil?

Solução

1.
No MR1, o Mapred.TaskTracker.map.tasks.maximum e o Mapred.TaskTacker.Reduce.Tasks.Maximum propriedades ditou quantos mapas e reduzem as slots cada Tasktracker tinha.

Essas propriedades não existem mais no fio. Em vez disso, o fio usa yarn.nodemanager.resource.memory-MB e Yarn.nodemanager.resource.cpu-vcores, que controlam a quantidade de memória e CPU em cada nó, ambos disponíveis para os dois mapas e reduzem

Essencialmente:
O fio não tem tasktrackers, mas apenas genéricos nodemanagers. Portanto, não há mais slots de mapas e reduza a separação das slots. Tudo depende da quantidade de memória em uso / demandada

2.

Usando a interface do usuário da Web Você pode obter lote de monitoramento / administração tipo de informação:

namenode - http://: 50070 /
Gerenciador de recursos - http://: 8088 /

Além disso Apache Ambari é destinado a este: http://ambari.apache.org/

e matiz para a interface com o agrupamento do hadoop / fios de várias maneiras: http://gethue.com/

Outras dicas

    .
  1. há um bomGuia Na configuração de fios da Hortonworks
  2. Você pode analisar seu trabalho em Histórico de trabalho servidor.Geralmente, pode ser encontrado na porta 19888. Ambari e ganglia também são muito bons para medição de utilização de cluster.

Eu tenho o mesmo problema, a fim de aumentar o número de mappers, é recomendado para reduzir o tamanho da entrada de divisão (cada entrada de divisão é processada por um mapeador de e para um recipiente).Eu não sei como fazê-lo,

de fato, o hadoop 2.2 /fio não leva em conta nenhum dos seguintes configurações

<property>
    <name>mapreduce.input.fileinputformat.split.minsize</name>
    <value>1</value>
</property>
<property>
    <name>mapreduce.input.fileinputformat.split.maxsize</name>
    <value>16777216</value>
</property>

<property>
    <name>mapred.min.split.size</name>
    <value>1</value>
</property>
<property>
    <name>mapred.max.split.size</name>
    <value>16777216</value>
</property> 

melhor

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top