
MapReduce
敬畏自然.
这个作者很懒,什么都没留下…
展开
-
MapReduce过程中的优化
1.增大环形缓冲区的容量(默认100M)或者提高溢写的阈值,可以减少溢写到磁盘的次数。 2.增大每次归并的文件个数(默认为10个),可以减少归并的次数。 3.归并的过程中,可以对数据进行合并,前提是合并操作不会影响最终的业务逻辑。 4.为了减少磁盘IO可以对数据进行压缩,可以进行压缩的地方有map输入、map输出、reduce输出。 map输入需求:支持切片(LZO、BZIP2) map输出需求:快(snappy) reduce输出需求:若永久保存则压缩率高(gzip),若输出数据作为下一个map输入则需要原创 2020-07-31 14:32:12 · 176 阅读 · 0 评论 -
MapReduce的组成架构及工作原理
MapReduce组成架构 一个完整的MapReduce程序在分布式运行时有三类实例进程: 1.MrAppMaster:负责整个程序的过程调度及状态协调。 2.MapTask:负责Map阶段的整个数据处理流程,并发执行,数目由数据的分片数决定,map()按行处理,对每个键值对调用一次。 3.ReduceTask:负责Reduce阶段的整个数据处理流程,并发执行,数目由数据的分区数决定。reduce()对每一组相同键的键值对调用一次。 MapReduce工作原理 客户端job提交切片信息、配置文件信息、驱动j原创 2020-07-17 15:18:15 · 1654 阅读 · 0 评论