快捷搜索:  汽车  科技

hadoop简单介绍(技术干货Hadoop经典面试问题)

hadoop简单介绍(技术干货Hadoop经典面试问题)答:在Hadoop中,机架感知定义为NameNode通过其确定块及其副本如何存储在Hadoop集群中的算法。这是通过机架定义来完成的,该定义将同一机架内的数据节点之间的通信量减到最少。让我们举个例子–我们知道复制因子的默认值为3。根据“复制品放置策略”,每个数据块的复制品的两个副本将存储在一个机架中,而第三份副本存储在不同的机架中架。答:Hadoop框架的以下功能使Hadoop管理员可以在Hadoop集群中添加(委托)和删除(停用)数据节点:Hadoop提供了广泛的工具集,可以非常轻松地存储和处理数据。以下是Hadoop的所有主要组件:答:Hadoop中有以下三种输入格式:答:YARN代表“另一个资源协商者”,它是Hadoop处理框架。YARN负责管理资源并为流程建立执行环境。

目前,与大数据相关的工作机会变得越来越多了。每五个大公司中就有一个正在迁移到大数据分析领域。因此,当下正是学习大数据进军新领域的绝佳时机。今天为大家带来50道在面试中最经典、最常被问到的真题,分享给大家,希望能提升你们的技术水平,提高面试通过率。

Hadoop基本面试问题

首先,是Hadoop的面试基础题,无论多高级的职位都会遇到的那种。

1. Hadoop框架中使用了哪些概念?

答:Hadoop框架在两个核心概念上起作用:

  • HDFS:Hadoop分布式文件系统的缩写,它是基于Java的文件系统,用于可扩展和可靠地存储大型数据集。HDFS本身在主从架构上工作,并以块形式存储其所有数据。
  • MapReduce:这是用于处理和生成大型数据集的编程模型以及相关的实现。Hadoop作业基本上分为两个不同的任务作业。映射作业将数据集分解为键值对或元组。然后,reduce作业获取map作业的输出,并将数据元组合并为较小的元组集。
2.什么是Hadoop?命名Hadoop应用程序的主要组件。

答:Hadoop是解决“大数据”问题的解决方案。Hadoop被描述为提供许多工具和服务以存储和处理大数据的框架。当难以使用传统方法进行决策时,它在大数据分析和制定有效的业务决策中也起着重要作用。

Hadoop提供了广泛的工具集,可以非常轻松地存储和处理数据。以下是Hadoop的所有主要组件:

hadoop简单介绍(技术干货Hadoop经典面试问题)(1)

  • Hadoop Common
  • HDFS
  • Hadoop MapReduce
  • YARN
  • PIG and HIVE – 数据访问组件
  • HBase – 用于数据存储
  • Apache Flume,Sqoop,Chukwa – 数据集成组件
  • Ambari,Oozie and ZooKeeper – 数据管理和监视组件
  • Thrift and Avro – 数据序列化组件
  • Apache Mahout and Drill – 数据智能组件
3. Hadoop中有几种输入格式?请说明。

答:Hadoop中有以下三种输入格式:

  1. 文本输入格式:文本输入是Hadoop中的默认输入格式。
  2. 序列文件输入格式:此输入格式用于按顺序读取文件。
  3. 键值输入格式:此输入格式用于纯文本文件。
4.你对YARN有什么了解?

答:YARN代表“另一个资源协商者”,它是Hadoop处理框架。YARN负责管理资源并为流程建立执行环境。

5.为什么在Hadoop集群中频繁删除和添加节点?

答:Hadoop框架的以下功能使Hadoop管理员可以在Hadoop集群中添加(委托)和删除(停用)数据节点:

  1. Hadoop框架利用商用硬件,这是Hadoop框架的重要功能之一。这会导致Hadoop集群中的DataNode频繁崩溃。
  2. 可扩展性是Hadoop框架的另一个重要功能,该功能根据数据量的快速增长而执行。
6.你对“机架意识”了解什么?

答:在Hadoop中,机架感知定义为NameNode通过其确定块及其副本如何存储在Hadoop集群中的算法。这是通过机架定义来完成的,该定义将同一机架内的数据节点之间的通信量减到最少。让我们举个例子–我们知道复制因子的默认值为3。根据“复制品放置策略”,每个数据块的复制品的两个副本将存储在一个机架中,而第三份副本存储在不同的机架中架。

7.你对投机执行了解多少?

答:在Hadoop中,推测执行是在节点上较慢执行任务期间发生的过程。在此过程中,主节点开始在另一个节点上执行同一任务的另一个实例。然后接受最先完成的任务,并通过杀死该任务停止其他任务的执行。

8.说明Hadoop的一些重要功能。

答:Hadoop的重要功能是:

  • Hadoop框架是在基于Google大数据文件系统的Google MapReduce上设计的。
  • Hadoop框架可以有效地解决许多问题,以进行大数据分析。
9.你知道一些使用Hadoop的公司吗?

答:是的,我知道一些使用Hadoop的流行名称。

Yahoo – 使用Hadoop

Facebook – 开发Hive进行分析

亚马逊,Adobe,Spotify,Netflix,eBay和Twitter是其他一些使用Hadoop的知名公司。

10.如何区分RDBMS和Hadoop?

答:区分RDBMS和Hadoop的关键点是:

  1. RDBMS用于存储结构化数据,而Hadoop可以存储任何类型的数据,即非结构化,结构化或半结构化。
  2. RDBMS遵循“写入时架构”策略,而Hadoop基于“读取时架构”策略。
  3. 数据模式在RDBMS中是众所周知的,它可以使读取速度更快,而在HDFS中,写操作在HDFS写入过程中不会发生模式验证,因此写入速度很快。
  4. RDBMS是一种许可软件,因此需要付费。而Hadoop是开放源代码软件,因此它是免费的。
  5. RDBMS用于在线事务处理(OLTP)系统,而Hadoop也用于数据分析,数据发现和OLAP系统。
Hadoop体系结构面试问题

接下来是基于架构的Hadoop面试问题。

11. Hadoop 1和Hadoop 2有什么区别?

答:以下两点说明了Hadoop 1和Hadoop 2之间的区别:

在Hadoop 1.X中,只有一个NameNode,因此是单点故障,而在Hadoop 2.x中,则有主动和被动NameNode。万一主动NameNode发生故障,被动NameNode将替换主动NameNode并承担费用。结果,Hadoop 2.x中具有高可用性。

在Hadoop 2.x中,YARN提供了一个中央资源管理器,该资源管理器共享一个公共资源以在Hadoop中运行多个应用程序,而数据处理在Hadoop 1.x中是一个问题。

12.你对主动和被动NameNode了解多少?

答:在高可用性Hadoop架构中,存在两个NameNode。

Active NameNode –在Hadoop群集中运行的NameNode是Active NameNode。

被动NameNode –与“活动NameNode”存储相同数据的备用NameNode是“被动NameNode”。

在主动NameNode发生故障时,被动NameNode将替换它并负责。这样,群集中始终有一个正在运行的NameNode,因此它永远不会失败。

13. Apache HBase的组成部分是什么?

答:Apache HBase包含以下主要组件:

  • 区域服务器:一个表可以分为几个区域。这些区域中的一组由区域服务器提供给客户端。
  • HMaster:这可以协调和管理区域服务器。
  • ZooKeeper:它充当HBase分布式环境中的协调器。它通过会话中的通信维护集群内部服务器状态。
14. NameNode如何处理DataNode故障?

答:NameNode不断从Hadoop群集中存在的所有DataNodes接收信号,该信号指定DataNode的正常功能。DataNode上存在的所有块的列表存储在块报告中。如果DataNode无法将信号发送到NameNode,则在特定时间段后将其标记为无效。然后,NameNode使用先前创建的副本将死节点的块复制/复制到另一个DataNode。

15.解释NameNode恢复过程。

答:NameNode恢复过程有助于保持Hadoop集群运行,可以通过以下步骤进行解释:

步骤1:要启动新的NameNode,请使用文件系统元数据副本(FsImage)。

步骤2:配置客户端和DataNode确认新的NameNode。

步骤3:一旦新名称完成了最后一个检查点FsImage的加载并从DataNodes接收到块报告,新的NameNode将开始为客户端提供服务。

16. Hadoop中可用的调度程序有哪些?

答:Hadoop中不同的可用调度程序是:

COSHH – 通过考虑群集,工作负载和使用异构性来调度决策。

FIFO调度程序 – 它根据队列中的到达时间对作业进行排序,而无需使用异构性。

公平共享 – 它为每个用户定义一个池,该池包含许多映射并减少资源上的插槽。允许每个用户使用自己的池来执行作业。

17. DataNode和NameNode可以是商品硬件吗?

答:DataNode仅是商品硬件,因为它可以存储笔记本电脑和个人计算机之类的数据,而这些是大量必需的。相反,NameNode是主节点。它存储有关HDFS中存储的所有块的元数据。它需要高存储空间,因此可以用作具有大存储空间的高端计算机。

18.什么是Hadoop守护程序?解释他们的角色。

答:Hadoop守护程序是NameNode,Secondary NameNode,DataNode,NodeManager,ResourceManager,JobHistoryServer。不同的Hadoop守护程序的作用是:

NameNode – 负责所有目录和文件的元数据存储的主节点称为NameNode。它还包含有关文件的每个块及其在Hadoop群集中的分配的元数据信息。

Secondary NameNode – 该守护程序负责将修改后的Filesystem Image合并并存储到永久存储中。它用于NameNode发生故障的情况。

DataNode – 包含实际数据的从节点是DataNode。

NodeManager – 在从属计算机上运行,NodeManager处理应用程序容器的启动,监视资源使用情况并将其报告给ResourceManager。

ResourceManager – 它是负责管理资源和计划在YARN顶部运行的应用程序的主要权限。

JobHistoryServer – 当Application Master停止工作(终止)时,负责维护有关MapReduce作业的所有信息。

19.定义“检查点”,请问这有什么好处?

答:检查点是将FsImage和Edit日志压缩到新的FsImage中的过程。这样,NameNode直接处理从FsImage加载最终内存状态的过程,而不是重放编辑日志。辅助NameNode负责执行检查点过程。

检查点的好处

检查点是一个高效的过程,可以减少NameNode的启动时间。

Hadoop管理员面试问题

Hadoop管理员负责处理Hadoop集群运行顺利的问题。要破解Hadoop Administrator的工作面试,你需要阅读与Hadoop环境,集群等相关的Hadoop面试问题。Hadoop Administrator的常见Hadoop面试问题如下:

20.在生产环境中部署Hadoop时,重要的硬件注意事项是什么?

答:内存系统的内存要求:根据应用程序,工作服务和管理服务之间会有所不同。

操作系统:最好使用64位OS,因为它避免了对可在工作节点上使用的内存量的任何此类限制。

存储:Hadoop平台的设计应通过将计算活动转移到数据上,从而实现可伸缩性和高性能。

容量:大型磁盘将降低成本,并提供更多存储空间。

网络:每个机架两个TOR交换机是避免冗余的理想选择。

21.部署辅助NameNode时应考虑什么?

答:辅助NameNode应该始终部署在单独的Standalone系统上。这样可以防止它干扰主节点的操作。

22.命名可以运行Hadoop代码的模式。

答:有多种模式可以运行Hadoop代码:

  1. 全分布式模式
  2. 伪分布式模式
  3. 独立模式
23.命名Hadoop部署支持的操作系统。

答:Linux是用于Hadoop的主要操作系统。但是,也可以借助一些其他软件将其部署在Windows操作系统上。

24.为什么将HDFS用于具有大数据集的应用程序,而不用于多个小文件?

答:与存储在多个文件中的少量数据相比,HDFS对于保存在单个文件中的大量数据集更为有效。当NameNode在RAM中为文件系统执行元数据存储时,内存量限制了HDFS文件系统中的文件数。简而言之,更多文件将生成更多元数据,从而需要更多内存(RAM)。建议块,文件或目录的元数据应占用150个字节。

25. hdfs-site.xml的重要属性是什么?

答:hdfs-site.xml具有三个重要属性:

  • data.dr – 标识数据存储的位置。
  • name.dr – 标识元数据存储的位置,并指定DFS是位于磁盘上还是位于远程位置上。
  • checkpoint.dir – 用于辅助NameNode。
总结

以上就是今天的内容了,如果对你有帮助,希望你能够关注、点赞、转发一键三连支持一下。

需要完整学习线路和配套课堂笔记,请回复111。

猜您喜欢: