在目前生活中,随着移动互联网科技不断的发展和创新,如今无论是公司还是开发者个人而言,面试都是一项耗时耗钱的项目,从而小讲对于日常Hadoop面试中可能会遇到的问题进行了筛选与汇总。这个是第一版,下周带来第二版(更新版)。
1单选题
1.1下面哪个程序负责HDFS数据存储。
a)NameNode
b)Jobtracker
c)Datanode
d)secondaryNameNode
e)tasktracker
答案Cdatanode
1.2HDfS中的block默认保存几份?
a)3份
b)2份
c)1份
d)不确定
答案A默认3份
1.3下列哪个程序通常与NameNode在一个节点启动?
a)SecondaryNameNode
b)DataNode
c)TaskTracker
d)Jobtracker
答案D,此题分析:
hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondaryNameNode(运行在单独的物理机器上)和NameNode运行在不同的机器上。
JobTracker和TaskTracker
JobTracker对应于NameNode
TaskTracker对应于DataNode
DataNode和NameNode是针对数据存放来而言的
JobTracker和TaskTracker是对于MapReduce执行而言的
mapreduce中几个主要概念,mapreduce整体上可以分为这么几条执行线索:obclient,JobTracker与TaskTracker。
1、JobClient会在用户端通过JobClient类将应用已经配置参数打包成jar文件存储到hdfs,并把路径提交到Jobtracker,然后由JobTracker创建每一个Task(即MapTask和ReduceTask)并将它们分发到各个TaskTracker服务中去执行。
2、JobTracker是一个master服务,软件启动之后JobTracker接收Job,负责调度Job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracker部署在单独的机器上。
3、TaskTracker是运行在多个节点上的slaver服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。TaskTracker都需要运行在HDFS的DataNode上。
1.4Hadoop作者
a)MartinFowler
b)KentBeck
c)Dougcutting
答案CDougcutting
1.5HDFS默认BlockSize
a)32MB
b)64MB
c)128MB
答案:B
(因为版本更换较快,这里答案只供参考)
1.6下列哪项通常是集群的最主要瓶颈:
a)CPU
b)网络
c)磁盘IO
d)内存
答案:C磁盘
该题解析:
首先集群的目的是为了节省成本,用廉价的pc机,取代小型机及大型机。小型机和大型机有什么特点?
1.cpu处理能力强
2.内存够大
所以集群的瓶颈不可能是a和d
3.网络是一种稀缺资源,但是并不是瓶颈。
4.由于大数据面临海量数据,读写数据都需要io,然后还要冗余数据,hadoop一般备3份数据,所以IO就会打折扣。
1.7关于SecondaryNameNode哪项是正确的?
a)它是NameNode的热备
b)它对内存没有要求
c)它的目的是帮助NameNode合并编辑日志,减少NameNode启动时间
d)SecondaryNameNode应与NameNode部署到一个节点。
答案C
2多选题
2.1下列哪项可以作为集群的管理?
a)Puppet
b)Pdsh
c)ClouderaManager
d)Zookeeper
答案:ABD
2.2配置机架感知的下面哪项正确:
a)如果一个机架出问题,不会影响数据读写
b)写入数据的时候会写到不同机架的DataNode中
c)MapReduce会根据机架获取离自己比较近的网络数据
答案ABC
2.3Client端上传文件的时候下列哪项正确?
a)数据经过NameNode传递给DataNode
b)Client端将文件切分为Block,依次上传
c)Client只上传数据到一台DataNode,然后由NameNode负责Block复制工作
答案B,该题分析:
Client向NameNode发起文件写入的请求。
NameNode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。
Client将文件划分为多个Block,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。
2.4下列哪个是Hadoop运行的模式:
a)单机版
b)伪分布式
c)分布式
答案ABC
2.5Cloudera提供哪几种安装CDH的方法?
a)Clouderamanager
b)Tarball
c)Yum
d)Rpm
答案:ABCD
总共100道题常见Hadoop面试/笔试题及答案解析,限于篇幅,这里列出一些,其他的请下载文后附件自行阅读。
1单选题
1.1下面哪个程序负责HDFS数据存储。
a)NameNode
b)Jobtracker
c)Datanode
d)secondaryNameNode
e)tasktracker
答案Cdatanode
1.2HDfS中的block默认保存几份?
a)3份
b)2份
c)1份
d)不确定
答案A默认3份
1.3下列哪个程序通常与NameNode在一个节点启动?
a)SecondaryNameNode
b)DataNode
c)TaskTracker
d)Jobtracker
答案D,此题分析:
hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondaryNameNode(运行在单独的物理机器上)和NameNode运行在不同的机器上。
JobTracker和TaskTracker
JobTracker对应于NameNode
TaskTracker对应于DataNode
DataNode和NameNode是针对数据存放来而言的
JobTracker和TaskTracker是对于MapReduce执行而言的
mapreduce中几个主要概念,mapreduce整体上可以分为这么几条执行线索:obclient,JobTracker与TaskTracker。
1、JobClient会在用户端通过JobClient类将应用已经配置参数打包成jar文件存储到hdfs,并把路径提交到Jobtracker,然后由JobTracker创建每一个Task(即MapTask和ReduceTask)并将它们分发到各个TaskTracker服务中去执行。
2、JobTracker是一个master服务,软件启动之后JobTracker接收Job,负责调度Job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracker部署在单独的机器上。
3、TaskTracker是运行在多个节点上的slaver服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每一个任务。TaskTracker都需要运行在HDFS的DataNode上。
1.4Hadoop作者
a)MartinFowler
b)KentBeck
c)Dougcutting
答案CDougcutting
1.5HDFS默认BlockSize
a)32MB
b)64MB
c)128MB
答案:B
(因为版本更换较快,这里答案只供参考)
1.6下列哪项通常是集群的最主要瓶颈:
a)CPU
b)网络
c)磁盘IO
d)内存
答案:C磁盘
该题解析:
首先集群的目的是为了节省成本,用廉价的pc机,取代小型机及大型机。小型机和大型机有什么特点?
1.cpu处理能力强
2.内存够大
所以集群的瓶颈不可能是a和d
3.网络是一种稀缺资源,但是并不是瓶颈。
4.由于大数据面临海量数据,读写数据都需要io,然后还要冗余数据,hadoop一般备3份数据,所以IO就会打折扣。
1.7关于SecondaryNameNode哪项是正确的?
a)它是NameNode的热备
b)它对内存没有要求
c)它的目的是帮助NameNode合并编辑日志,减少NameNode启动时间
d)SecondaryNameNode应与NameNode部署到一个节点。
答案C
2多选题
2.1下列哪项可以作为集群的管理?
a)Puppet
b)Pdsh
c)ClouderaManager
d)Zookeeper
答案:ABD
2.2配置机架感知的下面哪项正确:
a)如果一个机架出问题,不会影响数据读写
b)写入数据的时候会写到不同机架的DataNode中
c)MapReduce会根据机架获取离自己比较近的网络数据
答案ABC
2.3Client端上传文件的时候下列哪项正确?
a)数据经过NameNode传递给DataNode
b)Client端将文件切分为Block,依次上传
c)Client只上传数据到一台DataNode,然后由NameNode负责Block复制工作
答案B,该题分析:
Client向NameNode发起文件写入的请求。
NameNode根据文件大小和文件块配置情况,返回给Client它所管理部分DataNode的信息。
Client将文件划分为多个Block,根据DataNode的地址信息,按顺序写入到每一个DataNode块中。
2.4下列哪个是Hadoop运行的模式:
a)单机版
b)伪分布式
c)分布式
答案ABC
2.5Cloudera提供哪几种安装CDH的方法?
a)Clouderamanager
b)Tarball
c)Yum
d)Rpm
答案:ABCD
总共100道题常见Hadoop面试/笔试题及答案解析,限于篇幅,这里列出一些,其他的请下载文后附件自行阅读。