hadoop简介
hadoop简介
1.hadoop是什么?
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
Hadoop实现了一个分布式文件系统(HadoopDistributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是YARN、HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
2.Hadoop版本变化
Apache Hadoop版本分为1.0和2.0两个版本。(现在3已经有了,不过多用2.x)
Hadoop1.0由分布式存储系统HDFS和分布式计算框架MapReduce组成,其中HDFS由一个NameNode和多个DateNode组成,MapReduce由一个JobTracker和多个TaskTracker组成。JobTracker负责资源管理和所有作业的控制,TaskTracker负责接收来自JobTracker的命令并执行它。
Hadoop2.0包含两个版本,分别是 0.23.x和 2.x,它们完全不同于Hadoop 1.0,是一套全新的架构,均包含HDFS Federation 和YARN 两个系统,相比于0.23.x,2.x 增加了NameNode HA 和Wire-compatibility 两个重大特性。
Hadoop2.0相对Hadoop1.0做的改进
1、针对Hadoop1.0单NameNode制约HDFS的扩展性问题,提出HDFS Federation,它让多个NameNode分管不同的目录进而实现访问隔离和横向扩展,同时解决了NameNode单点故障问题;
2、针对Hadoop1.0中的MapReduce在扩展性和多框架支持等方面的不足,它将JobTracker中的资源管理和作业控制分开,分别由ResourceManager(负责所有应用程序的资源分配)和ApplicationMaster(负责管理一个应用程序)实现,即引入了资源管理框架Yarn。
3、hadoop2.0相对hadoop1.0没有JobTracker和TaskTracker进程,多了ResourceManager和NodeManager进程。