您的位置:首页 > 职场人生

100道经典Hadoop常见面试/笔试题及答案解析

2017-03-16 16:59 441 查看
100道常见Hadoop面试/笔试题,都是带有答案解析的哦,各类题型都有,单选题、多选题、判断题和简单题,这是第一版,下周推出第二版,将会加入更多面试/笔试题。

1 单选题

1.1 下面哪个程序负责 HDFS 数据存储。

a)NameNode

b)Jobtracker

c)Datanode

d)secondaryNameNode

e)tasktracker

答案C datanode

1.2 HDfS 中的 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在一个数量级上,所以通常secondary NameNode(运行在单独的物理机器上)和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.4 Hadoop 作者

a)Martin Fowler

b)Kent Beck

c)Doug cutting

答案C Doug cutting

1.5 HDFS 默认 Block Size

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)Cloudera Manager

d)Zookeeper

答案:ABD

2.2 配置机架感知的下面哪项正确:

a)如果一个机架出问题,不会影响数据读写

b)写入数据的时候会写到不同机架的 DataNode 中

c)MapReduce 会根据机架获取离自己比较近的网络数据

答案ABC

2.3 Client 端上传文件的时候下列哪项正确?

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.5 Cloudera 提供哪几种安装 CDH 的方法?

a)Cloudera manager

b)Tarball

c)Yum

d)Rpm

答案:ABCD

总共100道题常见Hadoop面试/笔试题及答案解析,限于篇幅,这里列出一些,其他的请下载文后附件自行阅读。

http://www.dajiangtai.com/community/18284.do
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop 面试