hadoop面经复习
以大数据面经为主,用于复习
大数据捌圆
这个作者很懒,什么都没留下…
展开
-
18-DataNode工作机制
DataNode工作机制原创 2022-06-07 17:28:47 · 81 阅读 · 0 评论 -
17-NameNode工作机制
NameNode工作机制原创 2022-06-07 14:58:39 · 150 阅读 · 0 评论 -
16-集群资源分配参数(项目中遇到的问题)
题目:集群资源分配参数 集群有30台机器,跑mr任务时候发现5个map任务全部分配到了同一台机器上,这个可能是由于什么原因导致? 答案: 解决方案:yarn.scheduler.fair.assignmultiple这个参数默认是开的,需要关掉 https://blog.csdn.net/leone911/article/details/51605172 ...原创 2022-05-22 17:18:31 · 334 阅读 · 0 评论 -
15-Hadoop解决数据倾斜方法
题目:Hadoop数据倾斜现象和解决方法 答案: 一、数据倾斜现象 数据频率倾斜——某一个区域的数据量要远远大于其他区域 数据大小倾斜——部分记录的大小远远大于平均值 二、数据倾斜解决方法 1.提前在map进行Combine,减少传输的数据量 在mapper加上Combiner相当于提前进行reduce,即把一个mapper中的相同key进行了聚合,减少shuffle过程中传输的数据量,以及reduce端的计算量。 如果导致数据倾斜的key大量分布在不同的mapper的时候,这种方法就不是很有效了。 2原创 2022-05-22 17:08:39 · 302 阅读 · 0 评论 -
14-Hadoop宕机
题目:Hadoop宕机 答案: 1.如果MR造成系统宕机。此时要控制Yarn同时运行的任务数,和每个任务申请的最大内存。调整参数:yarn.scheduler.maximum-allocation-mb(单个任务可申请的最多物理内存量,默认是8192MB) 2.如果写入文件过快造成NameNode宕机。那么调高Kafka的存储大小,控制从Kafka到HDFS的写入速度。例如,可以调整Flume每批次拉取数据量的大小参数batchsize。 ...原创 2022-05-22 16:44:02 · 113 阅读 · 0 评论 -
13-项目经验之基准测试
题目:项目经验之基准测试 搭建Hadoop集群后,需对HDFS读写性能和MapReduce计算性能测试,测试jar在Hadoop的share文件夹下 答案: HDFS的读写性能主要受网络和磁盘影响比较大。为了方便测试,将hadoop102、hadoop103、hadoop104的虚拟机网络都设置为100mbps 100Mbps单位是bit;10M/s单位是byte;1byte=8bit;100Mbps/8=12.5M/s 一、测试HDFS写性能 1.写测试底层原理 2.测试内容:向HDFS集群写10个原创 2022-05-22 16:35:59 · 269 阅读 · 0 评论 -
12-Yarn调度器
题目:Yarn调度器 答案: 1.Hadoop调度器重要分为三类: FIFO、Capacity Scheduler(容量调度器)和Fair Scheduler(公平调度器)。 Apache默认的资源调度器是容量调度器 CDH默认的资源调度器是公平调度器 2.区别 (1)FIFO调度器:支持单队列、先进先出、生产环境不会用 (2)容量调度器:支持多队列,保证先进入的任务优先执行 (3)公平调度器:支持多队列,保证每个任务公平享有队列资源 3.在生产环境下如何选择: (1)大厂:如果对并发度要求比较高,选择公原创 2022-05-22 15:18:35 · 109 阅读 · 0 评论 -
11-Yarn工作机制
题目:Yarn工作机制 画出Yarn工作流程图,并描述过程原创 2022-05-22 10:19:19 · 111 阅读 · 0 评论 -
10-shuffle及优化
题目: 描述shuffle过程及优化手段 答案: 1.map阶段 (1)增大环形缓冲区大小。由100M扩大到200M (2)增大环形缓冲区溢写比例。由80%扩大到90% (3)减少对溢写文件的merge次数。由默认10个文件改为一次merge20个文件 (4)在不影响实际业务的前提下,提前采用Combiner进行合并,减少I/O 2.reduce阶段 (1)合理设置Map和Reduce数:两个都不能设置太少,也不能设置太多。太少,会导致Task等待,延长处理时间;太多,会导致Map、Reduce任务间原创 2022-05-17 07:42:05 · 347 阅读 · 0 评论 -
09-ReduceTask工作机制
题目: 画出ReduceTask工作流程,并描述信息 答案: (1)Copy阶段:ReduceTask从各个MapTask上远程拷贝一片数据,并针对某一片数据,如果其大小超过一定阈值,则写到磁盘上,否则直接放到内存中 (2)Sort阶段:在远程拷贝数据的同时,ReduceTask启动了两个后台线程对内存和磁盘上的文件进行合并,以防止内存使用过多或磁盘上文件过多。按照MapReduce语义,用户编写reduce()函数输入数据是按key进行聚集的一组数据。为了将key相同的数据聚在一起,Hadoop采用了原创 2022-05-16 19:57:55 · 156 阅读 · 0 评论 -
08-MapTask工作机制
题目: 画出MapTask工作流程,并描述信息 答案: (1)Read阶段:MapTask通过InputFormat获得的RecordReader,从输入InputSplit中解析出一个个key/value (2)Map阶段:该节点主要是将解析出的key/value交给用户编写map()函数处理,并产生一系列新的key/value (3)Collect收集阶段:在用户编写map()函数中,当数据处理完成后,一般会调用OutputCollector.collect()输出结果。在该函数内部,它会将生成的k原创 2022-05-16 19:56:06 · 311 阅读 · 0 评论 -
07-shuffle机制
题目:shuffle机制 画出shuffle流程图,并进行描述 答案: 1.待处理文件经过map方法输出后,写入到内存缓冲区(默认大小100M),当内存缓冲区大小达到80%时,会对分区内的数据进行快速排序(字典排序),并溢写到磁盘中 2.当所有分区数据溢写完毕时,会对磁盘所有数据进行归并排序 3.归并排序完成后,会使用Combiner提前对数据进行合并计算(可选),然后通过压缩(可选)写入到磁盘中 4.reduce阶段中会拉取磁盘中的文件先拷贝到内存缓冲中,当内存达到阈值时则先合并一次溢写到磁盘中;当磁原创 2022-05-16 19:43:44 · 72 阅读 · 0 评论 -
06-MapReduce工作流程
题目:MapReduce工作流程 画出MapReduce流程,并描述信息 答案: MapTask: 1.客户端在提交任务之前,会先读取待处理文本,然后根据参数配置,形成一个任务分配的规划,并将信息提交给Yarn RM,并计算出MapTask数量 2.MapTask通过InputFormat接口(默认实现类为TextInputFormat)去读取待处理文本,调用map方法进行逻辑运算,通过outputController方法写入到环形缓冲区 3.环形缓冲区(默认大小100M)接收到数据后,大小达到80%原创 2022-05-16 17:25:55 · 122 阅读 · 0 评论 -
05-HDFS小文件处理
题目:HDFS小文件处理 答案:原创 2022-06-06 16:47:54 · 159 阅读 · 0 评论 -
04-HDFS写流程
题目:HDFS写流程 画出HDFS写流程图,并描述信息 答案: 1.客户端通过DistributedFileSystem向NameNode发送请求上传文件 2.NameNode检查文件目录是否存在,并响应给客户端 3.客户端请求上传第一个block(默认128M) 4.NameNode返回可以上传的DataNode节点 5.客户端向DataNode请求建立block传输通道,并向各个DataNode搭建成功通道 6.DataNode向客户端应答通道建立成功 7.客户端传输数据,以packet为单位,并原创 2022-05-12 19:35:46 · 57 阅读 · 0 评论 -
03-HDFS读流程
题目:HDFS读流程 画出HDFS读数据的流程图,并进行描述 答案: 1.客户端通过DistributedFileSystem向NameNode发送请求下载文件,NameNode通过查询元数据返回文件地址 2.挑选一台DataNode服务器(就近原则,然后随机),请求读取数据 3.DataNode向客户端传送数据(以packet为单位) 4.客户端接收数据,以packet为单位,先在本地缓存,写入目标文件 ...原创 2022-05-12 19:21:02 · 80 阅读 · 0 评论 -
02-hadoop完全分布式集群简单搭建过程
题目:hadoop完全分布式集群简单搭建过程 答案: 一、涉及到的配置文件 hadoop2.x:core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、slaves hadoop3.x:core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、workers 二、搭建过程 1.准备虚拟机(3台) 2.选择其中一台安装jdk,并配置环境变量 3.基于2中的虚拟机安装hadoop,并配置环境变原创 2022-05-09 20:53:22 · 484 阅读 · 0 评论 -
01-hadoop常用端口号
题目:hadoop常用端口号 答案:原创 2022-05-09 19:51:49 · 472 阅读 · 0 评论