hadoop环形缓冲区原理

10 篇文章 0 订阅
6 篇文章 0 订阅

声明:转载自小C哈哈哈

一 概念

1. 什么是Shuffle过程?

  • Shuffle过程是指Map方法之后,Reduce方法之前的数据处理过程。

2.什么是hadoop环形缓冲区?

hadoop的环形缓冲区其实只是一个简单的buffer,在这里是一个缓存数组(byte),默认大小是100M,源码如下:

3.什么是equator(赤道)? 

最初的时候,equator在数组的最前端,可以将数组想象为环形,首尾相接,此时,equator就既在数组的开头,又在数组的结尾

二 环形缓冲区原理 

    环形缓冲区其实是一个数组,数组中存放着key和value的数据,以及关于key和value的元数据信息,key/value的元数据存储的格式是int类型,每个key/value对应一个元数据,元数据由4个int组成,第一个int存放value的起始位置,第二个int存放key的起始位置,第三个int存放partition,第四个int存放value的长度。

    key/value数据和元数据在环形缓冲区中的存储是由equator分隔的,key/value按照索引递增的方向存储,元数据则按照索引递减的方向存储,将数组抽象为一个环形结构之后,以equator为界,key/value顺时针存储,元数据逆时针存储。

在B站上看到了一个形象的视频,于是将其做成动图展示出来,感谢up主:此视频的链接是:https://www.bilibili.com/video/BV1pJ411H7m7

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值