我从hadoop开始尝试实现hadoop集群。我是分布式系统的新手,所以对这个术语有点困惑。namenodes和datanodes是否对应于物理硬盘?如果说我需要在一个cpu单元上运行map任务,那么在设置mapred.tasktracker.map.tasks.maximum标志时,我们是否将map任务分配给各个内核或处理器(使用多核)“节点”意味着什么?处理器、物理磁盘还是内核?
ia2d9nvy1#
首先(在术语方面),我假设您的意思是示例化一个hadoop集群而不是实现一个。namenode管理一个或多个datanode。块id的文件名索引由内存中的namenode维护,并定期刷新到磁盘。数据块的实际位置由datanodes报告给name节点,从name节点管理块的分配、迁移、复制和移除。数据节点管理物理硬盘上块的存储。一个datanode可以在一个或多个物理磁盘上分配它的块(事实上,我们鼓励您使用多个物理磁盘,而不是单个逻辑磁盘卷)作业跟踪器(job tracker,jt)负责管理一个或多个任务跟踪器(task tracker,tt)的任务分配过程(map或reduce)。通常,您将配置集群中的每个节点(物理机),以便可以运行的最大任务数(map/reduce)与核心数匹配(这不是一个硬性规则,取决于您希望如何使用集群)节点通常意味着一台物理机器,它通常运行一个任务跟踪器(运行map/reduce任务)和一个数据节点(存储/提供文件块)。
1条答案
按热度按时间ia2d9nvy1#
首先(在术语方面),我假设您的意思是示例化一个hadoop集群而不是实现一个。
namenode管理一个或多个datanode。块id的文件名索引由内存中的namenode维护,并定期刷新到磁盘。数据块的实际位置由datanodes报告给name节点,从name节点管理块的分配、迁移、复制和移除。
数据节点管理物理硬盘上块的存储。一个datanode可以在一个或多个物理磁盘上分配它的块(事实上,我们鼓励您使用多个物理磁盘,而不是单个逻辑磁盘卷)
作业跟踪器(job tracker,jt)负责管理一个或多个任务跟踪器(task tracker,tt)的任务分配过程(map或reduce)。通常,您将配置集群中的每个节点(物理机),以便可以运行的最大任务数(map/reduce)与核心数匹配(这不是一个硬性规则,取决于您希望如何使用集群)
节点通常意味着一台物理机器,它通常运行一个任务跟踪器(运行map/reduce任务)和一个数据节点(存储/提供文件块)。