Hadoop练习题001
1.假设有Hadoop系统中有DataNode节点1、2、3,且DataNode节点1、2、3上有Block1,Client请求上传文件file1至Hadoop系统,请说明Hadoop写操作排序
(1) Client通过Distributed FileSystem模块向NameNode请求上传文件file1,NameNode检查目标文件是否已存在,父目录是否存在
(2) NameNode返回是否可以上传
(3) Client请求file1上传到哪几个DataNode服务器上
(4) NameNode返回3个DataNode节点,分别为DataNode节点1、DataNode节点2、DataNode节点3
(5) Client通过FSDataOutputStream模块请求DataNode节点1上传数据,DataNode节点1收到请求会继续调用DataNode节点2,然后DataNode节点2调用DataNode节点3,将这个通信管道建立完成
(6) DataNode节点1、DataNode节点2、DataNode节点3逐级应答客户端
(7) Client开始往DataNode节点1上传file1,以packet为单位,DataNode节点1收到一个packet就会传给DataNode节点2,DataNode节点2传给DataNode节点3;DataNode节点1每传一个packet会放入一个应答队列等待应答
(8) 当file1传输完成之后,Client再次请求NameNode上传下一个文件到服务器
2.SNN作用
SecondaryNameNode 并非 NameNode 的热备,当 NameNode 挂掉的时候,它并不马上替换掉 NameNode 提供服务。
SecondaryNameNode 是辅助 NameNode,分担其工作量,比如定期合并 fsimage 和 edits,并推送给 NameNode,减少 NameNode 启动时间,在紧急的情况下可辅助恢复 NameNode。
3.关于MapReduce的描述错误的是
MapReduce框架由一个单独的master JobTracker 和每个集群设备一个slave TaskTracker共同组成
master负责调度构成一个作业的所有任务,这些任务分布在不同的slave上
master监控slave上任务的执行,重新执行已经失败的任务。而slave仅负责执行由master指派的任务
slave不仅负责执行由master指派的任务,还会重新执行失败的任务(错)
master监控slave上任务的执行,slave仅负责执行由master指派的任务
4.NameNode功能
- 响应客户端请求
- 管理DataNode上文件块Block的均衡
- 管理DataNode上文件块Block的均衡
5.有关Hadoop生态中各个角色对在高可用上的作用下列描述错误的是(A)
A
YARN集群:为主备切换控制器提供主备选举支持
ZooKeeper为主备切换控制器提供主备选举支持
B
共享存储系统:共享存储系统保存了NameNode在运行过程中所产生的HDFS的元数据,Active NameNode和Standby NameNode通过共享存储系统实现元数据同步
C
DataNode节点:DataNode节点的HDFS的Block和DataNode之间的映射关系,在故障主备切换时,DataNode会主动上报Block和DataNode的映射关系
D
NameNode节点:一台处于 Active 状态,为主 NameNode,另外一台处于 Standby 状态,为备 NameNode,只有主 NameNode 才能对外提供读写服务