1.用图与自己的话,简要描述Hadoop起源与发展阶段。(作业3中剪过来)
HADOOP创始人:
从与谷歌系统的关系,关键时间节点,1.x,2.x与3.x的区别,不同公司发行版本等方面来讲。
Hadoop是Apache旗下的一个用java语言实现的开源软件框架,是一个开发和运行处理大规模数据的软件平台。
Hadoop是Apache Lucene的创始人Doug Cutting创建的。起源于Nutch,Nutch的设计目标是构建一个大型的全网搜索引擎。在2004年的时候谷歌推出了MapReduce系统,同时,Nutch的开发人员以谷歌的技术为基础,开发实现了HDFS和MAPREDUCE,并从Nutch脱离成为独立的项目HADOOP,并开始了迅速的发展。hadoop的开发多基于谷歌的论文技术,因此hadoop的发展离不开谷歌。
版本不同:
1.X版本系列:第二代开源版本,主要修复了0.X版本的bug,现在已经被淘汰。
2.X版本系列:架构产生重大的变化,引入了yarn平台等特性,是现在的主流版本。
3.X版本系列:对HDFS、MapReduce、yarn都有较大的升级,增加了Ozone key-value存储。
发行版本主要分为免费开源版本和收费版本
Apache就是免费开源版本,靠全世界的优秀开源贡献者维护,更新较快。
HortonWorks,由雅虎主导的免费开源软件,有一整套的WEB管理界面。
Cloudera是收费版本。是美国一家大数据公司在apache的开源hadoop的版本上,修复了补丁,实现版本之间稳定运行
2.用图与自己的话,简要描述名称节点、数据节点的主要功能及相互关系、名称节点的工作机制。
名称节点:目录、类型、权限等元数据
名称节点(NameNode)负责管理分布式文件系统的命名空间(Namespace),保存了两个核心的数据结构,即FsImage和EditLog
FsImage用于维护文件系统树以及文件树中所有的文件和文件夹的元数据。
数据节点:真实数据 数据节点是分布式文件系统HDFS的工作节点,负责数据的存储和读取,会根据客户端或者是名称节点的调度来进行数据的存储和检索,并且向名称节点定期发送自己所存储的块的列表