[发明专利]一种基于热度感知的内存纠删码分布方法有效
申请号: | 201711318689.2 | 申请日: | 2017-12-12 |
公开(公告)号: | CN108073472B | 公开(公告)日: | 2020-05-19 |
发明(设计)人: | 黄建忠;曹强;谢长生;周盼萍;徐滨 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G06F11/14;G06F3/06 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 廖盈春;李智 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 热度 感知 内存 纠删码 分布 方法 | ||
1.一种基于热度感知的内存纠删码分布方法,其特征在于,所述方法采用纠删码数据冗余技术存储内存中的数据;同时对内存中的数据分块按访问热度进行动态划分,具体分为3个等级:0、1和2,热度等级更新为2的数据分块采用副本数据冗余技术,热度等级更新为1的数据分块采用纠删码数据冗余技术,热度等级更新为0的数据分块从内存中替换出去;所述方法具体包括以下步骤:
(1)设置一个时间阈值TW以及计时器T;
(2)接收用户请求,处理请求指令;
(3)判断计时器T是否已经达到TW,若是,则转入步骤(4),否则转入步骤(7);
(4)根据时间阈值内请求指令串的访问,更新内存里每一个数据分块的访问热度等级,然后更新系统内每一个参与的节点服务器的负载;
(5)根据访问热度和节点负载,对冗余组中数据分块进行三类调整,包括增加副本,删除副本和数据分块替换;
(6)重置计时器T=0;
(7)判断请求访问的数据分块是否已经在内存中或者存放在新数据分块的队列中,若是,则转入步骤(8),否则转入步骤(9);
(8)更新请求访问的数据分块的访问频率,从内存中获取请求访问的数据分块的副本,将目标数据分块传送给代理服务器,之后转入步骤(10);
(9)从磁盘上读取目标数据分块传送给代理服务器,将数据分块插入存放新数据分块的队列中,之后转入步骤(10);
(10)判断请求指令是否已经处理完毕,若是,则流程结束,否则转入步骤(2)。
2.根据权利要求1所述的一种内存纠删码分布方法,其特征在于,所述热度等级更新为2的数据分块采用副本数据冗余技术具体为:当数据分块的热度等级由1升为2时,选择负载最低的节点增加该数据分块的副本数据分块。
3.根据权利要求1所述的一种内存纠删码分布方法,其特征在于,所述热度等级更新为1的数据分块采用纠删码数据冗余技术具体为:当数据分块的热度等级由2降为1时,选择负载最重的节点删除该数据分块的副本数据分块。
4.根据权利要求1所述的一种内存纠删码分布方法,其特征在于,所述热度等级更新为0的数据分块从内存中替换出去具体为:当数据分块的热度等级由1或2降为0时,将该数据分块替换出内存,替换进内存的新数据分块从负载最重的节点中选取。
5.根据权利要求4所述的一种内存纠删码分布方法,其特征在于,所述新数据分块的热度等级为1。
6.根据权利要求4所述的一种内存纠删码分布方法,其特征在于,所述数据分块的热度等级由2降为0时,删除该数据分块的所有副本数据分块。
7.根据权利要求1所述的一种内存纠删码分布方法,其特征在于,所述步骤(5)具体包括以下子步骤:
(51)判断是否数据分块的热度等级由2更新为1,若是,则转入步骤(52),否则转入步骤(53);
(52)确定系统中存储该数据分块的节点,添加到Listsrc列表中,从Listsrc中选择负载最重的节点SN,从当前数据分块组移除SN中的数据分块,然后转入步骤(510);
(53)判断是否数据分块的热度等级由1更新为2,若是,则转入步骤(54),否则转入步骤(55);
(54)确定系统中除当前数据分块组节点之外的目标节点,添加到Listtgt列表中,从Listtgt中选择负载最轻的节点SN,传送该数据分块的副本给节点SN,之后转入步骤(510);
(55)判断是否数据分块的热度等级更新为0并且旧数据分块属于内存中将要被替代的数据分块集合Setold,若是则转入步骤(56),否则转入步骤(510);
(56)Setnew为将要取代旧数据分块的候选新数据分块集合,确定系统中存储Setnew中数据分块的节点,添加到Listpdr列表中,确定系统中目标节点,添加到Listtgt中,从Listtgt中选择负载最轻的节点SNtgt,若SNtgt属于Listpdr,则转入步骤(57),否则转入步骤(58);
(57)提供数据分块的节点SNpdr=SNtgt,之后转入步骤(59);
(58)从Listpdr选择负载最重的节点作为SNpdr;
(59)从SNpdr移动新数据分块到SNtgt,更新组中的冗余数据,新数据分块热度等级初始为1,移除所有旧数据分块的副本;
(510)判断数据分块组中所有数据分块是否处理完毕,是则转入步骤(511);否则返回步骤(51);
(511)更新数据分块组的数据分块列表,更新新数据分块及其副本元数据的时间戳信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711318689.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:链接的存储系统和主机系统错误校正码
- 下一篇:一种闪存坏列表压缩方法