一种数据迁移的方法及装置的制造方法
【技术领域】
[0001 ]本发明涉及计算机技术领域,尤其涉及一种数据迀移的方法及装置。
【背景技术】
[0002] 在分级存储系统中包括多个存储层级,不同存储层级中的存储介质的性能不同, 级别越高的存储层级中的存储介质的性能越高,一个存储层级中可以包括一个或多个存储 介质。为了提高用户体验,将越热的数据(访问热度越高的数据)存储在级别越高的存储层 级中,并且,当一个数据由冷(热)数据变为热(冷)数据后,该数据还会在存储层级之间进行 迀移。
[0003] 以一个存储在某一存储层级中的数据由冷数据变为热数据为例,分级存储系统中 的集中控制器迀移数据的方法包括:获取该数据在该存储层级的读访问热度和写访问热 度,将读访问热度与写访问热度之和与特定阈值进行比较,当读访问热度与写访问热度之 和大于该特定阈值时(此时,说明该数据为热数据),将该数据迀移至级别更高的存储层级 中。
[0004] 需要说明的是,某些应用场景下,存储层级中的数据通过采用独立冗余磁盘阵列 (Redundant Arrays of Independent Disks,简称RAID)技术进行保护,因此,每个存储层 级都有一个RAID级别,每个RAID级别对应一个写放大系数,一个存储层级的RAID级别对应 的写放大系数是指对存储在该存储层级中的数据的逻辑地址进行一次写访问时所实际产 生的对存储该数据的存储介质的访问次数,该存储介质属于该存储层级。例如,当对一个 RAID级别为RAID5的存储层级内存储的数据进行写操作时,需要对该数据的逻辑地址进行 写访问,对一个数据的逻辑地址的每一次写访问将产生两个实际的对存储该数据的存储介 质的读操作和两个实际的对该存储介质的写操作,具体为从该存储介质中读旧的数据和数 据校验信息,向该存储介质中写新的数据和数据校验信息。根据存储在一个存储层级中的 数据的写访问热度和读访问热度迀移数据,并不能真实的反映由于对该数据进行写操作所 实际产生的对存储该数据的存储介质的访问压力。
【发明内容】
[0005] 本发明的实施例提供一种数据迀移的方法及装置,用于提高存储层级中的数据的 存取速度。
[0006] 为达到上述目的,本发明的实施例采用如下技术方案:
[0007] 第一方面,提供一种数据迀移的方法,包括:
[0008] 获取目标数据在第一存储层级的访问热度;
[0009] 根据第一存储层级的数据保护机制对应的放大系数确定权重,放大系数是指对目 标数据的逻辑地址进行一次访问时所实际产生的对存储目标数据的存储介质的访问次数, 存储介质属于第一存储层级;
[0010] 根据访问热度和权重计算目标结果;
[0011] 当目标结果满足预设条件时,迀移目标数据至第二存储层级。
[0012] 结合第一方面,在第一种可能的实现方式中,访问热度为写访问热度,权重为根据 数据保护机制对应的写放大系数确定的写访问热度的第一权重,写访问热度为目标数据在 第一存储层级的写访问次数或者单位时间内目标数据在第一存储层级的写访问次数,写放 大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标数据的存 储介质的访问次数。
[0013] 结合第一方面,在第二种可能的实现方式中,访问热度包括写访问热度和读访问 热度,权重包括根据数据保护机制对应的写放大系数确定的写访问热度的第一权重和根据 数据保护机制对应的读放大系数确定的读访问热度的第二权重;
[0014]其中,写访问热度为目标数据在第一存储层级的写访问次数,读访问热度为目标 数据在第一存储层级的读访问次数;或者,写访问热度为单位时间内目标数据在第一存储 层级的写访问次数,读访问热度为单位时间内目标数据在第一存储层级的读访问次数;写 放大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标数据的 存储介质的访问次数,读放大系数是指对目标数据的逻辑地址进行一次读访问时所实际产 生的对存储目标数据的存储介质的访问次数。
[0015] 结合第一方面,第一方面的第一种可能的实现方式或第二种可能的实现方式,在 第三种可能的实现方式中,当预设条件为大于第一阈值时,第二存储层级中的存储介质的 性能优于第一存储层级中的存储介质的性能;或者,当预设条件为小于第二阈值时,第一存 储层级中的存储介质的性能优于第二存储层级中的存储介质的性能,第一阈值大于第二阈 值。
[0016] 结合第一方面的第二种可能的实现方式,在第四种可能的实现方式中,第一权重 为写放大系数,第二权重为读放大系数;或者,第一权重为第一数值,第二权重为第二数值, 第一数值与第二数值的比值和写放大系数与读放大系数的比值相同。
[0017] 结合第一方面,第一方面的第一种可能的实现方式至第四种可能的实现方式任一 种,在第五种可能的实现方式中,数据保护机制包括独立冗余磁盘阵列RAID级别或纠删码 EC〇
[0018] 第二方面,提供一种数据迀移装置,包括:
[0019] 获取单元,用于获取目标数据在第一存储层级的访问热度;
[0020] 确定单元,用于根据第一存储层级的数据保护机制对应的放大系数确定权重,放 大系数是指对目标数据的逻辑地址进行一次访问时所实际产生的对存储目标数据的存储 介质的访问次数,存储介质属于第一存储层级;
[0021 ]计算单元,用于根据访问热度和权重计算目标结果;
[0022] 迀移单元,用于当目标结果满足预设条件时,迀移目标数据至第二存储层级。
[0023] 结合第二方面,在第一种可能的实现方式中,访问热度为写访问热度,权重为根据 数据保护机制对应的写放大系数确定的写访问热度的第一权重,写访问热度为目标数据在 第一存储层级的写访问次数或者单位时间内目标数据在第一存储层级的写访问次数,写放 大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标数据的存 储介质的访问次数。
[0024] 结合第二方面,在第二种可能的实现方式中,访问热度包括写访问热度和读访问 热度,权重包括根据数据保护机制对应的写放大系数确定的写访问热度的第一权重和根据 数据保护机制对应的读放大系数确定的读访问热度的第二权重;
[0025] 其中,写访问热度为目标数据在第一存储层级的写访问次数,读访问热度为目标 数据在第一存储层级的读访问次数;或者,写访问热度为单位时间内目标数据在第一存储 层级的写访问次数,读访问热度为单位时间内目标数据在第一存储层级的读访问次数;写 放大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标数据的 存储介质的访问次数,读放大系数是指对目标数据的逻辑地址进行一次读访问时所实际产 生的对存储目标数据的存储介质的访问次数。
[0026] 结合第二方面,第二方面的第一种可能的实现方式或第二种可能的实现方式,在 第三种可能的实现方式中,当预设条件为大于第一阈值时,第二存储层级中的存储介质的 性能优于第一存储层级中的存储介质的性能;或者,当预设条件为小于第二阈值时,第一存 储层级中的存储介质的性能优于第二存储层级中的存储介质的性能,第一阈值大于第二阈 值。
[0027] 结合第二方面的第二种可能的实现方式,在第四种可能的实现方式中,第一权重 为写放大系数,第二权重为读放大系数;或者,第一权重为第一数值,第二权重为第二数值, 第一数值与第二数值的比值和写放大系数与读放大系数的比值相同。
[0028] 结合第二方面,第二方面的第一种可能的实现方式至第四种可能的实现方式任一 种,在第五种可能的实现方式中,数据保护机制包括独立冗余磁盘阵列RAID级别或纠删码 EC〇
[0029] 第三方面,提供一种数据迀移装置,包括:存储器和处理器,存储器用于存储一组 代码,处理器根据该组代码执行以下动作:
[0030] 获取目标数据在第一存储层级的访问热度;
[0031] 根据第一存储层级的数据保护机制对应的放大系数确定权重,放大系数是指对目 标数据的逻辑地址进行一次访问时所实际产生的对存储目标数据的存储介质的访问次数, 存储介质属于第一存储层级;
[0032] 根据访问热度和权重计算目标结果;
[0033] 当目标结果满足预设条件时,迀移目标数据至第二存储层级。
[0034]结合第三方面,在第一种可能的实现方式中,访问热度为写访问热度,权重为根据 数据保护机制对应的写放大系数确定的写访问热度的第一权重,写访问热度为目标数据在 第一存储层级的写访问次数或者单位时间内目标数据在第一存储层级的写访问次数,写放 大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标
数据的存 储介质的访问次数。
[0035] 结合第三方面,在第二种可能的实现方式中,访问热度包括写访问热度和读访问 热度,权重包括根据数据保护机制对应的写放大系数确定的写访问热度的第一权重和根据 数据保护机制对应的读放大系数确定的读访问热度的第二权重;
[0036] 其中,写访问热度为目标数据在第一存储层级的写访问次数,读访问热度为目标 数据在第一存储层级的读访问次数;或者,写访问热度为单位时间内目标数据在第一存储 层级的写访问次数,读访问热度为单位时间内目标数据在第一存储层级的读访问次数;写 放大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标数据的 存储介质的访问次数,读放大系数是指对目标数据的逻辑地址进行一次读访问时所实际产 生的对存储目标数据的存储介质的访问次数。
[0037] 结合第三方面,第三方面的第一种可能的实现方式或第二种可能的实现方式,在 第三种可能的实现方式中,当预设条件为大于第一阈值时,第二存储层级中的存储介质的 性能优于第一存储层级中的存储介质的性能;或者,当预设条件为小于第二阈值时,第一存 储层级中的存储介质的性能优于第二存储层级中的存储介质的性能,第一阈值大于第二阈 值。
[0038] 结合第三方面的第二种可能的实现方式,在第四种可能的实现方式中,第一权重 为写放大系数,第二权重为读放大系数;或者,第一权重为第一数值,第二权重为第二数值, 第一数值与第二数值的比值和写放大系数与读放大系数的比值相同。
[0039]结合第三方面,第三方面的第一种可能的实现方式至第四种可能的实现方式任一 种,在第五种可能的实现方式中,数据保护机制包括独立冗余磁盘阵列RAID级别或纠删码 EC〇
[0040] 本发明实施例提供的方法及装置,根据存储目标数据的第一存储层级的数据保护 机制对应的放大系数确定权重,并根据权重和目标数据的访问热度计算目标结果,进而确 定是否迀移目标数据,因此,相比现有技术来说,目标结果可以更加真实的反应由于对目标 数据的逻辑地址进行访问所实际产生的对存储目标数据的存储介质的访问压力,根据目标 数据的目标结果和预设条件在适当的时候将目标数据迀移至第二存储层级,可以使得每个 存储层级承受与自身能力相适应的访问压力,防止由于对第一存储层级中的数据访问过多 而限制第一存储层级中的数据的存取速度。
【附图说明】
[0041] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述 中所需要使用的附图作简单地介绍。
[0042] 图1为本发明实施例提供的一种分级存储系统与外部设备连接示意图;
[0043] 图2为本发明实施例提供的一种存储模块中包括的存储层级的示意图;
[0044] 图3为本发明实施例提供的一种数据迀移的方法的流程图;
[0045] 图4为本发明实施例提供的又一种数据迀移的方法的流程图;
[0046] 图5为本发明实施例提供的一种数据迀移装置的结构示意图;
[0047] 图6为本发明实施例提供的又一种数据迀移装置的结构示意图。
【具体实施方式】
[0048] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描 述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
[0049] 本发明实施例中提供的方法至少可以应用在分级存储系统中,如图1所示,分级存 储系统中包括一个或多个网络节点,一个网络节点可以由一个或多个服务器组成,各个网 络节点通过低延迟、高吞吐量的网络相连,该网络具体可以为光纤通道(Fibre Channel,简 称FC)或10G以太网(lOGigabit Ethernet)等,每个网络节点与存储模块连接。外部设备可 以通过与分级存储系统之间的接口读写分级存储系统中存储的数据。其中,如图1所示,存 储模块内包括多个存储介质,本发明中的存储介质是指存储数据的载体,比如软盘、光盘或 硬盘等。如图2所示,存储介质被划分为不同的存储层级,存储模块包括多个存储层级,分别 为存储层级1至存储层级N(N2 1,N为整数),级别越高的存储层级中的存储介质的性能越高 (图2中存储层级1的级别最尚)。
[0050] 本发明实施例提供一种数据迀移的方法,如图3所示,包括:
[0051] 301、获取目标数据在第一存储层级的访问热度。
[0052] 本发明实施例中的执行主体可以为分级存储系统中的集中控制器,集中控制器可 以为分级存储系统中的一个具备集中控制功能的网络节点。需要说明的是,图1中所示的存 储模块和网络节点也可以置于同一设备中。
[0053] 具体的,目标数据可以为第一存储层级中存储的任意一个数据,获取目标数据的 访问热度的方法可以参见现有技术。
[0054] 302、根据所述第一存储层级的数据保护机制对应的放大系数确定权重。
[0055] 其中,所述放大系数是指对所述目标数据的逻辑地址进行一次访问时所实际产生 的对存储所述目标数据的存储介质的访问次数,所述存储介质属于所述第一存储层级。
[0056] 具体的,上述数据保护机制对应的放大系数包括写放大系数和读放大系数,写放 大系数是指对目标数据的逻辑地址进行一次写访问时所实际产生的对存储目标数据的存 储介质的访问次数,读放大系数是指对目标数据的逻辑地址进行一次读访问时所实际产生 的对存储目标数据的存储介质的访问次数,其中所述的对存储目标数据的存储介质的访问 次数是指对存储目标数据的存储介质的读访问次数和写访问次数之和。
[0057]其中,上述访问热度可以仅包含读访问热度或写访问热度,也可以包含读访问热 度和写访问热度,不同情况下确定的权重如下:
[0058]情况一:访问热度为写访问热度,权重为根据数据保护机制对应的写放大系数确 定的写访问热度的第一权重,写访问热度为目标数据在第一存储层级的写访问次数或者单 位时间内目标数据在第一存储层级的写访问次数。
[0059] 情况二:访问热度包括写访问热度和读访问热度,权重包括根据数据保护机制对 应的写放大系数确定的写访问热度的第一权重和根据数据保护机制对应的读放大系数确 定的读访问热度的第二权重;
[0060] 其中,写访问热度为目标数据在第一存储层级的写访问次数,读访问热度为目标 数据在第一存储层级的读访问次数;或者,写访问热度为单位时间内目标数据在第一存储 层级的写访问次数,读访问热度为单位时间内目标数据在第一存储层级的读访问次数。
[0061] 情况三:访问热度为读访问热度,权重为根据数据保护机制对应的读放大系数确 定的读访问热度的第二权重,读访问热度为目标数据在第一存储层级的读访问次数或者单 位时间内目标数据在第一存储层级的读访问次数。
[0062] 其中,单位时间可以为1分钟或1小时等,也可以为其他的预设时间段。
[0063]需要说明的是,当写放大系数越大时,第一权重越大,当读放大系数越大时,第二 权重越大。
[0064] 可选的,所述数据保护机制包括RAID级别或纠删码(erasure coding,简称EC)。 [0065]其中,以数据保护机制为RAID级别为例,写放大是由于RAID写惩罚造成的,示例性 的,当对一个RAID级别为RAID5的存储层级中的数据进行一次写操作时,需要对该数据的逻 辑地址进行一次写访问,而该次写访问将实际产生两个对存储该数据的存储介质的读操作 和两个对该存储介质的写操作,具体为从该存储介质中读旧的数据和数据校验信息,向该 存储介质中写新的数据和数据校验信息,由此可知,RAID5对应的写放大系数为4,当对该数 据进行一次读操作时,需要对该数据的逻辑地址进行一次读访问,该次读访问将实际产生 一个对存储该数据的存储介质的读操作,由此可知,RAID5对应的读放大系数为1。
[0066] 具体的,本发明实施例中通过表1示出了部分RAID级别对应的写放大系数和读放 大系数。
[0067] 表 1
[0069] 303、根据所述访问热度和所述权重计算目标结果。
[0070] 针对上述情况一,目标结果=第一权重X写访问热度。该情况下,第一权重可以为 RAID级别对应的写放大系数,也可以为小于该写放大系数、且大于1的其他数值。
[0071] 针对上述情况二,目标结果=第一权重X写访问热度+第二权重X读访问热度。该 情况下,第一权重为写放大系数,第二权重为读放大系数;或者,第一权重为第一数值,第二 权重为第二数值,第一数值与第二数值的比值和写放大系数与读放大系数的比值相同;或 者,第一权重为小于或等于写放大系数、且大于1的其他数值,第二权重为1。
[0072] 示例性的,在
确定第一权重及第二权重时,以RAID级别为RAID5为例,第一权重可 以为4,第二权重为1,或者,第一权重可以为0.8,第二权重为0.2。
[0073]针对上述情况三,目标结果=第二权重X读访问热度。该情况下,第二权重可以为 读放大系数。
[0074] 304、当所述目标结果满足预设条件时,迀移所述目标数据至第二存储层级。
[0075] 需要说明的是,第一存储层级与第二存储层级可以为连续的存储层级,也可以为 不连续的存储层级。
[0076] 可选的,当所述预设条件为大于第一阈值时,所述第二存储层级中的存储介质的 性能优于所述第一存储层级中的存储介质的性能;或者,当所述预设条件为小于第二阈值 时,所述第一存储层级中的存储介质的性能优于所述第二存储层级中的存储介质的性能, 所述第一阈值大于所述第二阈值。
[0077]需要说明的是,存储层级中的存储介质的性能更好的存储层级能够承受的访问压 力也越大,因此,当目标结果大于第一阈值时,可以将目标数据迀移至存储介质的性能更好 的存储层级中。当目标结果小于第二阈值时,说明目标数据的访问热度也不高,因此,可以 将目标数据迀移至存储介质的性能较低的存储层级中。
[0078] 具体的,在上述方法中,第一存储层级可以为全部存储层级中的任意一个存储层 级。
[0079] 以图2为例,第一存储层级可以为存储层级2。该情况下,第一阈值可以为存储层级 1与存储层级2之间迀移数据时的阈值,第二阈值可以为存储层级2与存储层级3之间迀移数 据时的阈值。具体的,本发明实施例中提供的一种确定第一阈值和第二阈值的方法如下:
[0080] 每隔预设时间段,计算所有存储层级中的所有数据的目标结果,并按由大至小的 顺序对所有的目标结果进行排序,根据存储层级1的容量,从排序结果中选出前X(X2l,X为 整数)个数据所组成的一个或多个数据块,并将该一个或多个数据块存储在存储层级1中, 该前X个数据占用的存储空间与存储层级1的容量相同或相近;根据存储层级2的容量,从排 序结果中选出第X+1至第Y(Y2X+1,Y为整数)个数据所组成的一个或多个数据块,并将该一 个或多个数据块存储在存储层级2中,该第Χ+1至第Υ个数据占用的存储空间与存储层级2的 容量相同或相近;将排序结果中的第Υ个数据之后的数据存储在存储层级3中(本实施例中 假设所有的数据占用的空间小于存储层级1、存储层级2和存储层级3的容量之和)。具体的, 将排序结果中的第X个数据的目标结果确定为第一阈值,将排序结果中的第Υ个数据的目标 结果确定为第二阈值。当然,还可以通过其他的方法确定第一阈值和第二阈值,本发明实施 例只是示例性的提供了一种方法。
[0081] 示例性的,在一种应用场景下,若第一阈值为400,第二阈值为100,该情况下,当目 标结果大于400时,将目标数据迀移至存储层级1,当目标数据小于100时,将目标数据迀移 至存储层级3。需要说明的是,当目标结果等于400时,可以将目标数据迀移至存储层级1,也 可以不迀移;当目标结果等于100时,可以将目标数据迀移至存储层级3,也可以不迀移。
[0082] 以图2为例,需要说明的是,若存储模块中包括5个存储层级时,第一存储层级可以 为存储层级3,该情况下,第一阈值可以为存储层级1与存储层级2之间迀移数据时的阈值, 第二阈值可以为存储层级4与存储层级5之间迀移数据时的阈值。具体的,确定存储层级之 间的迀移数据时的阈值的方法可以参见上述实施例。
[0083] 具体的,集中控制器可以周期性的执行上述方法,也可以在满足特定条件的情况 下执行上述方法,特定条件可以根据实际应用场景确定,本发明实施例对此不做具体限定。
[0084] 本发明实施例提供的方法,根据存储目标数据的第一存储层级的数据保护机制对 应的放大系数确定权重,并根据权重和目标数据的访问热度计算目标结果,进而确定是否 迀移目标数据,因此,相比现有技术来说,目标结果可以更加真实的反应由于对目标数据的 逻辑地址进行访问所实际产生的对存储目标数据的存储介质的访问压力,根据目标数据的 目标结果和预设条件在适当的时候将目标数据迀移至第二存储层级,可以使得每个存储层 级承受与自身能力相适应的访问压力,防止由于对第一存储层级中的数据访问过多而限制 第一存储层级中的数据的存取速度。
[0085] 本发明实施例还提供一种数据迀移的方法,用于对上述实施例提供的数据迀移方 法作示例性说明,该实施例中以第一存储层级为上述存储层级2、第一阈值为上述存储层级 1与上述存储层级2之间迀移数据时的阈值,第二阈值为上述存储层级2与上述存储层级3之 间迀移数据时的阈值为例,如图4所示,该方法包括:
[0086] 401、获取目标数据在存储层级2的写访问热度和读访问热度。
[0087] 其中,目标数据存储在存储层级2中的存储介质中。
[0088] 其中,写访问热度为目标数据在存储层级2的写访问次数,读访问热度为目标数据 在存储层级2的读访问次数;或者,写访问热度为单位时间内目标数据在存储层级2的写访 问次数,读访问热度为单位时间内目标数据在存储层级2的读访问次数。
[0089] 本发明实施例中的相关解释可以参见上述实施例。
[0090] 402、根据存储层级2的RAID级别对应的写放大系数确定第一权重,根据该RAID级 别对应的读放大系数确定第二权重。
[0091] 具体的,第一权重为存储层级2的RAID级别对应的写放大系数,第二权重为该RAID 级别对应的读放大系数;或者,第一权重为第一数值,第二权重为第二数值,第一数值与第 二数值的比值和存储层级2的RAID级别对应的写放大系数与该RAID级别对应的读放大系数 的比值相同。
[0092] 403、根据"目标结果=第一权重X写访问热度+第二权重X读访问热度"计算目标 结果。
[0093] 404、将目标结果与第一阈值和第二阈值进行比较,当目标结果大于第一阈值时, 将目标数据迀移至存储层级1,或者,当目标结果小于第二阈值时,将目标数据迀移至存储 层级3。
[0094] 需要说明的是,当目标结果小于第一阈值并且大于第二阈值时,不迀移目标数据。
[0095] 示例性的,以图2为例,存储层级1的级别高于存储层级2的级别,存储层级2的级别 高于存储层级3的级别,当目标数据原本存储在存储层级2中的存储介质中时,根据上述方 法计算得到的目标结果大于第一阈值时,可以将该目标数据迀移至存储层级1,当该目标结 果小于第二阈值时,可以将该目标数据迀移至存储层级3。
[0096] 本发明实施例提供的方法,根据存储数据的存储层级的RAID级别对应的写放大系 数确定第一权重,根据该存储层级的RAID级别对应的读放大系数确定第二权重,并根据第 一权重、写访问热度、第二权重和读访问热度计算目标结果,第一权重为写访问热度的权 重,第二权重为读访问热度的权重,因此,相比现有技术来说,目标结果可以更加真实的反 应由于对该数据进行写操作和读操作所实际产生的对存储该数据的存储介质的访问压力, 由于存储层级中的存储介质的性能更好的存储层级能够承受的访问压力也越大,因此,当 数据的目标结果大于第一阈值时,可以将该数据迀移至存储介质的性能更好的存储层级 中,当数据的目标结果小于第二阈值时,可以将该数据迀移至存储介质的性能较低的存储 层级中,使得存储层级承受与自身能力相适应的访问压力,防止由于对第一存储层级中的 数据访问过多而限制第一存储层级中的数据的存取速度。
[0097]本发明实施例还提供一种数据迀移装置50,用于执行上述方法,如图5所示,该装 置50包括:
[0098]获取单元501,用于获取目标数据在第一存储层级的访问热度;
[0099]确定单元502,用于根据所述第一存储层级的数据保护机制对应的放大系数确定 权重,所述放大系数是指对所述目标数据的逻辑地址进行一次访问时所实际产生的对存储 所述目标数据的存储介质的访问次数,所述存储介质属于所述第一存储层级;
[0100]计算单元503,用于根据所述访问热度和所述权重计算目标结果;
[0101 ]迀移单元504,用于当所述目标结果满足预设条件时,迀移所述目标数据至第二存 储层级。
[0102]可选的,所述访问热度为写访问热度,所述权重为根据所述数据保护机制对应的 写放大系数确定的所述写访问热度的第一权重,所述写访问热度为所述目标数据在所述第 一存储层级的写访问次数或者单位时间内所述目标数据在所述第一存储层级的写访问次 数。
[0103] 可选的,所述访问热度包括写访问热度和读访问热度,所述权重包括根据所述数 据保护机制对应的写放大系数确定的所述写访问热度的第一权重和根据所述数据保
护机 制对应的读放大系数确定的所述读访问热度的第二权重;
[0104] 其中,所述写访问热度为所述目标数据在所述第一存储层级的写访问次数,所述 读访问热度为所述目标数据在所述第一存储层级的读访问次数;或者,所述写访问热度为 单位时间内所述目标数据在所述第一存储层级的写访问次数,所述读访问热度为单位时间 内所述目标数据在所述第一存储层级的读访问次数。
[0105] 可选的,当所述预设条件为大于第一阈值时,所述第二存储层级中的存储介质的 性能优于所述第一存储层级中的存储介质的性能;或者,当所述预设条件为小于第二阈值 时,所述第一存储层级中的存储介质的性能优于所述第二存储层级中的存储介质的性能, 所述第一阈值大于所述第二阈值。
[0106] 可选的,所述第一权重为所述写放大系数,所述第二权重为所述读放大系数;或 者,所述第一权重为第一数值,所述第二权重为第二数值,所述第一数值与所述第二数值的 比值和所述写放大系数与所述读放大系数的比值相同。
[0107] 可选的,所述计算单元503,具体用于:
[0108] 将所述第一权重与所述写访问热度相乘得到第一结果;
[0109] 将所述第二权重与所述读访问热度相乘得到第二结果;
[0110] 将所述第一结果与所述第二结果相加得到目标结果。
[0111]可选的,所述访问热度为读访问热度,所述权重为根据所述数据保护机制对应的 读放大系数确定的所述读访问热度的第二权重,所述读访问热度为所述目标数据在所述第 一存储层级的读访问次数或者单位时间内所述目标数据在所述第一存储层级的读访问次 数。
[0112]可选的,所述数据保护机制包括RAID级别或EC。
[0113] 本发明实施例提供的装置,根据存储目标数据的第一存储层级的数据保护机制对 应的放大系数确定权重,并根据权重和目标数据的访问热度计算目标结果,进而确定是否 迀移目标数据,因此,相比现有技术来说,目标结果可以更加真实的反应由于对目标数据的 逻辑地址进行访问所实际产生的对存储目标数据的存储介质的访问压力,根据目标数据的 目标结果和预设条件在适当的时候将目标数据迀移至第二存储层级,可以使得每个存储层 级承受与自身能力相适应的访问压力,防止由于对第一存储层级中的数据访问过多而限制 第一存储层级中的数据的存取速度。
[0114] 在硬件实现上,数据迀移装置50中的各个单元可以以硬件形式内嵌于或独立于数 据迀移装置50的处理器中,也可以以软件形式存储于数据迀移装置50的存储器中,以便于 处理器调用执行以上各个单元对应的操作,该处理器可以为中央处理器(Central Processing Unit,简称CPU)、特定集成电路(Application Specific Integrated Circuit,简称ASIC)或者是被配置成实施本发明实施例的一个或多个集成电路。
[0115] 本发明实施例还提供一种数据迀移装置60,用于执行上述方法,如图6所示,该装 置60包括:存储器601和处理器602,其中,存储器601用于存储一组代码,处理器602根据该 组代码执行以下动作:
[0116] 获取目标数据在第一存储层级的访问热度;
[0117] 根据所述第一存储层级的数据保护机制对应的放大系数确定权重,所述放大系数 是指对所述目标数据的逻辑地址进行一次访问时所实际产生的对存储所述目标数据的存 储介质的访问次数,所述存储介质属于所述第一存储层级;
[0118] 根据所述访问热度和所述权重计算目标结果;
[0119] 当所述目标结果满足预设条件时,迀移所述目标数据至第二存储层级。
[0120] 可选的,所述访问热度为写访问热度,所述权重为根据所述数据保护机制对应的 写放大系数确定的所述写访问热度的第一权重,所述写访问热度为所述目标数据在所述第 一存储层级的写访问次数或者单位时间内所述目标数据在所述第一存储层级的写访问次 数。
[0121] 可选的,所述访问热度包括写访问热度和读访问热度,所述权重包括根据所述数 据保护机制对应的写放大系数确定的所述写访问热度的第一权重和根据所述数据保护机 制对应的读放大系数确定的所述读访问热度的第二权重;
[0122] 其中,所述写访问热度为所述目标数据在所述第一存储层级的写访问次数,所述 读访问热度为所述目标数据在所述第一存储层级的读访问次数;或者,所述写访问热度为 单位时间内所述目标数据在所述第一存储层级的写访问次数,所述读访问热度为单位时间 内所述目标数据在所述第一存储层级的读访问次数。
[0123] 可选的,当所述预设条件为大于第一阈值时,所述第二存储层级中的存储介质的 性能优于所述第一存储层级中的存储介质的性能;或者,当所述预设条件为小于第二阈值 时,所述第一存储层级中的存储介质的性能优于所述第二存储层级中的存储介质的性能, 所述第一阈值大于所述第二阈值。
[0124] 可选的,所述第一权重为所述写放大系数,所述第二权重为所述读放大系数;或 者,所述第一权重为第一数值,所述第二权重为第二数值,所述第一数值与所述第二数值的 比值和所述写放大系数与所述读放大系数的比值相同。
[0125] 可选的,处理器602具体用于:
[0126] 将所述第一权重与所述写访问热度相乘得到第一结果;
[0127] 将所述第二权重与所述读访问热度相乘得到第二结果;
[0128] 将所述第一结果与所述第二结果相加得到目标结果。
[0129] 可选的,所述访问热度为读访问热度,所述权重为根据所述数据保护机制对应的 读放大系数确定的所述读访问热度的第二权重,所述读访问热度为所述目标数据在所述第 一存储层级的读访问次数或者单位时间内所述目标数据在所述第一存储层级的读访问次 数。
[0130]可选的,所述数据保护机制包括RAID级别或EC。
[0131]本发明实施例提供的装置,根据存储目标数据的第一存储层级的数据保护机制对 应的放大系数确定权重,并根据权重和目标数据的访问热度计算目标结果,进而确定是否 迀移目标数据,因此,相比现有技术来说,目标结果可以更加真实的反应由于对目标数据的 逻辑地址进行访问所实际产生的对存储目标数据的存储介质的访问压力,根据目标数据的 目标结果和预设条件在适当的时候将目标数据迀移至第二存储层级,可以使得每个存储层 级承受与自身能力相适应的访问压力,防止由于对第一存储层级中的数据访问过多而限制 第一存储层级中的数据的存取速度。
[0132] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其 它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅 仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结 合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
[0133] 所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显 示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个 网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目 的。
[0134] 另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以 两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也 可以采用硬件加软件功能模块的形式实现。
[0135] 上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存 储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机 设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部 分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称 ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储 程序代码的介质。
【主权项】
1. 一种数据迀移的方法,其特征在于,包括: 获取目标数据在第一存储层级的访问热度; 根据所述第一存储层级的数据保护机制对应的放大系数确定权重,所述放大系数是指 对所述目标数据的逻辑地址进行一次访问时所实际产生的对存储所述目标数据的存储介 质的访问次数,所述存储介质属于所述第一存储层级; 根据所述访问热度和所述权重计算目标结果; 当所述目标结果满足预设条件时,迀移所述目标数据至第二存储层级。2. 根据权利要求1所述的方法,其特征在于,所述访问热度为写访问热度,所述权重为 根据所述数据保护机制对应的写放大系数确定的所述写访问热度的第一权重,所述写访问 热度为所述目标数
据在所述第一存储层级的写访问次数或者单位时间内所述目标数据在 所述第一存储层级的写访问次数。3. 根据权利要求1所述的方法,其特征在于,所述访问热度包括写访问热度和读访问热 度,所述权重包括根据所述数据保护机制对应的写放大系数确定的所述写访问热度的第一 权重和根据所述数据保护机制对应的读放大系数确定的所述读访问热度的第二权重; 其中,所述写访问热度为所述目标数据在所述第一存储层级的写访问次数,所述读访 问热度为所述目标数据在所述第一存储层级的读访问次数;或者,所述写访问热度为单位 时间内所述目标数据在所述第一存储层级的写访问次数,所述读访问热度为单位时间内所 述目标数据在所述第一存储层级的读访问次数。4. 根据权利要求1-3任一项所述的方法,其特征在于,当所述预设条件为大于第一阈值 时,所述第二存储层级中的存储介质的性能优于所述第一存储层级中的存储介质的性能; 或者,当所述预设条件为小于第二阈值时,所述第一存储层级中的存储介质的性能优于所 述第二存储层级中的存储介质的性能,所述第一阈值大于所述第二阈值。5. 根据权利要求3所述的方法,其特征在于,所述第一权重为所述写放大系数,所述第 二权重为所述读放大系数;或者,所述第一权重为第一数值,所述第二权重为第二数值,所 述第一数值与所述第二数值的比值和所述写放大系数与所述读放大系数的比值相同。6. 根据权利要求5所述的方法,其特征在于,所述根据所述访问热度和所述权重计算目 标结果,包括: 将所述第一权重与所述写访问热度相乘得到第一结果; 将所述第二权重与所述读访问热度相乘得到第二结果; 将所述第一结果与所述第二结果相加得到目标结果。7. 根据权利要求1所述的方法,其特征在于,所述访问热度为读访问热度,所述权重为 根据所述数据保护机制对应的读放大系数确定的所述读访问热度的第二权重,所述读访问 热度为所述目标数据在所述第一存储层级的读访问次数或者单位时间内所述目标数据在 所述第一存储层级的读访问次数。8. 根据权利要求1-7任一项所述的方法,其特征在于,所述数据保护机制包括独立冗余 磁盘阵列RAID级别或纠删码EC。9. 一种数据迀移装置,其特征在于,包括: 获取单元,用于获取目标数据在第一存储层级的访问热度; 确定单元,用于根据所述第一存储层级的数据保护机制对应的放大系数确定权重,所 述放大系数是指对所述目标数据的逻辑地址进行一次访问时所实际产生的对存储所述目 标数据的存储介质的访问次数,所述存储介质属于所述第一存储层级; 计算单元,用于根据所述访问热度和所述权重计算目标结果; 迀移单元,用于当所述目标结果满足预设条件时,迀移所述目标数据至第二存储层级。10. 根据权利要求9所述的装置,其特征在于,所述访问热度为写访问热度,所述权重为 根据所述数据保护机制对应的写放大系数确定的所述写访问热度的第一权重,所述写访问 热度为所述目标数据在所述第一存储层级的写访问次数或者单位时间内所述目标数据在 所述第一存储层级的写访问次数。11. 根据权利要求9所述的装置,其特征在于,所述访问热度包括写访问热度和读访问 热度,所述权重包括根据所述数据保护机制对应的写放大系数确定的所述写访问热度的第 一权重和根据所述数据保护机制对应的读放大系数确定的所述读访问热度的第二权重; 其中,所述写访问热度为所述目标数据在所述第一存储层级的写访问次数,所述读访 问热度为所述目标数据在所述第一存储层级的读访问次数;或者,所述写访问热度为单位 时间内所述目标数据在所述第一存储层级的写访问次数,所述读访问热度为单位时间内所 述目标数据在所述第一存储层级的读访问次数。12. 根据权利要求9-11任一项所述的装置,其特征在于,当所述预设条件为大于第一阈 值时,所述第二存储层级中的存储介质的性能优于所述第一存储层级中的存储介质的性 能;或者,当所述预设条件为小于第二阈值时,所述第一存储层级中的存储介质的性能优于 所述第二存储层级中的存储介质的性能,所述第一阈值大于所述第二阈值。13. 根据权利要求11所述的装置,其特征在于,所述第一权重为所述写放大系数,所述 第二权重为所述读放大系数;或者,所述第一权重为第一数值,所述第二权重为第二数值, 所述第一数值与所述第二数值的比值和所述写放大系数与所述读放大系数的比值相同。14. 根据权利要求13所述的装置,其特征在于,所述计算单元,具体用于: 将所述第一权重与所述写访问热度相乘得到第一结果; 将所述第二权重与所述读访问热度相乘得到第二结果; 将所述第一结果与所述第二结果相加得到目标结果。15. 根据权利要求9所述的装置,其特征在于,所述访问热度为读访问热度,所述权重为 根据所述数据保护机制对应的读放大系数确定的所述读访问热度的第二权重,所述读访问 热度为所述目标数据在所述第一存储层级的读访问次数或者单位时间内所述目标数据在 所述第一存储层级的读访问次数。16. 根据权利要求9-15任一项所述的装置,其特征在于,所述数据保护机制包括独立冗 余磁盘阵列RAID级别或纠删码EC。17. -种数据迀移装置,其特征在于,包括:存储器和处理器,所述存储器用于存储一组 代码,所述处理器根据该组代码执行以下动作: 获取目标数据在第一存储层级的访问热度; 根据所述第一存储层级的数据保护机制对应的放大系数确定权重,所述放大系数是指 对所述目标数据的逻辑地址进行一次访问时所实际产生的对存储所述目标数据的存储介 质的访问次数,所述存储介质属于所述第一存储层级; 根据所述访问热度和所述权重计算目标结果; 当所述目标结果满足预设条件时,迀移所述目标数据至第二存储层级。18. 根据权利要求17所述的装置,其特征在于,所述访问热度为写访问热度,所述权重 为根据所述数据保护机制对应的写放大系数确定的所述写访问热度的第一权重,所述写访 问热度为所述目标数据在所述第一存储层级的写访问次数或者单位时间内所述目标数据 在所述第一存储层级的写访问次数。19. 根据权利要求17所述的装置,其特征在于,所述访问热度包括写访问热度和读访问 热度,所述权重包括根据所述数据保护机制对应的写放大系数确定的所述写访问热度的第 一权重和根据所述数据保护机制对应的读放大系数确定的所述读访问热度的第二权重; 其中,所述写访问热度为所述目标数据在所述第一存储层级的写访问次数,所述读访 问热度为所述目标数据在所述第一存储层级的读访问次数;或者,所述写访问热度为单位 时间内所述目标数据在所述第一存储层级的写访问次数,所述读访问热度为单位时间内所 述目标数据在所述第一存储层级的读访问次数。20. 根据权利要求17-19任一项所述的装置,其特征在于,当所述预设条件为大于第一 阈值时,所述第二存储层级中的存储介质的性能优于所述第一存储层级中的存储介质的性 能;或者,当所述预设条件为小于第二阈值时,所述第一存储层级中的存储介质的性能优于 所述第二存储层级中的存储介质的性能,所述第一阈值大于所述第二阈值。21. 根据权利要求19所述的装置,其特征在于,所述第一权重为所述写放大系数,所述 第二权重为所述读放大系数;或者,所述第一权重为第一数值,所述第二权重为第二数值, 所述第一数值与所述第二数值的比值和所述写放大系数与所述读放大系数的比值相同。22. 根据权利要求21所述的装置,其特征在于,所述处理器具体用于: 将所述第一权重与所述写访问热度相乘得到第一结果; 将所述第二权重与所述读访问热度相乘得到第二结果; 将所述第一结果与所述第二结果相加得到目标结果。23. 根据权利要求17所述的装置,其特征在于,所述访问热度为读访问热度,所述权重 为根据所述数据保护机制对应的读放大系数确定的所述读访问热度的第二权重,所述读访 问热度为所述目标数据在所述第一存储层级的读访问次数或者单位时间内所述目标数据 在所述第一存储层级的读访问次数。24. 根据权利要求17-23任一项所述的装置,其特征在于,所述数据保护机制包括独立 冗余磁盘阵列RAID级别或纠删码EC。
【专利摘要】本发明实施例公开了一种数据迁移的方法及装置,涉及计算机技术领域,用于提高存储层级中的数据的存取速度。该方法包括:获取目标数据在第一存储层级的访问热度;根据所述第一存储层级的数据保护机制对应的放大系数确定权重,所述放大系数是指对所述目标数据的逻辑地址进行一次访问时所实际产生的对存储所述目标数据的存储介质的访问次数,所述存储介质属于所述第一存储层级;根据所述访问热度和所述权重计算目标结果;当所述目标结果满足预设条件时,迁移所述目标数据至第二存储层级。该方法用于对属于不同存储层级中的数据进行迁移。
【IPC分类】G06F3/06
【公开号】CN105487823
【申请号】CN201510887513
【发明人】林春恭, 熊艳辉
【申请人】华为技术有限公司
【公开日】2016年4月13日
【申请日】2015年12月4日