大数据技术Hadoop面试题,看看你能答对多少?

学人智库 时间:2018-02-10 我要投稿
【www.unjs.com - 学人智库】

  单项选择题

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

  a)NameNode

  b)Jobtracker

  c)Datanode

  d)secondaryNameNode

  e)tasktracker

  2. HDfS 中的 block 默认保存几份?

  a)3 份

  b)2 份

  c)1 份

  d)不确定

  3. 下列哪个程序通常与 NameNode 在一个节点启动?

  a)SecondaryNameNode

  b)DataNode

  c)TaskTracker

  d)Jobtracker

  4. hadoop 作者

  a)Martin Fowler

  b)Kent Beck

  c)Doug cutting

  5. HDFS 默认 Block Size

  a)32MB

  b)64MB

  c)128MB

  6. 下列哪项通常是集群的最主要瓶颈

  a)CPU

  b)网络

  c)磁盘

  d)内存

  7. 关于 SecondaryNameNode 哪项是正确的?

  a)它是 NameNode 的热备

  b)它对内存没有要求

  c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间

  d)SecondaryNameNode 应与 NameNode 部署到一个节点

  答案:

  1. 下面哪个程序负责 HDFS 数据存储。答案C datanode

  a)NameNode

  b)Jobtracker

  c)Datanode

  d)secondaryNameNode

  e)tasktracker

  2. HDfS 中的 block 默认保存几份? 答案A默认3分

  a)3 份

  b)2 份

  c)1 份

  d)不确定

  3. 下列哪个程序通常与 NameNode 在一个节点启动?答案D Jobtracker

  a)SecondaryNameNode

  b)DataNode

  c)TaskTracker

  d)Jobtracker

  此题分析:

  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上。

  4. Hadoop 作者 答案C Doug cutting

  a)Martin Fowler

  b)Kent Beck

  c)Doug cutting

  5. HDFS 默认 Block Size 答案:B 64MB

  a)32MB

  b)64MB

  c)128MB

  (因为版本更换较快,这里答案只供参考)

  6. 下列哪项通常是集群的最主要瓶颈:答案:C磁盘

  a)CPU

  b)网络

  c)磁盘IO

  d)内存

  该题解析:

  首先集群的目的是为了节省成本,用廉价的pc机,取代小型机及大型机。小型机和大型机有什么特点?

  1.cpu处理能力强

  2.内存够大

  所以集群的瓶颈不可能是a和d

  3.网络是一种稀缺资源,但是并不是瓶颈。

  4.由于大数据面临海量数据,读写数据都需要io,然后还要冗余数据,hadoop一般备3份数据,所以IO就会打折扣。

  7. 关于 SecondaryNameNode 哪项是正确的?答案C 它对内存没有要求

  a)它是 NameNode 的热备

  b)它对内存没有要求

  c)它的目的是帮助 NameNode 合并编辑日志,减少 NameNode 启动时间

  d)SecondaryNameNode 应与 NameNode 部署到一个节点。

  多选题:

  8. 下列哪项可以作为集群的管理工具

  a)Puppet

  b)Pdsh

  c)Cloudera Manager

  d)d)Zookeeper

  9. 配置机架感知的下面哪项正确

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

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

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

  10. Client 端上传文件的时候下列哪项正确

  a)数据经过 NameNode 传递给 DataNode

  b)Client 端将文件切分为 Block,依次上传

  c)Client 只上传数据到一台 DataNode,然后由 NameNode 负责 Block 复制工作

  11. 下列哪个是 Hadoop 运行的模式

  a)单机版

  b)伪分布式

  c)分布式

  12. Cloudera 提供哪几种安装 CDH 的方法

  a)Cloudera manager

  b)Tar ball