MapReduce
木良Duncan
这个作者很懒,什么都没留下…
展开
-
FileInputFormat切片机制
(1) maxsize(切片最大值):参数如果调得比blockSize小,则会让切片变小,而且就等于配置的这个参数的值。(2)minsize(切片最小值):参数调的比blockSize大,则可以让切片变得比blockSize还大。(3)切片是不考虑数据集整体,而是逐个针对每一个文件单独切片。(1)简单地按照文件的内容长度进行切片。(2)切片大小,默认等于Block大小。// 根据文件类型获取切片信息。// 获取切片的文件名称。原创 2023-03-24 10:30:11 · 174 阅读 · 0 评论 -
MapReduce程序运行流程
在MapReduce程序读取文件的输入目录上存放相应文件。 客户端程序在submit()方法执行之前,获取待处理的数据信息,然后根据集群中参数的配置形成一个任务分配规划。 客户端提交job.split、jar包、job.xml等文件给yarn,yarn中的resourcemanager启动MRAppMaster。 MRAppMaster启动后根据本次job的描述信息,计算出需要的maptask实例数量,然后向集群申请机器启动相应数量的maptask进程。 maptask利用客户指定的inputformat原创 2023-03-23 09:10:32 · 314 阅读 · 0 评论 -
MapReduce工作机制
为了将key相同的数据聚在一起,hadoop采用了基于排序的策略,由于各个MapTask已经实现对自己的处理结果进行了局部排序。因此,ReduceTask只需对所有数据进行一次归并排序即可。1)Copy阶段:ReduceTask从各个MapTask上远程拷贝一片数据,并针对某一片数据,如果其大小超过一定阈值,则写到磁盘上,否则直接放入内存中。2)Merge阶段:在远程拷贝数据的同时,ReduceTask启动两个后台线程对内存和磁盘上的文件进行合并,以防止内存使用过多或磁盘上文件过多。原创 2023-03-23 09:08:52 · 208 阅读 · 0 评论