Hadoop 是Apache 软件基金会旗下的一个开源分布式计算平台。以Hadoop 分布式文件系统(HDFS,Hadoop Distributed Filesystem)和MapReduce(Google MapReduce的开源实现)为核心的Hadoop 为用户提供了系统底层细节透明的分布式基础架构。
对于Hadoop 的集群来讲,可以分成两大类角色:Master 和Salve。一个HDFS 集群是由一个NameNode 和若干个DataNode 组成的。其中NameNode 作为主服务器,管理文件系统的命名空间和客户端对文件系统的访问操作;集群中的DataNode 管理存储的数据。MapReduce 框架是由一个单独运行在主节点上的JobTracker 和运行在每个集群从节点的TaskTracker 共同组成的。主节点负责调度构成一个作业的所有任务,这些任务分布在不同的从节点上。主节点监控它们的执行情况,并且重新执行之前的失败任务;从节点仅负责由主节点指派的任务。当一个Job 被提交时,JobTracker 接收到提交作业和配置信息之后,就会将配置信息等分发给从节点,同时调度任务并监控TaskTracker 的执行。