大数据面试题之Hadoop(一)


一、Hadoop是什么?

Hadoop是一个大数据的分布式存储和计算平台
往大了说Hadoop是大数据的生态圈,往小了说Hadoop就是一个框架

二、Hadoop包含什么?

2.1.HDFS-分布式数据存储系统

包含NameNode,DataNode,SecondaryNameNode
后续会详细说明

2.2.Yarn-任务调度,资源分配

包含ResourceManager,NodeManager,ApplicationMaster,Container

2.3.MapReduce-分布式计算框架

包含JobTracker,TaskTracker,Task

三、Hadoop的特点

1.扩容能力强,集群由多个节点组成,可以由一个节点迅速的扩展至多个节点
2.低成本,Hadoop可以基于廉价的服务器集群,且能处理海量的数据
3.高效率,节点之间传输数据迅速
4.可靠性,节点与节点之间可以进行数据备份

四、Hadoop各个版本的异同

0.X版本,最早的开源版本,基本没有企业使用
1.X版本,修复0.X版本中的Bug,无特别的变动
2.X版本,引入任务调度框架Yarn,默认块大小由64M修改为128M,也是企业用的最多的一个版本
3.X版本,EC技术,Yarn的时间轴服务等,用的企业较少

五、HDFS常见面试题

5.1.NN,DN,SN的作用分别是什么

NN:NameNode,用来管理文件的元数据,监控DN,和DN保持心跳

DN:DataNode,真正存储数据的

SN:定期合并镜像文件和日志文件,减少DN的启动时间

5.2.HDFS读流程

1.客户端Client向NM发起读取文件的请求
2.NM收到请求去自身维护的元数据中查询客户端要读取的文件
3.如果有,NM返回给客户端信息,客户端接收到后去DN上请求读取数据
4.DN收到请求后和客户端建立传输连接,并将数据返回直至数据传输结束
HDFS读取数据流程

5.3.HDFS写(上传)流程

1.客户端clinet向NM发起上传文件的请求,NM收到请求后查询自身维护的元数据,看上传的文件是否已经存在,如果不存在,返回给客户端可以上传文件的请求,并告知客户端具体的DN
2.客户端收到请求后进行文件的切割,与DN建立传输连接,开始传输到一个块文件
3.与第一个DN传输完毕后,第一个DN会横向的和另外一个DN建立连接开始进行数据备份,直到所有的DN都有该份数据
4.重复以上步骤直到所有的数据都传输完毕为止
在这里插入图片描述

5.4.SecondaryNameNode的工作机制

SecondaryNameNode的主要作用是帮助NM定期的进行镜像文件和日志的合并,从而减少NM的启动时间,同时也能进行数据的备份操作

具体的流程如下;
1.SN从NM处拷贝已经存在的镜像文件和日志文件
2.拷贝完毕后加载到内存进行合并,合并为新的Fsimage.ckpt
3.将合并好的文件发送给NM,重新命名并替换原有的Fsimage

如有错误请指出,未完待续

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值