一种数据迁移方法和装置制造方法及图纸

技术编号:10122748 阅读:88 留言:0更新日期:2014-06-12 12:37
本发明专利技术提供了一种数据迁移技术,包括:获取第一磁盘组的负载信息;当所述负载信息达到迁出阈值时,把第一磁盘组中目标逻辑单元号LUN的至少一个迁出Extent中的数据读取到所述控制器的缓存中;获取第二磁盘组中的至少一个迁入Extent,所述迁入Extent的数量和所述迁出Extent的数量相同,每个所述迁出Extent的RAID等级和一个所述迁入Extent的RAID等级一一对应,所述迁入Extent是空闲的Extent;将所述迁出LUN与所述迁出Extent的映射关系更新为所述迁出LUN与所述迁入Extent的映射关系。

【技术实现步骤摘要】
【国外来华专利技术】【专利摘要】本专利技术提供了一种数据迁移技术,包括:获取第一磁盘组的负载信息;当所述负载信息达到迁出阈值时,把第一磁盘组中目标逻辑单元号LUN的至少一个迁出Extent中的数据读取到所述控制器的缓存中;获取第二磁盘组中的至少一个迁入Extent,所述迁入Extent的数量和所述迁出Extent的数量相同,每个所述迁出Extent的RAID等级和一个所述迁入Extent的RAID等级一一对应,所述迁入Extent是空闲的Extent;将所述迁出LUN与所述迁出Extent的映射关系更新为所述迁出LUN与所述迁入Extent的映射关系。【专利说明】一种数据迁移方法和装置
本专利技术涉及存储技术,特别涉及一种数据迁移技术。
技术介绍
在存储领域中,为了提高数据的读写速度或者增强数据的安全性,一种称为廉价磁盘阵列(Redundant Arrays of Independent Disks, RAID)的技术得到广泛应用。在这项技术中,按照某个RIAD级别的要求把多个磁盘联系在一起,组成一个RAID组。按照小型计算机系统接口(SmallComputer System Interface, SCSI),或者纤维通道(Fibre Channel, FC)、因特网小型计算机系统接口网iSCSI (internet SmallComputer System Interface, SCSI)等封装了 SCSI的协议,或者其他类似协议,可以根据RAID组的容量,从逻辑上对RAID组做横向切割,把这个RAID组划分成多个逻辑单元(LogicUnit)。在存储领域中,习惯上也以LUN (逻辑单元号,Logic Unit Number)来称呼逻辑单元,除非特别说明,本专利技术沿用这种习惯。RAID组中每个磁盘都为这个LUN提供相同大小的存储空间,每个切割下来的单元就称为一个LUN。每个LUN可以单独供主机访问,这样的话,原先的一个RAID组就可以逻辑上作为多个RAID组来使用了。磁盘组由至少一个RAID组组成,由于磁盘组内磁盘数量难以直接扩充,而磁盘组建立之初,难以确定用户对资源的实际需求量,因此经常出现磁盘组能提供的资源难以满足用户需求的情况。
技术实现思路
本专利技术提供一种数据迁移技术,可以实现跨磁盘组的数据迁移。第一方面,本专利技术提供一种数据迁移方法,应用于控制器中,所述控制器分别和第一磁盘组、第二磁盘组连接,所述第一磁盘组DG以及所述第二磁盘组均包括磁盘 ,每个所述磁盘包括多个分块Chunk,其中,至少2个来自同一 DG且不同磁盘的Chunk,按照廉价磁盘冗余阵列RAID算法组成分块组CKG,每个CKG划分成多个长度Extent,且所述CKG中每个所述Chunk为所述Extent提供同样大小的存储空间,该方法包括:获取第一磁盘组的负载信息;当所述负载信息达到迁出阈值时,把第一磁盘组中目标逻辑单元号LUN的至少一个迁出Extent中的数据读取到所述控制器的缓存中;获取第二磁盘组中的至少一个迁入Extent,所述迁入Extent的数量和所述迁出Extent的数量相同,每个所述迁出Extent的RAID等级和一个所述迁入Extent的RAID等级--对应,所述迁入Extent是空闲的Extent ;将所述迁出LUN与所述迁出Extent的映射关系更新为所述迁出LUN与所述迁入Extent的映射关系。在第一方面的第一种可能的实现方式中,负载信息包括:每秒带宽BPS高于第一阈值,与空闲存储空间低于第二阈值中的至少一种。第二方面,本专利技术提供一种数据迁移装置,用于迁移第一磁盘组的数据到第二磁盘组,所述第一磁盘组DG以及所述第二磁盘组均包括磁盘,每个所述磁盘包括多个分块Chunk,其中,至少2个来自同一 DG且不同磁盘的Chunk,按照廉价磁盘冗余阵列RAID算法组成分块组CKG,每个CKG划分成多个长度Extent,且所述CKG中每个所述Chunk为所述Extent提供同样大小的存储空间,该装置包括:参数获取单元,用于获取第一磁盘组的负载信息;数据读取单元,和所述参数获取单元41连接,当所述负载信息达到迁出阈值时,把第一磁盘组中目标逻辑单元号LUN的至少一个迁出Extent中的数据读取到所述控制器的缓存中;数据写入单元,和所述数据读取单元连接,用于获取第二磁盘组中的至少一个迁入Extent,所述迁入Extent的数量和所述迁出Extent的数量相同,每个所述迁出Extent的RAID等级和一个所述迁入Extent的RAID等级--对应,所述迁入Extent是空闲的Extent ;LUN更新单元,用于将所述迁出LUN与所述迁出Extent的映射关系更新为所述迁出LUN与所述迁入Extent的映射关系。在第二方面的第一种可能的实现方式中,负载信息包括:每秒带宽BPS高于第一阈值,与空闲存储空间低于第二阈值中的至少一种。【专利附图】【附图说明】为了更清楚地说明本专利技术实施例技术方案,下面将对实施例所需要使用的附图作简单地介绍,下面描述中的附图仅仅是本专利技术的一些实施例,还可以根据这些附图获得其他的附图。图1是本专利技术实施例数据迁移方法流程图;图2是本专利技术实施例控制器示意图;图3是本专利技术实施例·数据迁移装置结构图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例所获得的所有其他实施例,都属于本专利技术保护的范围。传统的RAID技术中,先按照选定的RAID级别把多个磁盘组合在一起形成RAID组,然后以RAID组中每个磁盘作为最小单位,每个磁盘取出大小相等的一部分空间共同组成LUN。LUN作为单位提供给主机读写,因为LUN横跨了所有磁盘,所以当主机写数据时,数据会写到整个RAID组中;读数据时,由整个RAID组提供数据给主机。大部分RAID级别都提供了数据重构的功能。例如在RAID3中,有一个磁盘存储校验数据,其余磁盘存储业务数据。当有一个磁盘发生了故障后,可以由其余磁盘通过校验算法恢复出故障磁盘中的数据。然而,由于单个磁盘的存储空间越来越大,而组成RAID组中的磁盘数量往往不多,例如由6个磁盘组成一个RAID组,因此如果有一个磁盘发生了故障,只能由RAID组中数量不多的其余磁盘参与重构,这个时间可能会很漫长,例如重构I太字节(TB)的数据块,需要耗费10小时。如果重构期间有新的磁盘发生故障,将可能对存储系统造成无法恢复的数据丢失。和现有技术中直接以磁盘作为粒度建立RAID组不同的是。本专利技术方案中,先把多个磁盘中的每个磁盘切分成大小相等的分块(CK,Chunk),例如6个磁盘组成一个磁盘组(Disk Group, DG),把DG中每个磁盘切分成大小是64MB (兆字节)的Chunk,然后以Chunk作为粒度建立RAID组,例如3个Chunk组成一个RAID组,由这些Chunk构成的RAID组,我们称为分块组(Chunk Group, CKG)。同一个磁盘中不会有属于同一个CKG中多个Chunk,换句话说,一个磁盘至多为一个CKG提供一个Chunk。并非DG中的每个磁盘都要为CKG提供Chunk,也就是,CKG中Chunk的数量本文档来自技高网
...

【技术保护点】
一种数据迁移方法,应用于控制器中,所述控制器分别和第一磁盘组、第二磁盘组连接,其特征在于:所述第一磁盘组以及所述第二磁盘组均包括磁盘,每个所述磁盘包括多个分块Chunk,其中,至少2个来自同一磁盘组且不同磁盘的Chunk,按照廉价磁盘冗余阵列RAID算法组成分块组CKG,每个CKG划分成多个长度Extent,且所述CKG中每个所述Chunk为所述Extent提供同样大小的存储空间,该方法包括:获取第一磁盘组的负载信息;当所述负载信息达到迁出阈值时,把第一磁盘组中目标逻辑单元号LUN的至少一个迁出Extent中的数据读取到所述控制器的缓存中;获取第二磁盘组中的至少一个迁入Extent,所述迁入Extent的数量和所述迁出Extent的数量相同,每个所述迁出Extent的RAID等级和一个所述迁入Extent的RAID等级一一对应,所述迁入Extent是空闲的Extent;将所述迁出LUN与所述迁出Extent的映射关系更新为所述迁出LUN与所述迁入Extent的映射关系。

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:任仕飞薛强
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1