[发明专利]路由信息更新方法及装置有效
申请号: | 201110294092.5 | 申请日: | 2011-09-29 |
公开(公告)号: | CN103036796A | 公开(公告)日: | 2013-04-10 |
发明(设计)人: | 李智慧;周英;余俊;何坤;周异 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L12/757 | 分类号: | H04L12/757;H04L12/803 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 路由 信息 更新 方法 装置 | ||
技术领域
本发明涉及互联网技术领域,尤其涉及一种路由信息更新方法及装置。
背景技术
分布式KV(Key-Value)存储系统通常由客户端和存储服务器构成,其中,存储服务器的功能在于存储键值(Value,即数据),而客户端的功能在于通过基于一定的路由算法(比如哈希(hash)算法)所确定出的路由信息,路由到相应的存储服务器上,从而实现对与键(Key,即数据标识)相对应的Value的访问与操作(比如可以对Value执行写读、写、删除等操作)。
当分布式KV存储系统的存储容量增加时,数据会在存储服务器之间发生迁移,此时需要重新根据路由算法确定数据与存储服务器之间的对应关系,并根据该对应关系对路由信息进行更新,进而根据更新后的路由信息将数据迁移到相应的存储服务器中。在上述过程中,若采用的路由算法不当,很可能在新增存储服务器的情况下,导致大量的数据都迁移到新增的存储服务器中,从而使得整个分布式KV存储系统的负载失衡;或者,还可能导致几乎所有的数据都发生迁移,从而增大分布式KV存储系统的处理负担。
以下介绍现有技术中常用的几种路由算法及其特点:
首先介绍一种简单的路由算法——取模hash(即余数hash)算法。研究发现,由于该路由算法与存储服务器的个数密切相关,因此在存储服务器的个数变化后,根据该算法所计算出的路由会导致几乎所有的数据都需要进行迁移,从而使得数据发生剧烈波动(数据波动即数据在不同存储服务器之间发生迁移),也使得分布式KV存储系统的处理负担非常沉重。
其次介绍一种改进的路由算法——简单一致性hash(即在存储服务器上进行一致性hash)算法。研究发现,该算法虽然可以在分布式KV存储系统的存储容量改变后,实现使存储容量改变前的分布式KV存储系统的已有路由尽可能少的受到影响,但却不能达到使得新增的存储服务器和原有的存储服务器在数据存储负载上较为均衡这一目标。
此外重点介绍基于虚拟节点的一致性hash算法(即在虚拟节点上进行一致性hash,并建立虚拟节点和物理的存储服务器之间的映射关系)。需要说明的是,虚拟节点用于对存储网络中的各存储服务器的磁盘阵列进行虚拟化操作,将各磁盘阵列中的LUN(Logical Unit Number,逻辑单元号)虚拟为逻辑卷,其中,虚拟节点可以为一个硬件设备,也可以为可以实现上述功能的一个软件功能单元。当客户端要访问某个存储服务器时,首先要访问虚拟节点,然后再通过存储网络访问实际的存储服务器中存储的数据。在此过程中,客户端只会识别到逻辑卷,而不会直接识别到存储服务器的物理硬盘。基于虚拟节点,该一致性hash算法是指先根据一致性hash算法确定一个虚拟节点,然后再跟据该虚拟节点和存储服务器的映射关系更新路由信息,并根据更新后的路由信息找到对应的存储服务器。该算法的缺陷在于,在解决分布式KV存储系统扩容时的数据波动问题和存储服务器负载均衡性问题时,会受到存储服务器对应的虚拟节点的个数的限制。具体来说,若存储服务器对应的虚拟节点越多,则基于更新后的路由信息进行数据迁移时的数据波动越小,从而数据在不同存储服务器之间的分布越均衡,存储服务器的负载也就越均衡。
具体地,存储服务器所对应的虚拟节点个数与背离指标的对应关系示意图如图1所示。图1中的横坐标代表存储服务器所对应的虚拟节点个数;纵坐标代表背离指标。需要说明的是,背离指标是能够反映数据在存储服务器之间分布状况的一个百分比指标,背离指标越高,数据在存储服务器之间分布得越均衡,否则,则越不均衡。由图1可知,当物理存储器仅对应一个虚拟节点时(这种情况也就是利用简单一致性hash算法进行路由计算的情况),背离率接近100%,说明数据在存储服务器之间分布得非常不均衡;当一个存储服务器对应100-200个虚拟节点的时候,背离率在5%-10%左右,此时数据在存储服务器之间分布得较为均衡。
由此可见,基于虚拟节点的一致性hash算法而得到的数据分布均衡性有赖于存储服务器所对应的虚拟节点的个数,只有在这个数相当大时才能达到一个可接受的数据分布均衡状态。此外,通常实现一致性hash算法时需要使用排序树之类的数据结构来存储虚拟节点与存储服务器的映射关系,因此对分布式KV存储系统的功能性要求较高,并且由于要求虚拟节点散列得尽可能的均匀,因此对散列算法要求也较高。
目前常用的路由算法为上述第三种算法,但若要基于该算法使得数据的分布处于均衡状态,则需要在分布式KV存储系统中增加较多的虚拟节点,这无疑会大大增加分布式KV存储系统的负担。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110294092.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:焙烧水泵自动上水系统
- 下一篇:一种吊扇机头结构
- 信息记录介质、信息记录方法、信息记录设备、信息再现方法和信息再现设备
- 信息记录装置、信息记录方法、信息记录介质、信息复制装置和信息复制方法
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录装置、信息再现装置、信息记录方法、信息再现方法、信息记录程序、信息再现程序、以及信息记录介质
- 信息记录设备、信息重放设备、信息记录方法、信息重放方法、以及信息记录介质
- 信息存储介质、信息记录方法、信息重放方法、信息记录设备、以及信息重放设备
- 信息存储介质、信息记录方法、信息回放方法、信息记录设备和信息回放设备
- 信息记录介质、信息记录方法、信息记录装置、信息再现方法和信息再现装置
- 信息终端,信息终端的信息呈现方法和信息呈现程序
- 信息创建、信息发送方法及信息创建、信息发送装置