大数据技术Hadoop笔测试题

大数据技术Hadoop笔测试题

简介:Hadoop具有高容错的特点,设计部署在低成本的硬件上。以下是我的J.L .推荐的面试笔试题目和经验,欢迎阅读。

多选

1.以下哪个程序负责HDFS数据存储?

a)NameNode

b)求职跟踪系统

c)数据节点

d)次要名称节点

e)任务跟踪系统

2.HDFS的区块默认保存多少份?

A)3份副本

B)2份

C)1份

不确定性

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

a)次要名称节点

b)数据节点

c)任务跟踪者

d)求职跟踪系统

4.Hadoop作者

马丁·福勒

肯特·贝克

c)道格切割

5.HDFS默认块大小

a)32MB

b)64MB

c)128MB

6.以下哪一项通常是集群最重要的瓶颈?

a)中央处理器

b)网络

c)磁盘

d)内存

7.关于SecondaryNameNode什么是真的?

a)它是NameNode的热备盘。

b)它没有内存要求。

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

D)SecondaryNameNode应部署到具有NameNode的节点。

多项选择题

8.以下哪一项可以用作集群管理工具?

a)木偶

b)Pdsh

c)云时代管理器

动物园管理员

9.关于配置机架感知,以下哪一项是正确的?

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

b)写数据时,会写到不同机架的DataNode中。

C)MapReduce会根据机架获取接近自己的网络数据。

10.在客户端上传文件时,以下哪一项是正确的?

a)数据通过NameNode传输到DataNode。

b)b)客户端将文件切割成块并依次上传。

c)客户端仅将数据上传到DataNode,然后NameNode负责数据块复制。

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

a)独立版本

b)伪分布式

c)分布式

12.Cloudera提供了哪些安装CDH的方法?

a)Cloudera管理器

b)焦油球

c)Yum d)Rpm

对还是错

13.Ganglia不仅能监控,还能报警。( )

14.不能修改块大小。( )

15.Nagios不能监控Hadoop集群,因为它不提供Hadoop支持。( )

16.如果NameNode意外终止,SecondaryNameNode将代替它保持群集工作。( )

17.Cloudera CDH需要付费使用。( )

Hadoop是Java开发的,所以MapReduce只支持Java语言。( )

Hadoop支持数据的随机读写。( )

20.NameNode负责管理元数据。每当客户端读取或写入请求时,它将从磁盘读取或写入元数据信息,并将其反馈给客户端。( )

21.NameNode本地磁盘保存块的位置信息。( )

22.DataNode通过长连接与NameNode保持通信。( )

23.Hadoop本身有严格的权限管理和安全措施,保证集群的正常运行。( )

24.从节点存储数据,所以它的磁盘越大越好。( )

25.hadoop dfsadmin?报告命令用于检测HDFS损坏的块。( )

26.Hadoop的默认调度策略是FIFO()

27.集群中的每个节点都要配备RAID,以免单个磁盘损坏,影响整个节点的运行。( )

28.因为HDFS有多个副本,所以NameNode不存在单点问题。( )

29.每个映射槽都是一个线程。( )

30.Mapreduce的输入拆分是一个块。( )

31的Web UI端口。NameNode是50030,它通过jetty启动Web服务。( )

32.HADOOP_HEAPSIZE Hadoop环境变量用于设置所有HADOOP守护线程的内存。默认为200 GB。( )

33.当DataNode第一次加入集群时,如果日志中报告了不兼容的文件版本,它需要NameNode来执行它。Hadoop NameNode-格式?操作格式化磁盘。( )

别走开,答案在后面!

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

a)NameNode

b)求职跟踪系统

c)数据节点

d)次要名称节点

e)任务跟踪系统

2.HDFS的区块默认保存多少份?回答一个默认3分。

A)3份副本

B)2份

C)1份

不确定性

3.以下哪个程序通常与NameNode在同一个节点启动?答案d

a)次要名称节点

b)数据节点

c)任务跟踪者

d)求职跟踪系统

这个问题的分析:

Hadoop集群基于主/从模式,namenode和jobtracker属于主,datanode和tasktracker属于从,主只有一个,而从有多个SecondaryNameNode的内存需求,NameNode和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将创建每个任务(即MapTask和ReduceTask ),并将它们分发给所有TaskTracker服务来执行。

2.JobTracker是一项主要服务。软件启动后,JobTracker接收作业,负责调度作业的每个子任务在TaskTracker上运行,并对它们进行监控。如果发现失败的任务,它将重新运行。通常,JobTracker应该部署在单独的机器上。

3.TaskTracker是运行在多个节点上的从属服务。TaskTracker主动与JobTracker通信,接收作业,并负责直接执行每个任务。TaskTracker需要在HDFS的DataNode上运行。

4.Hadoop作者答C道格切割

马丁·福勒

肯特·贝克

c)道格切割

5.HDFS默认区块大小答案:b

a)32MB

b)64MB

c)128MB

(因为版本变化快,这里的回答仅供参考)

6.以下哪一项通常是集群最重要的瓶颈?答案:c盘。

a)中央处理器

b)网络

c)磁盘IO

d)内存

这个问题的分析:

首先,集群的目的是为了节约成本,用廉价的PC替代小型机和大型机。小型机和大型机各有什么特点?

1.CPU有很强的处理能力。

2.内存足够大

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

网络是稀缺资源,但不是瓶颈。

4.因为大数据面对海量数据,读写数据需要io,然后需要冗余数据。hadoop一般会准备3份数据,所以IO会打折扣。

7.关于SecondaryNameNode什么是真的?答案c

a)它是NameNode的热备盘。

b)它没有内存要求。

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

D)SecondaryNameNode应部署到具有NameNode的节点。

多项选择问题:

8.以下哪一项可用作集群管理?答案:ABD

a)木偶

b)Pdsh

c)云时代管理器

d)动物园管理员

9.关于配置机架感知,以下哪一项是正确的:回答ABC。

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

b)写数据时,会写到不同机架的DataNode中。

C)MapReduce会根据机架获取接近自己的网络数据。

10.在客户端上传文件时,以下哪一项是正确的?答案b

a)数据通过NameNode传输到DataNode。

b)b)客户端将文件切割成块并依次上传。

c)客户端仅将数据上传到DataNode,然后NameNode负责数据块复制。

这个问题的分析:

客户端向NameNode发起文件写入请求。

NameNode根据文件大小和文件块配置,将自己管理的那部分DataNode的信息返回给客户端。

客户端将文件分成多个块,根据DataNode的地址信息依次写入每个DataNode块。

11.以下哪个是Hadoop的运行模式:答ABC。

a)独立版本

b)伪分布式

c)分布式

12有什么方法。Cloudera提供安装CDH?答案:ABCD

a)Cloudera管理器

b)Tarball

c)好吃

d)转速

是非题:

13.Ganglia不仅能监控,还能报警。(正确)

分析:这个问题的目的是测试Ganglia的理解力。严格来说,是正确的。ganglia作为Linux环境下最常用的监控软件,擅长低成本地根据用户需求从节点收集数据。但是ganglia不擅长在事件发生后预警和通知用户。最新的ganglia已经有了这方面的一些功能。但是Nagios更擅长警告。Nagios是一个擅长预警和通知的软件。把Ganglia和Nagios结合起来,把Ganglia采集的数据作为Nagios的数据源,再用Nagios发送预警通知,就可以完美的实现一套完整的监控管理系统。

14.不能修改块大小。(错误)

分析:可以修改。Hadoop的基本配置文件是hadoop-default.xml,默认创建作业时,会创建作业的配置。config先读取hadoop-default.xml的配置,再读取hadoop- site.xml的配置(此文件开头为空)。需要覆盖的Hadoop-default.xml的系统级配置主要配置在Hadoop-site.xml中..

15.Nagios不能监控Hadoop集群,因为它不提供Hadoop支持。(错误)

分析:Nagios是一个集群监控工具,是云计算的三大利器之一。

16.如果NameNode意外终止,SecondaryNameNode将代替它保持群集工作。(错误)

分析:SecondaryNameNode是帮助还原,而不是替换。如何恢复可以查看。

17.Cloudera CDH需要付费使用。(错误)

分析:第一套付费产品是Cloudera Enterpris,在美国加州举行的Hadoop峰会上公开,用多项私有的管理、监控和操作工具增强了Hadoop的功能。收费是承包的,价格随着Hadoop集群的大小而变化。

Hadoop是Java开发的,所以MapReduce只支持Java语言。(错误)

分析:rhadoop是用R语言开发的,MapReduce是一个框架,可以理解为一个思路,可以用其他语言开发。

Hadoop支持数据的随机读写。(错误)

分析:lucene支持随机读写,hdfs只支持随机读取。但是HBase可以修复它。HBase提供随机读写,解决Hadoop无法处理的问题。HBase从底层设计开始就专注于各种可扩展性问题:表格可以很好吗?高?有几十亿的数据行;这也可以很?宽?列数百万;在数以千计的普通商用计算机节点上进行水平分区和自动复制。表的模式是物理存储的直接反映,这使得系统可以改进高效数据结构的序列化、存储和检索。

20.NameNode负责管理元数据。每当客户端读取或写入请求时,它将从磁盘读取或写入元数据信息,并将其反馈给客户端。(错误)

这个问题的分析:

namenode不需要从磁盘中读取元数据,所有的数据都在内存中,硬盘只是序列化的结果,只有在每次启动NameNode的时候才会被读取。

1)文件写入

客户端向NameNode发起文件写入请求。

NameNode根据文件大小和文件块配置,将自己管理的那部分DataNode的信息返回给客户端。

客户端将文件分成多个块,根据DataNode的地址信息依次写入每个DataNode块。

2)文件读取

客户端向NameNode发起文件读取请求。

21.NameNode本地磁盘保存块的位置信息。(个人认为是正确的,欢迎其他意见。)

分析:DataNode是文件存储的基本单位。它将块存储在本地文件系统中,保存块的元数据,并定期将所有现有的块信息发送给NameNode。NameNode返回存储在文件中的DataNode的信息。

客户端读取文件信息。

22.DataNode通过长连接与NameNode保持通信。( )

这是不同的:我正在寻找这方面的有利信息。以下提供的信息可供参考。

首先,明确概念:

(1).长连接

客户端和服务器首先建立通信连接,然后不间断地发送和接收消息。在这种方式下,由于通信连接始终存在,因此这种方式常用于点对点通信。

(2).短连接

客户端和服务器仅在每次发送和接收消息时进行通信,并在事务完成后立即断开连接。这种方法通常用于点对多点通信,例如多个客户端连接到一个服务器。

23.Hadoop本身有严格的权限管理和安全措施,保证集群的正常运行。(错误)

Hadoop只能阻止好人犯错,却阻止不了坏人做坏事。

24.从节点存储数据,所以它的磁盘越大越好。(错误)

分析:一旦从节点宕机,数据恢复是个难题。

25.hadoop dfsadmin?报告命令用于检测HDFS损坏的块。(错误)

26.Hadoop默认调度器策略是FIFO(正确)。

27.集群中的每个节点都要配备RAID,以免单个磁盘损坏,影响整个节点的运行。(错误)

分析:首先要了解什么是RAID,可以参考百科磁盘阵列。这句话的错误在于太过绝对,具体情况具体分析。题目不是重点,知识最重要。因为hadoop本身是有冗余的,如果不是很严格的话,没必要给每个人都配备RAID。详见第二个问题。

28.因为HDFS有多个副本,所以NameNode不存在单点问题。(错误)

29.每个映射槽都是一个线程。(错误)

解析:首先我们知道什么是地图槽,地图槽->;映射slotmap slot只是一个逻辑值(org。阿帕奇。Hadoop。地图红。任务跟踪者。任务启动器。num空闲槽),不对应于线程或进程。

30.Mapreduce的输入拆分是一个块。(错误)

31的Web UI端口。NameNode是50030,它通过jetty启动Web服务。(错误)

32.HADOOP_HEAPSIZE Hadoop环境变量用于设置所有HADOOP守护线程的内存。默认为200 GB。(错误)

hadoop为每个守护进程(NameNode,Secondary NameNode,Job Tracker,DataNode,Tasktracker)统一分配的内存在hadoop-env.sh中设置,参数为Hadoop _ heap,默认值为1000M

33.当DataNode第一次加入集群时,如果日志中报告了不兼容的文件版本,它需要NameNode来执行它。Hadoop NameNode-格式?操作格式化磁盘。(错误)

分析:

首先明确介绍一下,什么ClusterID?

ClusterID

添加了一个新的标识符ClusterID来标识集群中的所有节点。在格式化Namenode时,您需要提供这个标识符或者自动生成它。这个ID可以用来格式化加入集群的其他Namenode。

二次整理

有些同学的问题不是针对以上分析:内容如下:

此错误表示DataNode安装的Hadoop版本与其他节点不一致,应检查DataNode的Hadoop版本。