数据迁移的方法、控制器和数据迁移装置的制造方法

文档序号:8269334阅读:338来源:国知局
数据迁移的方法、控制器和数据迁移装置的制造方法
【技术领域】
[0001]本发明涉及存储技术,尤其涉及一种数据迀移的方法、控制器和数据迀移装置。
【背景技术】
[0002]存储设备在存储数据时,对于重要性较高的数据,通常通过同时存储多份数据副本的方式来保证数据的可靠性。举例来说,可以将多份数据副本分别存储在不同的故障域中,当一份数据副本的所在的存储空间损坏时,其他数据副本仍然可用。故障域是指某一设定范围的存储区域,该区域的数据损坏不会影响到其他区域的数据。
[0003]同时,分层存储技术已广泛应用于存储设备中。分层存储技术是指,在存储设备中的存储介质存在着较大的速度和价格差异时,将当前访问频繁的数据(又称热数据)存储在高速高价格的存储介质上,将当前访问不够频繁的数据(又称冷数据)存储在低速低价格的存储介质上。
[0004]当以上两种技术应用于同一个存储设备时,可能会出现这种情况,例如:存储设备中保存了两份数据副本,其中,一份数据副本保存在至低速低价格的存储介质的一个故障域中,另一份数据副本保存在至低速低价格的存储介质的一个故障域中,当其中一份数据副本所在的数据块变成热数据块时,为了提高其访问效率需要将该数据块迀移至高速高价格的存储介质上,就有可能将该数据副本和另一份数据副本存储在同一个故障域中,那么当该故障域的存储空间发生损坏时,数据将发生丢失,可靠性不能得到保障。

【发明内容】

[0005]本发明实施例提供了一种数据迀移的方法、控制器和数据迀移装置。避免了在执行分级存储操作时将多份目标数据迀移至同一个故障域中,保证了数据的可靠性。
[0006]第一方面,本发明实施例提供了一种数据迀移的方法,所述方法由存储设备执行,所述存储设备至少包括控制器、第一层级磁盘集合和第二层级磁盘集合,所述第一层级磁盘集合包括第一层级故障域,所述第二层级磁盘集合包括至少两个第二层级故障域;所述存储设备中保存有N份目标数据,N为大于I的正整数,所述N小于第一层级故障域的个数,并且所述N小于第二层级故障域的个数;所述方法包括:
[0007]所述控制器统计所述第一层级故障域中的数据块的访问频率,所述数据块包括第i份目标数据,其中i为大于或等于零的整数,并且,i〈N;
[0008]当所述数据块的访问频率达到预设阈值时,所述控制器在所述第二层级磁盘集合中确定待存储所述数据块的第二层级故障域,所述确定出的第二层级故障域没有保存所述目标数据;
[0009]所述控制器将所述数据块迀移到所述确定出的第二层级故障域中。
[0010]结合第一方面,在第一种可能的实现方式中,所述控制器在所述第二层级磁盘集合中确定待存储所述数据块的第二层级故障域包括:
[0011]所述控制器根据所述i和N,以及预先设定的关联关系,确定所述第二层级故障域的编号,所述关联关系是指所述第二层级故障域的编号等于所述N与随机数的乘积再加上所述i,从而获得的和,其中,所述随机数是大于或等于I的正整数,并且所述随机数不超过所述存储设备所包含的第二层级故障域的个数除以所述N从而获得的商。
[0012]结合第一方面或者第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述方法还包括:
[0013]所述控制器保存所述第一层级故障域和所述确定出的第二层级故障域之间的对应关系;
[0014]当所述数据块的访问频率低于所述预设阈值时,所述控制器根据所述对应关系将所述数据块从所述确定出的第二层级故障域迀移到所述第一层级故障域中。
[0015]结合第一方面或者第一方面的第一种至第二种任意一种可能的实现方式,在第三种可能的实现方式中,所述方法还包括:
[0016]所述控制器接收所述目标数据,根据预设的规则确定所述目标数据在所述存储设备中保存的份数为N;
[0017]所述控制器对所述目标数据进行复制,生成N份所述目标数据。
[0018]第二方面,本发明实施例提供了一种控制器,所述控制器包括处理器和通信接P ;
[0019]所述通信接口,用于与磁盘阵列进行通信,所述磁盘阵列包括第一层级磁盘集合和第二层级磁盘集合,所述第一层级磁盘集合包括第一层级故障域,所述第二层级磁盘集合包括至少两个第二层级故障域;所述磁盘阵列中保存有N份目标数据,N为大于I的正整数,所述N小于第一层级故障域的个数,并且所述N小于第二层级故障域的个数;
[0020]所述处理器,用于统计所述第一层级故障域中的数据块的访问频率,所述数据块包括第i份目标数据,其中i为大于或等于零的整数,并且,i〈N ;
[0021]当所述数据块的访问频率达到预设阈值时,所述处理器在所述第二层级磁盘集合中确定待存储所述数据块的第二层级故障域,所述确定出的第二层级故障域没有保存所述目标数据;
[0022]所述处理器将所述数据块迀移到所述确定出的第二层级故障域中。
[0023]结合第二方面,在第一种可能的实现方式中,所述处理器具体用于根据所述i和N,以及预先设定的关联关系,确定所述第二层级故障域的编号,所述关联关系是指所述第二层级故障域的编号等于所述N与随机数的乘积再加上所述i,从而获得的和,其中,所述随机数是大于或等于I的正整数,并且所述随机数不超过所述存储设备所包含的第二层级故障域的个数除以所述N从而获得的商。
[0024]结合第二方面或者第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理器还用于保存所述第一层级故障域和所述确定出的第二层级故障域之间的对应关系;
[0025]当所述数据块的访问频率低于所述预设阈值时,所述处理器还用于根据所述对应关系将所述数据块从所述确定出的第二层级故障域迀移到所述第一层级故障域中。
[0026]结合第二方面或者第二方面的第一种至第二种任意一种可能的实现方式,在第三种可能的实现方式中,所述处理器还用于接收所述目标数据,根据预设的规则确定所述目标数据在所述存储设备中保存的份数为N ;所述控制器对所述目标数据进行复制,生成N份所述目标数据。
[0027]第三方面,本发明实施例提供了一种数据迀移装置,所述数据迀移装置位于存储设备的控制器中,所述存储设备至少包括所述控制器、第一层级磁盘集合和第二层级磁盘集合,所述第一层级磁盘集合包括第一层级故障域,所述第二层级磁盘集合包括至少两个第二层级故障域;所述存储设备中保存有N份目标数据,N为大于I的正整数,所述N小于第一层级故障域的个数,并且所述N小于第二层级故障域的个数;所述数据迀移装置包括:
[0028]统计模块,用于统计所述第一层级故障域中的数据块的访问频率,所述数据块包括第i份目标数据,其中i为大于或等于零的整数,并且,i〈N ;
[0029]确定模块,用于当所述数据块的访问频率达到预设阈值时,在所述第二层级磁盘集合中确定待存储所述数据块的第二层级故障域,所述确定出的第二层级故障域没有保存所述目标数据;
[0030]迀移模块,用于将所述数据块迀移到所述确定出的第二层级故障域中。
[0031]结合第三方面,在第一种可能的实现方式中,所述确定模块具体用于根据所述i和N,以及预先设定的关联关系,确定所述第二层级故障域的编号,所述关联关系是指所述第二层级故障域的编号等于所述N与随机数的乘积再加上所述i,从而获得的和,其中,所述随机数是大于或等于I的正整数,并且所述随机数不超过所述存储设备所包含的第二层级故障域的个数除以所述N从而获得的商。
[0032]结合第三方面或者第三方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:
[0033]保存模块,用于保存所述第一层级故障域和所述确定出的第二层级故障域之间的对应关系;
[0034]所述迀移模块,还用于根据所述对应关系将所述数据块从所述确定出的第二层级故障域迀移到所述第一层级故障域中。
[0035]结合第三方面或者第三方面的第一种至第二种任意一种可能的实现方式,在第三种可能的实现方式中,还包括:接收模块,用于接收所述目标数据,根据预设的规则确定所述目标数据在所述存储设备中保存的份数为N ;
[0036]复制模块,用于对所述目标数据进行复制,生成N份所述目标数据。
[0037]本发明实施例提供了一种数据迀移的方法、控制器和数据迀移装置,统计所述第一层级故障域中的数据块的访问频率,所述数据块包括多份目标数据中的其中一份,当第一层级故障域中的数据块的访问频率达到预设阈值时,将所述数据块迀移至第二层级故障域,并且所述第二层级故障域没有保存所述目标数据,这就避免了在执行分级存储操作时将多份目标数据迀移至同一个故障域中,保证了数据的可靠性。
【附图说明】
[0038]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0039]图1是根据本发明实施例提供的应用场景图;
[0040]图2是根据本发明实施例提供的存储设备的结构示意图;
[0041]图3是根据本发明实施例提供的磁盘阵列的示例图;
[0042]图4是根据本发明实施例提供的磁盘阵列中的故障域分布示意图;
[0043]图5是根据本发明实施例提供的数据迀移的方法的流程示意图;
[0044]图6是根据本发明实施例提供的数据迀移装置的结构示意图。
【具体实施方式】
[0045]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1