版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Hadoop高频面试题及详细答案(实战版)一、Hadoop基础核心面试题1、简单说说Hadoop的核心组件及各自作用?Hadoop核心由三大组件构成,分别是HDFS、YARN、MapReduce,各司其职支撑分布式存储和分布式计算:1)HDFS(分布式文件系统):核心负责海量数据的存储,解决单机硬盘存储容量不足、数据不安全的问题。通过分块存储、副本机制,实现大数据的持久化存储,支持高容错、高吞吐的数据读写。2)YARN(资源调度框架):整个Hadoop集群的资源管理者,负责统一调度集群的CPU、内存、磁盘资源。所有计算任务(MapReduce、Spark、Flink)都提交给YARN,由它分配资源、管控任务运行,避免集群资源争抢、资源浪费。3)MapReduce(分布式计算引擎):离线批量计算框架,负责处理存储在HDFS上的海量数据。将复杂的计算任务拆分为Map(分片处理)和Reduce(聚合汇总)两个阶段,分布式并行执行,大幅提升大数据计算效率。2、Hadoop1.x、2.x、3.x核心区别是什么?1)Hadoop1.x:架构简陋,存在严重单点问题。NameNode单点故障,没有高可用机制;资源调度和计算耦合,JobTracker同时负责任务调度和资源管理,压力极大,集群规模上限低,最多支撑几十个节点。2)Hadoop2.x:架构重大升级,拆分核心职责。单独拆分出YARN负责资源调度,彻底解耦资源管理和计算;实现NameNodeHA高可用,主备NameNode切换,解决单点故障;支持多种计算引擎,不再局限MapReduce。是企业使用最广泛的稳定版本。3)Hadoop3.x:性能和容错优化。默认副本数从3改为2,节省磁盘空间;支持NameNode横向扩展、多NameNode架构;优化YARN资源调度算法,提升资源利用率;修复大量2.x漏洞,稳定性和性能更强,目前逐步普及。3、Hadoop的优势和缺点分别是什么?优势:①高容错:数据默认3副本存储,单个节点故障不会丢失数据,自动副本补齐;②高吞吐:适合海量批量数据读写,牺牲低延迟,换取大数据量处理效率;③可横向扩展:集群可动态扩容,上千台节点可无缝加入,扩容不影响业务;④低成本:基于普通廉价服务器搭建,无需高端硬件,开源免费、生态完善;⑤通用性:支持离线计算、日志存储、数据仓库等多种大数据场景。缺点:①不适合低延迟场景:HDFS读写延迟高,无法处理实时秒级查询业务;②不适合小文件存储:大量小文件会占用NameNode大量内存,拖慢集群性能;③实时计算能力弱:原生MapReduce仅支持离线批量计算,实时任务需要依赖Spark、Flink补充。二、HDFS核心面试题1、HDFS的架构组成及各角色职责?HDFS采用主从架构,核心角色为NameNode、DataNode、SecondaryNameNode,HA架构下新增StandbyNameNode。1)NameNode(主节点):HDFS的管理者,全程不存储真实业务数据,只维护元数据。包括文件目录树、文件分块信息、数据块存储节点位置、副本分布信息。接收客户端的读写请求,统一管理文件系统。2)DataNode(从节点):集群工作节点,真实存储文件数据块和副本。执行NameNode的指令,负责数据的读写、校验、上报块信息,节点故障后自动停止服务。3)SecondaryNameNode:辅助NameNode做元数据备份,定期合并fsimage和edits日志,减轻主节点压力。注意:它不是NameNode备用节点,无法实现故障切换,仅做数据备份。4)StandbyNameNode(HA架构):2.x新增备用主节点,实时同步主节点元数据,主节点故障时可快速切换接管服务,实现高可用。2、HDFS文件块默认大小、副本机制详解?1)块大小:Hadoop2.x默认128M,3.x同样默认128M。块大小并非固定,可自定义配置。之所以设置大区块,是为了减少寻址开销,海量大文件场景下,大幅降低元数据数量,提升读写效率。小文件场景下大区块会造成空间浪费,需要单独优化。2)副本机制:2.x默认3副本,3.x默认2副本。副本存放策略(经典3副本):第一副本存客户端所在节点,无客户端则随机选节点;第二副本存同机架不同节点;第三副本存不同机架节点。这个策略兼顾了读写性能和容错性,同机架读写速度快,跨机架避免机架整体故障导致数据丢失。3、NameNode元数据存储机制、fsimage和edits区别?NameNode元数据不会实时写入磁盘,依靠fsimage和edits两个文件配合持久化,保证高效读写和数据安全。1)fsimage:HDFS文件系统的镜像文件,存储某一时刻完整的元数据快照,包含目录结构、文件分块、权限等全部信息。文件体积大、更新频率低,是元数据的完整备份。2)edits:操作日志文件,实时记录客户端所有的增删改操作。NameNode运行时,所有新操作先写入edits日志,不会直接修改fsimage,保证读写高性能。3)合并机制:SecondaryNameNode定时拉取fsimage和edits,进行合并生成新的镜像文件,再推送回NameNode,清空旧日志。避免edits日志无限膨胀,保证元数据完整。4、HDFS读写流程详细描述?文件写入流程:1)客户端向NameNode发起文件写入请求,校验权限、文件是否存在;2)NameNode校验通过后,返回可用的DataNode节点列表;3)客户端将文件切分为固定大小块,以数据包形式依次发送给第一个DataNode,同时同步给副本节点;4)DataNode接收数据、校验数据,逐级返回确认响应;5)所有数据块写入完成、副本同步完毕后,客户端通知NameNode写入完成,更新元数据。文件读取流程:1)客户端向NameNode请求读取指定文件;2)NameNode查询元数据,返回文件对应的所有数据块及存储节点位置;3)客户端优先读取本地、同机架节点的数据块,就近读取提升速度;4)读取过程中校验数据完整性,读取失败自动切换到副本节点读取;5)所有数据块读取完成,合并为完整文件,读取结束。5、HDFS小文件问题及解决方案?小文件危害:HDFS每个文件、每个块都会占用NameNode一条元数据记录。大量KB级小文件会耗尽NameNode内存,导致集群卡顿、响应变慢,同时任务启动开销远大于数据计算开销,极大降低集群效率。实战解决方案:1)预处理合并:数据入库前通过Flume、Spark合并小文件,定时批量拼接为128M左右标准文件;2)Hive合并:通过Hive参数配置,查询结束后自动合并分区小文件;3)使用HDFS归档(HAR):将大量小文件归档为一个归档文件,减少元数据占用;4)调整采集策略:日志采集时设置滚动阈值,避免频繁生成小文件。三、YARN核心面试题1、YARN架构及各组件职责?YARN同样为主从架构,核心组件:ResourceManager、NodeManager、ApplicationMaster、Container。1)ResourceManager(RM,全局资源管理器):集群主节点,统一管理整个集群资源。接收客户端任务提交、分配资源、调度任务、监控节点状态,处理节点故障。2)NodeManager(NM,节点资源管理器):每个机器部署一个,负责单机资源管控。监控本机CPU、内存使用情况,上报给RM,启动和管控Container容器。3)ApplicationMaster(AM,应用管理者):每个任务提交后单独生成一个AM,负责当前任务的资源申请、任务拆分、进度监控、失败重试,任务结束后自动销毁。4)Container(资源容器):YARN资源分配的最小单位,封装CPU、内存、磁盘资源。所有任务都运行在Container中,资源隔离,互不干扰。2、YARN任务完整运行流程?1)客户端向ResourceManager提交计算任务;2)RM接收请求,分配一个空闲Container,启动该任务的ApplicationMaster;3)AM启动后,向RM申请运行Map、Reduce任务所需的资源;4)RM审核资源请求,分配对应节点的Container资源;5)AM通知对应NodeManager,在Container中启动Map、Reduce任务;6)任务运行过程中,NM实时上报运行进度、资源占用情况;7)所有任务执行完成,AM注销资源、退出,任务结束。3、YARN三种调度器区别及适用场景?1)FIFO调度器:先进先出,按照任务提交顺序执行。结构简单、无需配置,但大任务会阻塞后续所有小任务,企业基本不用,仅测试环境使用。2)容量调度器(CapacityScheduler):Apache默认调度器。支持多队列、队列资源配额,多个任务可同时运行。侧重资源利用率最大化,适合公司内部多团队共享集群,保证各团队基础资源,资源空闲时可共享借用。3)公平调度器(FairScheduler):CDH版本默认调度器。核心是公平分配资源,长期运行的大任务会逐步让出资源,短任务优先获得资源,保证所有任务资源均衡。适合交互式查询、实时任务较多的场景。4、YARN常见故障及处理方案?1)NodeManager掉线:多为节点资源占用过高、内存溢出、网络波动导致。集群会自动剔除故障节点,任务转移到其他节点重跑;运维需排查节点负载、重启NM、修复机器问题。2)任务资源不足报错:Container内存、CPU超出配置阈值被杀死。解决方案:调高任务资源配置、优化代码减少资源占用、调整YARN资源调度阈值。3)ResourceManager单点故障:2.x默认存在单点问题,开启RMHA高可用,主备切换保证集群稳定。四、MapReduce核心面试题1、MapReduce核心执行流程?整体分为:输入分片→Map阶段→Shuffle阶段→Reduce阶段→输出结果1)分片:将HDFS文件按块大小拆分切片,一个切片对应一个Map任务;2)Map阶段:读取分片数据,自定义逻辑处理数据,输出key-value键值对;3)Shuffle阶段:对Map输出数据进行分区、排序、合并、拉取,是MR性能瓶颈核心环节;4)Reduce阶段:接收相同key的所有数据,聚合汇总计算,输出最终结果;5)最终将计算结果写入HDFS。2、详细说说Shuffle机制(重点)?Shuffle是Map输出到Reduce输入的全过程,核心作用是数据分区、排序、规整,保证相同key的数据分发到同一个Reduce节点。完整流程:1)Map输出数据先写入环形缓冲区,默认大小100M,达到阈值后溢写到磁盘;2)溢写过程中完成分区、排序、局部合并,生成多个临时小文件;3)Map任务结束后,合并所有临时文件,生成最终有序分区文件;4)Reduce端通过网络拉取对应分区的数据;5)Reduce对拉取的数据再次合并排序,最终交给Reduce函数计算。3、MapReduce优化手段有哪些?1)Shuffle优化:调大环形缓冲区大小、开启压缩(Snappy/GZIP),减少磁盘IO和网络传输数据量;开启Combiner局部聚合,提前减少Map输出数据量。2)任务优化:合理设置Map、Reduce任务数量,避免任务过多启动开销大、过少导致数据倾斜;设置合适的分片大小。3)数据倾斜优化:对倾斜key加盐打散、局部聚合、拆分倾斜任务,避免单个Reduce任务数据量过大拖慢整体任务。4)资源优化:根据任务业务场景,合理配置Map、Reduce的CPU、内存资源,避免资源浪费或资源不足。5)小文件优化:任务前合并小文件,减少Map任务数量。4、Combiner和Reducer的区别?1)Combiner:是Map端的局部合并器,属于Map阶段,在每个Map节点本地执行。作用是提前聚合数据,减少磁盘和网络传输压力,不改变最终业务结果。2)Reducer:是全局聚合器,在Reduce阶段执行,汇总所有Map节点的同key数据,输出最终结果。3)核心区别:Combiner是局部优化手段,Reducer是全局计算核心;Combiner执行次数多,Reducer按分区执行。五、集群优化与故障排查面试题1、Hadoop集群数据倾斜的原因和解决办法?倾斜原因:数据key分布不均匀,大量相同key被分配到同一个Reduce任务,导致该任务数据量远超其他任务,整体任务耗时被拖长。常见于空值key、热门key、数据分布不均场景。解决办法:1)预处理过滤:提前过滤空值、无效倾斜key;2)加盐打散:给倾斜key追加随机数,拆分到多个Reduce局部聚合,最后二次聚合;3)自定义分区:将倾斜key单独分区,单独处理;4)开启Combiner:提前局部聚合,减少倾斜数据量。2、NameNode频繁卡顿、集群响应慢的排查思路?1)查看NameNode内存使用率,判断是否因小文件过多导致元数据占满内存;2)检查edits日志
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年北师大版七年级数学第9章反比例函数同步练习题及答案
- 2026年北师大版高中物理第9章声学基础测试卷及答案
- 2026年福建省厦门市第一中学七年级数学上册第3章同步练习题及答案
- 2026年度人教版九年级上册Unit 5 Power of Ideas Section B以读促写(含答案)
- 2026 年横州市市属国企急需紧缺高层次人才笔试试卷 招录 38 人
- 2026建筑光伏一体化技术成本下降曲线与商业模式创新报告
- 2026中国智能自动售货机行业市场现状调研及行业前景发展趋势报告
- 2025中交集团测试题库及答案
- 甘肃白银市第六中学2026-2027学年九年级上学期9月学情自测化学试卷(含答案)
- 2026年ERCP 乳头插管技术考核试卷及答案
- 档案数字化管理师岗前评审考核试卷含答案
- 电热鼓风干燥箱操作规程及安全事项培训
- 华为行政物业楼宇管理手册
- (2026秋新版)部编版道德与法治五年级上册全册教案
- 2025年城市地下管网改造研究报告
- 2026年陕西事业编制招聘在哪里看参考题库附答案
- 2025北京国际风能大会暨展览会(CWP2025):大型长柔风电叶片新型失效模式分析与设计验证方法
- 肿瘤靶向药物治疗及护理讲课件
- 鲁科版高中化学必修第一册第1章第2单元化学中常用的物理量-物质的量课件
- 某住宅小区物业管理服务投标技术标书.doc
评论
0/150
提交评论