[发明专利]一种不满条带写的方法及装置有效
申请号: | 201510115467.5 | 申请日: | 2015-03-17 |
公开(公告)号: | CN104731526B | 公开(公告)日: | 2017-11-03 |
发明(设计)人: | 刘国良;董欢庆;蔡杰明;刘振军;张军伟;刘浏;马留英;刘健;董俊铎 | 申请(专利权)人: | 中国科学院计算技术研究所;天津中科蓝鲸信息技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京泛华伟业知识产权代理有限公司11280 | 代理人: | 王勇,李科 |
地址: | 100190 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 不满 条带 方法 装置 | ||
技术领域
本发明涉及存储技术领域,更具体地,涉及条带化存储技术领域。
背景技术
三条带技术是一种结合了镜像与纠删码的数据分布技术,用于解决数据写入过程中若失败而导致的数据不一致问题(即write hole问题),并且可提高系统性能以及提供系统负载均衡分布的高可靠性。三条带技术是指对于逻辑层的每个条带,其内部实现均由三个逻辑条带组成。参见图1,三个逻辑条带分别为M条带、RS条带和N条带,其中:
1、M条带(镜像条带):该条带上的数据使用副本机制进行保护。镜像条带用于存放不满条带写(即小写)数据,用以提升数据读写的性能;此外,镜像条带的写入不覆盖纠删码条带上的数据,因此避免了写入过程中由于节点失效而导致的数据不一致。当镜像条带的小写积累到满条带或者系统启动镜像条带到纠删码条带的转换以腾出镜像条带占用的空间时,镜像条带会被转化成纠删码条带。
2、RS条带(纠删码条带):该条带上的数据使用Reed–Solomon编码机制保护;如N+M纠删码,其中N为原始数据块、M为校验块。
3、N条带(空条带):不存放数据的条带。空条带是满条带写入时的短暂存放场所,写完成后其状态立即转变为纠删码条带。空条带的存在使得数据写入不覆盖原来镜像条带与纠删码条带上的数据,确保不会出现数据不一致的问题。
另外,为了确保镜像条带上的数据具有不低于纠删码条带上的数据的保护级别,镜像条带上的数据所对应的副本存储在该条带的校验块所在的竖条带(或称副本节点)上。
尽管具备上述优点,但当前的三条带技术未具体说明如何处理不满条带写(尤其是不满数据块的小写)请求。如果仍采用传统的RAID做法,则一次小写会涉及多次I/O(包括读改写、重构写),即具有写惩罚(write penalty)的问题,且大量的小写会严重影响系统的性能。
发明内容
为解决上述问题,根据本发明的一个实施例,提供一种不满条带写的方法,包括:
将数据写入镜像条带;以及,修改所述条带对应的位图中的镜像位图指示位和镜像位图;其中,镜像位图指示位用于指示镜像位图中存放的是镜像条带数据信息还是指向镜像条带数据信息的地址,镜像条带数据信息用于指示镜像条带上的哪些位置有数据。
上述方法中,所述条带对应的位图包括镜像位图指示位、镜像位图和小写粒度指示位;其中,小写粒度指示位用于指示小写请求的写粒度。
上述方法中,当小写请求的写粒度是所述条带的数据块粒度的整数倍时,使镜像位图指示位指示镜像位图中存放的是镜像条带数据信息,并且在镜像位图中存放镜像条带数据信息。
上述方法中,当小写请求的写粒度不是所述条带的数据块粒度的整数倍时,使镜像位图指示位指示镜像位图中存放的是指向镜像条带数据信息的地址、在镜像位图中存放指向镜像条带数据信息的地址,并且在该地址处存放镜像条带数据信息。
上述方法中,当所述条带的数据块粒度为64KB并且小写请求的写粒度为4KB的整数倍但不是64KB的整数倍时,还修改所述条带对应的位图中的小写粒度指示位,并且镜像位图指向的镜像条带数据信息采用16bit位图来指示镜像条带数据块上的哪些位置有数据。
上述方法中,当所述条带的数据块粒度为64KB并且小写请求的写粒度为512B的整数倍但不是64KB的整数倍时,还修改所述条带对应的位图中的小写粒度指示位,并且镜像位图指向的镜像条带数据信息采用128bit位图来指示镜像条带数据块上的哪些位置有数据。
上述方法中,除了将数据写入镜像条带,还将数据写入所述条带的校验数据所在的磁盘上。
上述方法中,镜像位图为24bit。
上述方法中,当镜像条带的不满条带写积累到满条带时,将镜像条带转化为纠删码条带。
根据本发明的一个实施例,还提供一种不满条带写的装置,包括:
用于将数据写入镜像条带的设备;以及用于修改所述条带对应的位图中的镜像位图指示位和镜像位图的设备;其中,镜像位图指示位用于指示镜像位图中存放的是镜像条带数据信息还是指向镜像条带数据信息的地址,镜像条带数据信息用于指示镜像条带上的哪些位置有数据。
本发明具有如下的有益效果:
1、小写的数据均写到镜像条带和镜像条带的副本节点(即竖条带),避免了传统RAID的写惩罚问题;此外,即使上层下发不满条带的写请求,在块设备层也可以被高效地处理,降低了写处理过程中的读写操作所引起的系统开销。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所;天津中科蓝鲸信息技术有限公司,未经中国科学院计算技术研究所;天津中科蓝鲸信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510115467.5/2.html,转载请声明来源钻瓜专利网。