Big Data: A arquitetura do Hadoop é projetada para garantir alto desempenho na manipulação de grandes volumes de dados distribuídos. Um de seus principais diferenciais é a capacidade de dividir tarefas entre diversos nós do cluster. Qual componente da arquitetura Hadoop é responsável por gerenciar os recursos computacionais disponíveis e monitorar o uso de CPU, memória e disco em cada máquina do cluster?
A arquitetura do Hadoop é projetada para garantir alto desempenho na manipulação de grandes volumes de dados distribuídos. Um de seus principais diferenciais é a capacidade de dividir tarefas entre diversos nós do cluster. Qual componente da arquitetura Hadoop é responsável por gerenciar os recursos computacionais disponíveis e monitorar o uso de CPU, memória e disco em cada máquina do cluster?
A) NameNode
B) NodeManager
C) DataNode
D) TaskTracker
E) Mapper
No Hadoop (na arquitetura com YARN), o gerenciamento de recursos do cluster é dividido principalmente em dois componentes:
- ResourceManager (global): decide como os recursos do cluster serão alocados entre as aplicações (agendamento).
- NodeManager (por nó): roda em cada máquina do cluster e é responsável por monitorar e reportar o uso de recursos locais, como CPU, memória e disco, além de gerenciar a execução de containers naquele nó.
Como a questão pergunta especificamente pelo componente que gerencia os recursos computacionais disponíveis e monitora CPU, memória e disco em cada máquina do cluster, isso descreve o papel do NodeManager.
(Para não confundir: NameNode e DataNode são do HDFS; TaskTracker é do modelo antigo MRv1, substituído pelo NodeManager no YARN; Mapper é uma função do MapReduce, não um gerenciador de recursos.)
Alternativa correta: (B).