你的位置:首页 > 数据库

[数据库]关于hadoop学习的思考(一) —— 小的知识点的总结

一、对于CDH的小总结:

      CDH:是Cloudera公司在Apache开源项目hadoop的基础上发型的,共有五个版本
前两个已不再更新,最经的两个分别是CDH4(基于hadoop2.0.0版本演化而来)、
CDH5(每隔一段时间就会有更新)

CDH与Apache hadoop的区别:
1.CDH的版本更加清晰,现在只有两个版本CDH3(基于hadoop1.0)和
CDH4(基于hadoop2.0),hadoop的版本相对较混乱,CDH比Apache hadoop
在兼容性、安全性、稳定性上有所增强;

2.CDH在hadoop基础上加入了很多的Patch和修复了BUG,更新速度比hadoop要快。

3.安全,CDH支持kerberos安全认证,Apache hadoop只支持简单的用户名匹配认证。

4.CDH的安装方式有四种:YUM/Apt包、Tar包、RPM包、Cloudera Manager
而Apache hadoop只支持Tar安装。


二、SecondaryNameNode的作用:

     1.SecondaryNameNode是一个NameNode的快照,它会定期的根据配置:
fs.checkpoint.period,默认值是3600秒,去查看备份NameNode节点上的
fsimage镜像文件和edits日志文件,并定期对这两个文件进行合并,将
edits文件的控制在一定的大小限度内。fs.checkpoint.size:设置了
edits文件的大小,默认是64M,一旦edits大于这个值的时候回强制执行检查点。

     2.SecondaryNameNode作为一个检查点会保存最新的检查点的目录结构信息
与NameNode上的目录结构信息是一致的,以前的fsimage和的edits会自动丢失。

     3.当NameNode意外挂掉的时候,需要人为手动的将SecondaryNameNode检查点的信息
复制到NameNode节点:具体操作如下:

     前提:目录已经丢失
     a.把SecondaryNameNode节点中 ${fs.checkpoint.dir} 的所有内容拷贝到
NameNode节点的 ${fs.checkpoint.dir} 目录中
     b.创建一个空的文件夹dfs.namenode.name.dir所指向的文件夹;
     c.启动NameNode:hadoop namenode -importCkeckpoint
(该步会从${fs.checkpoint.dir}中恢复到${dfs.namenode.name.dir}中,
并启动namenode)


三、根据Yarn的架构描述一下一个资源的请求流程:

     1.Nodemanager向ResourceManager注册各个机器的资源;
     2.客户端Client向ResourceManager提交作业;
     3.ApplicationMaster(位于其中的一个NodeManager上)向ResourceManager请
求资源,并判断NodeManager上现有的资源是否满足需求;
     4.ResourceManager以Container的形式将资源发送给ApplicationMaster;
     5.ApplicationMaster将得到的资源分发给NodeManager,各个NodeManager根据
Container,启动一定数量的Task运行作业;
     6.Container(包含了CPU,硬盘,环境配置,启动命令等信息)作为资源单元保证了作业的隔离运行。
     7.各个Task定期的通过心跳机制给ApplicationMaster汇报任务的完成状况。最
终直至任务完成,ApplicaMaster将完成信息返回给ResourceManager。