Hadoop+Zookeeper+HA错题总结(一)

题目3:

下列哪项通常是hadoop集群运行时的最主要瓶颈?() [单选题]

A、CPU

B、网络

C、磁盘 IO

D、内存

【参考答案】: C

【您的答案】: D

这道题的答案取决于集群的性能,一般来说运行时的主要瓶颈是网络。但是如果集群的磁盘IO性能较差,磁盘IO也可能是主要瓶颈。

题目5:

MapReduce的MapTask工作机制中最后要执行的步骤是?[单选题]

A、溢写

B、分区

C、排序

D、合并

【参考答案】: D

【您的答案】: A

MapTask工作机制中总共分为四步:

  1. 输入数据分片(Input Split):将输入数据按照指定的分片规则划分成多个片段,每个片段由一个MapTask处理。这些数据分片通常存储在分布式文件系统(如HDFS)中。

  2. 映射(Map):对每个输入数据片段应用用户定义的映射函数。映射函数将输入数据解析为一组键值对,并对每个键值对执行操作,生成中间键值对。这一步是将原始数据转换为中间数据的阶段。

  3. 排序和分区(Shuffle):将映射阶段生成的中间键值对按照键的排序规则进行排序。然后,根据用户定义的分区函数,将排序后的键值对划分成若干个分区。每个分区将被发送给一个Reduce任务。

  4. 本地合并和规约(Combine,可选):在Map阶段结束后,可以对每个分区中的键值对进行本地合并和规约操作,以减少数据传输量。这一步是可选的,并不是所有的MapReduce作业都会使用本地合并和规约。

所以本题答案是D选项,合并。

题目7:

下列关于hadoop中partition描述正确的是?

A、reduce的个数小于分区个数且不等于1的时候会报错

B、默认只有一个reduce,虽然自定义了分区,但不会使用自定义分区类

C、分区个数小于reduce的个数时,会有空文件出现

D、自定义分区的分区号默认从0开始

【参考答案】: ABCD

【您的答案】: ACD

B选项的描述有点模糊,默认情况Hadoop只有一个reduce,前半句是对的。后半句,如果自定义了分区器,还需要设置使用自定义的分区器,否则默认还是使用Hash分区器。

题目12:

HDFS-HA工作要点中元数据管理,描写正确的是?[多选]

A、俩个namenode内存中各自保存一份元数据

B、Edits日志只有Active状态的NameNode节点可以做写操作

C、两个NameNode都可以读取Edits

D、共享的Edits放在一个共享存储中管理(qjournal和NFS两个主流实现)

【参考答案】: ABCD

【您的答案】: AB

A、俩个namenode内存中各自保存一份元数据:正确。HDFS-HA中的两个NameNode分别管理自己的内存中元数据,以实现高可用性。

B、Edits日志只有Active状态的NameNode节点可以做写操作:正确。在HDFS-HA中,只有Active状态的NameNode节点允许进行写操作,Standby节点只能接收复制的元数据信息。

C、两个NameNode都可以读取Edits:在HDFS-HA中,只有Active状态的NameNode节点允许读取和写入Edits,Standby节点只能读取复制的元数据信息,以保持数据的一致性,从某个角度来说,两个NameNode确实都可以读取Edits.

D、共享的Edits放在一个共享存储中管理(qjournal和NFS两个主流实现):正确。在HDFS-HA中,共享的Edits日志通常存储在一个共享的存储系统中,这可以通过qjournal(QuorumJournalManager)或NFS(Network File System)等主流实现来实现。

所以,正确的选项是A、B、C和D。

题目15:

NameNode故障后,采用什么方法恢复数据?[单选题]

A、将SecondaryNameNode中数据拷贝到NameNode存储数据的目录

B、使用-importCheckpoint选项启动NameNode守护进程,从而将SecondaryNameNode中数据拷贝到NameNode目录中。

C、AB都可以

D、AB都不可以

【参考答案】: C

【您的答案】: D

A 选项不是常用方法,但也是恢复方式之一。

B选项是最常用的恢复方式,也更为可靠和方便。

通过执行上述操作,可以将SecondaryNameNode的镜像数据导入到NameNode,从而恢复文件系统的状态。

所以,正确的选项是C

题目18:

Namenode在启动时自动进入安全模式,在安全模式阶段,说法错误的是 [单选题]

A、安全模式目的是在系统启动时检查各个DataNode上数据块的有效性

B、 根据策略对数据块进行必要的复制或删除

C、当数据块最小百分比数满足的最小副本数条件时,会自动退出安全模式

D、文件系统允许有修改

【参考答案】: D

【您的答案】: B

A选项:检查数据块的有效性是安全模式的目的之一,安全模式的主要目的是确保数据的稳定和一致的状态。

B选项:

  • 数据块复制:安全模式可以触发数据块的复制操作,以确保数据块的副本数量达到或超过配置的最小副本数。
  • 数据块删除:安全模式可以触发删除多余的数据块副本,以确保数据块的副本数量不超过配置的最大副本数。

C选项:安全模式退出策略:安全模式可以根据不同的策略来决定何时退出。例如,可以配置在满足一定条件(如数据块最小百分比数满足的最小副本数)时自动退出安全模式。

D选项:在安全模式下,文件系统通常不允许进行写入操作。这是为了确保文件系统的元数据和数据块的一致性和稳定性。修改时必须进行写入,故无法进行修改,D错误。

题目21:

MapTask工作机制描述不正确的是?

A、Read阶段:MapTask通过用户编写的RecordReader,从输入InputSplit中解析出一个个key/value。

B、Collect收集阶段:在用户编写map()函数中,当数据处理完成后,一般会调用OutputCollector.collect()输出结果。在该函数内部,它会将生成的key/value分区(调用Partitioner),并写入一个环形内存缓冲区中。

C、Spill阶段:即"溢写",当环形缓冲区满后,MapReduce会将数据写到本地磁盘上,生成一个临时文件。需要注意的是,将数据写入本地磁盘之前,先要对数据进行一次本地排序,并在必要时对数据进行合并、压缩等操作

D、Merge阶段:在远程拷贝数据的同时,MapTask启动了两个后台线程对内存和磁盘上的文件进行合并,以防止内存使用过多或磁盘上文件过多。

【参考答案】: D

【您的答案】: C

题目22:

Hadoop的优势,下面描述正确的是?[多选题]

A、高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。

B、高扩展性:在集群间分配任务数据,可方便的扩展数以干计的节点。

C、高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。

D、高容错性:能够自动将失败的任务重新分配。

【参考答案】: ABCD

【您的答案】: ACD

hadoop有四高特性, 答案为ABCD

题目23:

hadoop的namenode格式化时需要注意什么?[多选题]

A、格式化NameNode,会产生新的集群id,导致DataNode中记录的的集群id和刚生成的NameNode的集群id不 一致,所以需要观察对比id是否一样。

B、格式NameNode时,一定要先删除每个节点的data目录和logs日志,然后再格式化NameNode。

C、格式NameNode的命令是 hdfs namenode -format

D、格式化时报错,无法格式化成功,可以查看/tmp下是否有hadoop相关文件,需要删掉再重新格式化

【参考答案】: ABCD

【您的答案】: ABC

A、格式化NameNode,会产生新的集群id,导致DataNode中记录的集群id和新生成的NameNode的集群id不一致,所以需要观察对比id是否一样。这是正确的,因为集群id的一致性对于正常的集群运行非常重要。

B、格式化NameNode时,一定要先删除每个节点的data目录和logs日志,然后再格式化NameNode。这是正确的,清除旧的数据和日志可以确保新的NameNode处于干净的状态。

C、格式NameNode的命令是 hdfs namenode -format。这是正确的格式化NameNode的命令。

D、格式化时报错,无法格式化成功,可以查看/tmp下是否有hadoop相关文件,需要删掉再重新格式化。这也是正确的,如果格式化过程中出现错误,可以检查临时目录(例如/tmp)下是否残留有Hadoop相关文件,需要删除它们后再重新尝试格式化。

所以正确的选项是A、B、C、D。

相关推荐
cab533 分钟前
聊一聊Elasticsearch的索引(1)
大数据·elasticsearch·搜索引擎
时差9531 小时前
使用flink编写WordCount
java·大数据·开发语言·flink
二进制_博客1 小时前
Flink学习连载文章3-Flink中各种Source源
大数据
出发行进1 小时前
Flink的Standalone集群模式安装部署
大数据·linux·分布式·数据分析·flink
jlting1952 小时前
Spark——安装步骤详细教程
大数据·spark
小阿龙...3 小时前
创建mapreduce项目使用maven
java·ide·hadoop·spark·big data
大数据编程之光3 小时前
Flink普通API之Source使用全解析
大数据·windows·flink
二进制_博客3 小时前
Flink学习连载文档第一篇--Flink集群的安装
大数据
DylanlZhao4 小时前
量化策略配置神器-飞书表格
大数据·python·云计算
青云交4 小时前
大数据新视界 -- Hive 查询性能优化:基于成本模型的奥秘(上)(5/ 30)
大数据·优化器·执行计划·统计信息·hive 查询性能·成本模型·hive 优化