当前位置:网站首页>【300+精选大厂面试题持续分享】大数据运维尖刀面试题专栏(十一)
【300+精选大厂面试题持续分享】大数据运维尖刀面试题专栏(十一)
2022-08-03 17:13:00 【大数据研习社】
持续分享有用、有价值、精选的优质大数据面试题
致力于打造全网最全的大数据面试专题题库
101、简述Hadoop有哪些调度器?
参考答案:
hadoop中常用的调度器有三种:
1)FIFO:(hadoop2.x之前的默认调度器),它先按照作业的优先级高低,再按照到达时间的先后选择被执行的作业。
2)计算能力调度器(容量调度器)Capacity schedular:(hadoop2.x之后的默认调度器)支持多个队列,每个队列可配置一定的资源量,每个队列采用FIFO调度策略,为了防止同一个作业独占队列中的资源,该调度器会对同一用户提交的作业所占资源进行限定。调度时,首先按照以下策略选择一个合适队列:计算每个正在运行任务数与其应该分得的计算资源之间的比值,选择一个该比值最小的队列;然后按以下策略选择队列中一个作业,按照作业优先级和提交时间顺序选择,同时考虑用户资源量限制和内存限制。
3)公平调度器Fair scheduler 同计算能力调度器类似,支持多队列多用户。每个队列的资源量可配置,同一队列中的作业公平共享队列中所有资源。
102、我们该如何选择调度器?
参考答案:
如果你的场景需要先提交的JOB限制性,那就FIFO。
如果想着大家都有机会获取到资源,就得用容量调度,公平调度。容量调度不好的地方是多个队列资源不能相互抢占,提前就把资源分走了,哪怕那个队列没有任务,所以一般都是公平调度。
FIFO调度没人单独用。公平调度支持在某个队列内部选择公平调度还是FIFO。
所以可以认为公平调度是一个混合的调度器。
103、hadoop集群可以运行的3个模式是什么?
参考答案:
(1)单机模式
(2)伪分布模式
(3)分布式
104、谈谈你对 Hadoop Streaming的认识?
参考答案:
(1)Hadoop Streaming框架最大的好处是,让任何语言编写的map, reduce程序能够在hadoop集群上运行;map/reduce程序只要遵循从标准输入stdin读,写出到标准输出stdout即可。
(2)Hadoop Streaming容易进行单机调试,通过管道前后相接的方式就可以模拟streaming, 在本地完成map/reduce程序的调试 # cat inputfile | mapper | sort | reducer > output 。
(3)streaming框架还提供了作业提交时的丰富参数控制,直接通过streaming参数,而不需要使用java语言修改;很多mapreduce的高阶功能,都可以通过steaming参数的调整来完成。
105、简述在combiner和sort分别是发生在map 端还是在reduce端?
参考答案:
Combiner 发生在map节点;sort排序发生在map和reduce阶段。
106、用mr实现怎么实现一个大表和一个小表关联,以及两个大表怎么关联?谈谈你的思路
参考答案:
(1)大小表关联用Reduce join 的分布式缓存。
(2)两个大表关联:Reduce join + BloomFilter。
107、在yarn中,一个job 的运行流程是怎样的?
参考答案:
步骤1:用户向YARN中提交应用程序,其中包括ApplicationMaster程序、启动ApplicationMaster、用户程序等。
步骤2:ResourceManager为该应用程序分配第一个Container,并与对应的NodeManager通信,要求它在这个Container中启动应用程序的ApplicationMaster。
步骤3:ApplicationMaster首先向ResourceManager注册,这样用户可以直接通过ResourceManager查看应用程序的运行状态,然后它将为各个任务申请资源,并监控他的运行状态,直到运行结束,即要重复步骤4-7。
步骤4:ApplicationMaster采用轮询的方式通过RPC协议找ResourceManager申请和领取资源。
步骤5:一旦Application申请到资源后,便与对应的NodeManager通信,要求启动任务。
步骤6:NodeManager为任务设置好运行环境,包括环境变量、JAR包、二进制程序等,然后将任务启动命令写到另一个脚本中,并通过运行该脚本启动任务。
步骤7:各个任务通过RPC协议向ApplicationMaster汇报自己的状态和进度,ApplicationMaster随时掌握各个任务的运行状态,从而可以再任务失败时重新启动任务。在应用程序运行过程中,用户可以随时通过RPC协议ApplicationMaster查询应用程序的当前运行状态。
步骤8:应用程序运行完成后,ApplicationMaster向ResourceManager注销并关闭自己。
108、假设HDFS数据块blocksize大小为64MB,输入类为FileInputFormat,现在有3个文件,大小分别为64KB, 65MB, 200MB,请问Hadoop框架会把这些文件拆分为多少块?总共有多少个map任务?(假设split的大小等于块的大小)
参考答案:
文件 数据块数量 map数量
64kb 1 1
65MB 2 1
200MB 4 4
109、描述一下hadoop生态圈中有哪些地方使用到了缓存机制,作用分别是什么?
参考答案:
(1)MapReduce中的shuffle过程中使用了缓存机制,map task的输出数据需要先写入内存缓冲区中,缓冲区的作用是批量收集map结果,减少磁盘IO的影响。
(2)Hbase中的缓存分了两层:MemStore 和 BlockCache,MemStore供写数据使用,BlockCache供读数据使用
110、请列出正常的hadoop集群中都分别需要启动哪些进程,他们的作用分别都是什么?请尽量列的详细一些。
参考答案:
1)NameNode :管理hdfs名字空间、数据块映射关系,配置副本策略,接受读写请求。
2)DataNode:存储数据,执行数据的读写操作。
3)ResourceManager:处理客户端请求,启动并监控ApplicationMaster,监控NodeManager,资源分配与调度。
4)NodeManager:单节点资源管理,处理来自ResourceManager和ApplicationMaster的指令。
5)Zookeeper:协调服务,实现NN RM 高可用 。
6)FailoverController(zkfc ):不断监听本机NN的状态,然后周期性的向Zookeeper发送心跳,如果当前NN关掉了,重新选举NN Active。
7)journalnode:确保两个NN元数据保持同步。
持续分享有用、有价值、精选的优质大数据面试题
致力于打造全网最全的大数据面试专题题库
边栏推荐
- 面试突击71:GET 和 POST 有什么区别?
- deepstresam的插件配置说明,通过配置osd,设置字体的背景为透明
- A complete detailed tutorial on building intranet penetration ngrok (with pictures and truth)
- phoenix创建映射表和创建索引、删除索引
- 高效的组织信息共享知识库是一种宝贵的资源
- Halcon 小笔记 C# 图片是否有效
- TiKV & TiFlash 加速复杂业务查询丨TiFlash 应用实践
- 【engine】RtcSyncCallback回调、回调容器RtcCallbackContainer及MediaPacketSenderImpl 中回调使用
- Interviews are no longer hanged!This is the correct way to open the seven schemes of Redis distributed locks
- PMP试题 | 每日一练,快速提分
猜你喜欢
为何微博又双叒叕崩溃了?
[Unity Starter Plan] Making RubyAdventure01 - Player Creation & Movement
使用deepstream消息发送功能的时候,检测框没有检测标签,No text labels of bboxes displayed with osd for deepstream-test5
[redis] cache penetration and cache avalanche and cache breakdown solutions
分享一个开源的USB-CAN工具!
FinClip | 2022 年 7 月产品大事记
ICDAR比赛技术分享
【机器学习】机器学习基本概念/术语3
一个域名对应多个IP地址
JS中对象数组用sort按属性排序
随机推荐
华为ECS云服务器上安装Docker及部署Redis详细教程【华为云至简致远】
基于DMS的数仓智能运维服务,知多少?
【技术白皮书】第一章:OCR智能文字识别新发展——深度学习的文本信息抽取
广告电商系统开发之会员系统板块
php之相似文章标题similar_text()函数使用
大型企业数据治理的现状和解决方案有哪些参考?_光点科技
Looking at the ecological potential of Hongmeng OS from the evolution of MatePad Pro
J9货币论:数字经济为全球经济复苏注入力量
yolov5s用自己的数据集进行训练模型
B站回应HR称核心用户是Loser;微博回应宕机原因;Go 1.19 正式发布|极客头条
一个域名对应多个IP地址
如何避免无效的沟通
一些嵌入式软件设计经验
【目标检测】Focal Loss for Dense Object Detection
如何直击固定资产管理的难题?
Which thread pool does Async use?
ORACLE CLOUD 在国内有数据中心吗?
出海,是泡泡玛特的“解药”吗?
uniapp 去掉默认导航栏
IP属地如何高效率识别