CN104951242B - 用于在存储阵列之间自动重定位数据的方法和装置 - Google Patents
用于在存储阵列之间自动重定位数据的方法和装置 Download PDFInfo
- Publication number
- CN104951242B CN104951242B CN201410135582.4A CN201410135582A CN104951242B CN 104951242 B CN104951242 B CN 104951242B CN 201410135582 A CN201410135582 A CN 201410135582A CN 104951242 B CN104951242 B CN 104951242B
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- storage device
- moving projection
- array
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3037—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0626—Reducing size or complexity of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
Abstract
本发明的实施例公开了用于对多个存储阵列中的数据进行自动重定位的方法和装置。该方法可以包括获取多个存储阵列中包括的多个存储设备的特征信息,其中该多个存储设备基于该特征信息被分组到多个存储层中;获取该多个存储设备的位置信息,该位置信息包括相应的存储设备所位于的存储层和存储阵列;监测该多个存储设备中存储的数据的访问状态;以及基于该访问状态、该特征信息和该位置信息,自动生成数据移动计划,该数据移动计划指示数据将要被移动到的目标位置。根据本发明的实施例,数据可以自动在不同存储层之间、跨不同存储阵列移动,而不限于在某个存储阵列中。
Description
技术领域
本发明的实施例涉及数据存储技术领域,并且更具体地,涉及存储阵列之间的数据自动重定位。
背景技术
基于性能、成本、容量等特征,存储设备可以包括固态盘(SSD)、光纤通道(FC)盘、串行高级技术附件(SATA)盘或者串行连接小型计算机系统接口(SCSI)(SAS)盘等。在这些存储设备中,SSD的输入/输出(I/O)延迟最小,价格相对比较昂贵,而SATA盘的I/O性能差些,但是价格相对低廉。
鉴于存储设备的上述特征,可能希望访问率高的、活跃的数据例如日志数据存储在较高性能的存储设备例如SSD上,而访问率低、不活跃的数据存储在较低性能的存储设备例如SATA盘上。所谓的存储分层技术就是基于上述思想,即将数据存储在最适合的存储设备上。使用这种技术,可以在提高存储性能的同时降低总体拥有成本(TCO),从而满足不断增长的存储需求。
随着存储系统的规模逐渐增大,存储性能和TCO问题也越来越突出。例如,一个存储系统可能包括若干存储阵列,并且每个存储阵列可能包括若干存储设备。如果将数据全部或大部分存储在I/O性能好的存储设备上,那么虽然能够为数据的访问提供很好的响应性能,但是访问率不高或者甚至几乎从不访问的数据将浪费成本很高的存储资源。相反,如果因为考虑到成本效率而使用大量的性能较差的存储设备,那么数据访问的响应性能显然很难令人满意。
在这种复杂的存储系统中,如果通过手动管理的方式来进行存储分层操作,例如通过手动方式将具有不同访问需求的数据在不同性能的存储设备之间迁移,则可能会因为数据量太大而非常费时,并且会耗费很多的人力资源。
因此,需要一种能够在包括多个存储阵列的复杂的存储系统中实现自动存储分层的解决方案。
发明内容
为了解决上述以及其他潜在问题,本发明的实施例提供了一种在包括多个存储阵列的复杂的存储系统中实现自动存储分层的解决方案。
根据本发明的第一方面,提供了一种用于对多个存储阵列中的数据进行自动重定位的方法,该多个存储阵列包括多个存储设备。该方法包括:获取多个存储设备的特征信息,其中该多个存储设备基于该特征信息被分组到多个存储层中,并且获取该多个存储设备的位置信息,该位置信息包括相应的存储设备所位于的存储层和存储阵列。该方法还包括:监测该多个存储设备中存储的数据的访问状态,并且基于该访问状态、该特征信息和该位置信息,自动生成数据移动计划,该数据移动计划指示数据将要被移动到的目标位置。
根据本发明的第二方面,提供了一种用于对多个存储阵列中的数据进行自动重定位的装置,该多个存储阵列包括多个存储设备。该装置包括:特征获取单元,被配置为获取该多个存储设备的特征信息,其中该多个存储设备基于该特征信息被分组到多个存储层中;以及位置获取单元,被配置为获取该多个存储设备的位置信息,该位置信息包括相应的存储设备所位于的存储层和存储阵列。该装置还包括:监测单元,被配置为监测该多个存储设备中存储的数据的访问状态;以及移动计划生成单元,被配置为基于该访问状态、该特征信息和该位置信息来自动生成数据移动计划,该数据移动计划指示数据将要被移动到的目标位置。
根据本发明的第三方面,提供了一种非瞬态计算机可读存储介质,该计算机可读存储介质具有存储于其中的计算机程序指令。该计算机程序指令在被执行时使机器执行根据本发明的第一方面的方法。
通过下文描述将会理解,根据本发明的实施例,数据可以自动在不同存储层之间、跨不同存储阵列移动,而不限于在某个存储阵列中,从而既实现了在提高存储性能的同时降低TCO,又避免了因手动分层操作而导致的时间和人力资源的巨大浪费。
附图说明
结合附图并参考以下详细说明,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1是根据本发明的实施例可以实施于其中的系统的示意图;
图2示出了根据本发明的一个实施例的用于对多个存储阵列中的数据进行自动重定位的方法的流程图;以及
图3示出了用于对多个存储阵列中的数据进行自动重定位的装置的框图。
具体实施例
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
通常而言,本文中使用的所有术语除非另外明确定义,否则应该按照其在本领域中的通常含义来理解。所有提到的“一/一个/该/所述元件、设备、部件、装置、单元、步骤等”应该被解释为上述元件、设备、部件、装置、单元、步骤等的至少一个实例,除非另外明确说明,否则不排除包括多个这种元件、设备、部件、装置、单元、步骤等。
下面结合附图以示例的方式详细描述本发明的各实施例。
首先参考图1,其示出了根据本发明的实施例可以实施于其中的系统100的示意图。
如图1所示,系统100可以包括存储系统101。该存储系统101可以包括多个存储阵列,其中每个存储阵列包括一个或多个存储设备。根据本发明的实施例,存储系统100中的存储设备可以具有不同的性能、成本、容量等特征的存储介质,例如可以是SSD、FC盘、SATA盘或者SAS盘等。
图1中的存储系统100可以包括存储管理设备102,该存储管理设备102被配置为对存储设备进行管理。
根据本发明的实施例,存储管理设备102可以根据存储阵列中包括的存储设备创建存储卷。一个存储卷可以对应于一个或多个存储设备,或者备选地一个存储卷可以对应于一个存储设备的一部分或者多个存储设备的多个部分。如果要创建对应于多个存储设备的多个部分的存储卷,则根据本发明的实施例,这些存储设备可以具有相似的特征,例如可以都是具有高性能的SSD。
根据本发明的实施例,存储管理设备102可以基于存储设备的特征将存储卷划分成多个存储池。根据本发明的实施例,与具有相同性能的存储设备相对应的存储卷可以被划分到同一个存储池中。例如,可以将与SSD所对应的存储卷划分到高性能存储池中,将FC盘所对应的存储卷划分到中等性能存储池中,将SATA盘所对应的存储卷划分到低性能存储池,诸如此类。
根据本发明的实施例,根据存储的服务级别需求,存储管理设备102可以从存储池中创建扩展区,然后将所创建的扩展区组合为虚拟存储卷,以供服务器使用。
这样,一个虚拟存储卷可以对应于不同存储阵列中的多个存储设备。这种虚拟化方式消除了不同存储设备之间物理界限,使得信息移动和访问不再受限于物理存储设备,而可以通过系统100在不同存储阵列中的不同存储设备之间进行。
根据本发明的实施例,存储管理设备102可以基于存储设备的特征信息,根据多个存储池来创建存储层。例如,将包括性能相同的存储设备的多个存储池组成存储层,或者备选地将该多个存储池的多个部分组成存储层,使得所组成的存储层也具有相同的性能。这使得存储层可以与存储设备的特征信息相对应,并且可以跨多个存储阵列分布,而不限于某个存储阵列中。
如图1所示的系统100还可以包括一个或多个服务器。如上所述,多个存储阵列上存储的数据可以经由存储管理设备102在多个服务器之间共享。
在下文某些描述中,将在图1所示的系统100的背景下讨论本发明的若干实施例。但是,需要注意的是,如本领域技术人员可以理解,这仅仅是出于清楚说明之目的,并非意在以任何方式限制本发明的范围。相反,本发明的实施例可以应用于先前已经存在和今后将要开发的包含存储阵列的存储系统可适用于的任何系统。
下面参考图2,其示出了根据本发明的一个实施例的用于对多个存储阵列中的数据进行自动重定位的方法200的流程图。
如图2所示,方法200开始之后,在步骤S201获取多个存储阵列中包括的多个存储设备的特征信息,其中该多个存储设备基于该特征信息被分组到多个存储层中。如上所述,该特征信息可以包括性能、成本、容量等信息。
根据本发明的一个实施例,存储设备可以按照如上参照系统100中的存储管理设备102所描述的方式,基于存储设备的特征信息被分组到多个存储层中。如上所述,这样的存储设备到存储层的分组过程使得存储层可以与存储设备的特征信息相对应,并且可以跨多个存储阵列分布,而不限于某个存储阵列中。但是,如本领域技术人员可以理解的,可以采用任何其他方式来执行存储设备基于存储设备的特征信息到存储层的分组过程,本发明的范围在此方面不受限制。
然后,在步骤S202中,获取多个存储阵列中包括的多个存储设备的位置信息,该位置信息包括相应的存储设备所位于的存储层和存储阵列。
接下来,在步骤S203,监测该多个存储设备中存储的数据的访问状态。根据本发明的实施例,访问可以包括I/O访问。
然后,在步骤S204中,基于数据的访问状态、存储设备的性能信息和存储设备的位置信息,自动生成数据移动计划,该数据移动计划指示数据将要被移动到的目标位置。
根据本发明的实施例,如果某个数据被频繁访问,则可以将该数据移动到性能更高的存储层中。因为存储层不限于某个存储阵列中,所以这种存储分层方式可以跨存储阵列自动进行,从而既实现了在提高存储性能的同时降低TCO,又避免了因手动分层操作而导致的时间和人力资源的巨大浪费。
根据本发明的一个实施例,可选地,在步骤S201中获取的存储设备的特征信息和在步骤S202中获取的存储设备的位置信息可以是由用户预设定的。
根据本发明的一个实施例,可选地,在步骤S204中数据移动计划所指示的目标位置可以包括目标存储层、目标存储阵列和目标存储设备,从而数据可以被移动到不同存储阵列的不同存储设备中。
在本发明的一个实施例中,上述在步骤S203中执行的监测多个存储阵列中包括的多个存储设备中存储的数据的访问状态的操作可以包括如下操作:监测对该多个存储设备中存储的特定数据的输入和/或输出请求,并且基于所监测的输入和/或输出请求,统计在预定时间段内对该特定数据的访问次数。根据本发明的实施例,可选地,该预定时间段可以由用户来设置,例如为24小时。然后,在步骤S204中,基于该特定数据的访问次数以及存储设备的特征信息和位置信息来自动生成关于该特定数据的数据移动计划。这样,I/O请求频繁的热点数据可以移动到性能更高的存储层中。
根据本发明的一个实施例,在步骤S204中生成数据移动计划的操作还可以基于用户预定义的策略来进行。
在本发明的一个实施例中,该策略可以例如包括多个存储阵列中的相应存储层中存储的数据量与多个存储阵列中存储的数据总量的阈值比率。例如,可选地,用户可以如下预定义阈值比率:高性能的存储层允许存储占数据总量20%的数据,中等性能的存储层允许存储占数据总量50%的数据,低性能的存储层允许存储占数据总量100%的数据。
在本发明的一个实施例中,如果数据将要被移动到的存储层中当前所存储的数据量与数据总量的比率已经达到或超过用户预定义的阈值比率,则不执行数据移动。可选地,在本发明的一个实施例中,可以生成指示将数据移动到其他存储层的新的数据移动计划。例如,可以指示将数据移动到性能相对差些的存储层中。
根据本发明的实施例,方法200还可以包括在数据根据数据移动计划被移动时,监测数据被移动到的目标存储层中已存储的数据量与多个存储阵列中存储的数据总量的比率,响应于该比率超过与目标存储层相对应的阈值比率,生成新的数据移动计划以指示将目标存储层中的至少一部分数据移动到其他存储层中。在本发明的一个实施例中,例如,可以将剩余数据移动到性能相对差些的存储层中。
在本发明的另一实施例中,在步骤S204中数据移动计划的生成所基于的用户预定义的策略还可以包括数据移动速率。这样就可以合理地控制和管理带宽的使用。
在本发明的又一实施例中,用户预定义的策略还可以包括优选的数据重定位时间。例如,可选地,用户可以预定义在数据读写业务相对不繁忙的时段例如在凌晨2:00执行数据重定位。相应地,数据移动可以基于用户预定义的优选时间来进行。但是,如本领域技术人员可以理解的,用户可以按照实际需求选择任意合适的数据重定位时间,本发明的范围在此方面不受限制。
根据本发明的实施例,图2所示的方法200还可以包括数据移动相关步骤(未示出)。
根据本发明的一个实施例,在方法200中,如果根据数据移动计划,数据要从第一存储阵列中的第一存储设备移动到第二存储阵列中的第二存储设备,则可以使数据直接从第一存储阵列中的第一存储设备向第二存储阵列中的第二存储设备移动。假设这两个存储阵列支持同一数据复制协议,并且它们之间存在连接路径,该路径可以是物理的直接连接路径,或者备选地可以是通过网络或交换机等的间接连接路径。
根据本发明的另一实施例,备选地,如果这两个存储阵列不支持同一数据复制协议,或者它们之间存在不存在直接的或间接的连接路径,则可以从第一存储阵列中的第一存储设备接收将要移动的数据,然后向第二存储阵列中的第二存储设备发送该数据。在这种情况下,根据本发明的实施例,为了减小数据移动所导致的额外开销,可以在预定时段并且以预定速率来执行数据移动。在本发明的实施例中,该预定时段和速率可以由用户预设定。
上面参考图2说明了根据本发明的实施例的在用于对多个存储阵列中的数据进行自动重定位的方法,现在参考图3说明能够执行上述方法200的装置。
图3示出了用于对多个存储阵列中的数据进行自动重定位的装置300的框图。
如图3所示的装置300包括特征获取单元301、位置获取单元302、监测单元303和移动计划生成单元304。在本发明的一个实施例中,特征获取单元301可以获取多个存储阵列中包括的多个存储设备的特征信息,其中该多个存储设备基于该特征信息被分组到多个存储层中。位置获取单元302可以获取该多个存储设备的位置信息,该位置信息包括相应的存储设备所位于的存储层和存储阵列。监测单元303可以监测该多个存储设备中存储的数据的访问状态。移动计划生成单元304可以基于该访问状态、该特征信息和该位置信息来自动生成数据移动计划,该数据移动计划指示数据将要被移动到的目标位置。
在本发明的一个实施例中,监测单元303还可以监测对多个存储阵列中包括的多个存储设备中存储的特定数据的输入和/或输出请求,并且基于所监测的输入和/或输出请求来统计在预定时间段内对该特定数据的访问次数。移动计划生成单元304还可以基于该访问次数以及存储设备的特征信息和位置信息来自动生成关于该特定数据的数据移动计划。
在本发明的一个实施例中,移动计划生成单元304还可以基于用户预定义的策略来生成数据移动计划。
在本发明的一个实施例中,用户预定义的策略可以包括多个存储阵列中的相应存储层中存储的数据量与多个存储阵列中存储的数据总量的阈值比率。监测单元303还可以在数据根据数据移动计划被移动时,监测数据正被移动到的目标存储层中已存储的数据量与该数据总量的比率。移动计划生成单元304还被配置为响应于该数据量与数据总量的比率超过与目标存储层相对应的阈值比率,生成新的数据移动计划以指示将目标存储层中的至少一部分数据移动到其他存储层。
在本发明的一个实施例中,装置300还可以包括数据移动单元305。数据移动单元305可以根据数据移动计划,使数据直接从第一存储阵列中的第一存储设备向第二存储阵列中的第二存储设备移动,或者备选地可以从第一存储阵列中的第一存储设备接收将要移动的数据,并且向第二存储阵列中的第二存储设备发送该数据。
根据本发明的实施例,如图3所示的装置300可以实施于如图1所示的存储管理设备102中。备选地,装置300也可以实现为与存储管理设备102分离的单独装置。本发明的范围在此方面不受限制。
应当理解,装置300中记载的每个单元分别与参考图2描述的方法200中的每个步骤相对应。因此,上文结合图2描述的操作和特征同样适用于装置300及其中包含的单元,并且具有同样的效果,具体细节不再赘述。
上面参考方法和装置的流程图和框图描述了本发明的示例性实施例。应当理解流程图和框图中的每个方框所代表的功能和/或装置可以借助于硬件来实现,例如集成电路(IC)、专用集成电路(ASIC)、通用集成电路、现场可编程门阵列(FPGA)等等。
备选地或附加地,也可以通过计算机程序指令来实现本发明的部分或者全部功能。例如,本发明的实施例包括非瞬态计算机可读存储介质,具有存储于其中的计算机程序指令,该计算机程序指令在被执行时使机器执行上文描述的方法200的步骤。这样的计算机可读存储介质可以包括诸如硬盘驱动器、软盘、磁带等的磁性存储介质、诸如光盘等的光存储介质以及诸如电可擦除可编程只读存储器(EEPROM)、只读存储器(ROM)、可编程只读存储器(PROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、固件、可编程逻辑等的易失性或非易失性存储器件。该计算机程序指令可以被加载到通用计算机、专用计算机或其他可编程数据处理装置中,以使得该指令在被该计算机或其他可编程数据处理装置执行时可以产生用于执行流程图的方框中所指定的功能的装置。该计算机程序指令可以通过一种或多种程序设计语言或其组合来编写。
尽管附图中以特定顺序描绘了操作,但是不应该被理解为,为了获得想要的结果,需要以所示的特定顺序或顺序地执行这些操作或者需要执行全部操作。在某些情况下,多任务或并行的处理可能是有益的。
已经出于示例的目的描述了本发明的各个实施例,但是本发明并不意图限于所公开的这些实施例。在不脱离本发明实质的前提下,所有修改和变型均落入由权利要求所限定的本发明的保护范围之内。
Claims (23)
1.一种用于对多个存储阵列中的数据进行自动重定位的方法,所述多个存储阵列包括多个存储设备,所述方法包括:
获取所述多个存储设备的特征信息,其中所述多个存储设备基于所述特征信息被分组到多个存储层中;
获取所述多个存储设备的位置信息,所述位置信息包括相应的存储设备所位于的存储层和存储阵列;
监测所述多个存储设备中存储的数据的访问状态;以及
基于所述访问状态、所述特征信息和所述位置信息,自动生成数据移动计划,所述数据移动计划指示数据将要被移动到的目标位置。
2.根据权利要求1所述的方法,还包括:
监测对所述多个存储设备中存储的特定数据的输入和/或输出请求;
基于所监测的输入和/或输出请求,统计在预定时间段内对所述特定数据的访问次数;
基于所述访问次数以及所述特征信息和所述位置信息来自动生成关于所述特定数据的所述数据移动计划。
3.根据权利要求1所述的方法,其中所述数据移动计划还基于用户预定义的策略来生成。
4.根据权利要求3所述的方法,其中所述用户预定义的策略包括相应存储层中存储的数据量与所述多个存储阵列中存储的数据总量的阈值比率。
5.根据权利要求4所述的方法,还包括:
在数据根据所述数据移动计划被移动时,监测所述数据正被移动到的目标存储层中已存储的数据量与所述数据总量的比率;以及
响应于所述比率超过与所述目标存储层相对应的阈值比率,生成新的数据移动计划以指示将所述目标存储层中的至少一部分数据移动到其他存储层中。
6.根据权利要求3所述的方法,其中所述用户预定义的策略包括数据移动速率。
7.根据权利要求3所述的方法,其中所述用户预定义的策略包括优选的数据重定位时间。
8.根据权利要求1-7中的任意一项所述的方法,还包括:
根据所述数据移动计划,使数据直接从第一存储阵列中的第一存储设备向第二存储阵列中的第二存储设备移动。
9.根据权利要求1-7中的任意一项所述的方法,还包括:
根据所述数据移动计划,从第一存储阵列中的第一存储设备接收将要移动的数据;以及
向第二存储阵列中的第二存储设备发送所述数据。
10.根据权利要求1-7中的任意一项所述的方法,其中所述目标位置包括目标存储层、目标存储阵列和目标存储设备。
11.根据权利要求1-7中的任意一项所述的方法,其中所述特征信息和所述位置信息是由用户预设定的。
12.一种用于对多个存储阵列中的数据进行自动重定位的装置,所述多个存储阵列包括多个存储设备,所述装置包括:
特征获取单元,被配置为获取所述多个存储设备的特征信息,其中所述多个存储设备基于所述特征信息被分组到多个存储层中;
位置获取单元,被配置为获取所述多个存储设备的位置信息,所述位置信息包括相应的存储设备所位于的存储层和存储阵列;
监测单元,被配置为监测所述多个存储设备中存储的数据的访问状态;以及
移动计划生成单元,被配置为基于所述访问状态、所述特征信息和所述位置信息来自动生成数据移动计划,所述数据移动计划指示数据将要被移动到的目标位置。
13.根据权利要求12所述的装置,其中:
所述监测单元还被配置为监测对所述多个存储设备中存储的特定数据的输入和/或输出请求,并且基于所监测的输入和/或输出请求来统计在预定时间段内对所述特定数据的访问次数;并且
所述移动计划生成单元还被配置为基于所述访问次数以及所述特征信息和所述位置信息来自动生成关于所述特定数据的所述数据移动计划。
14.根据权利要求12所述的装置,其中所述移动计划生成单元还被配置为基于用户预定义的策略来生成所述数据移动计划。
15.根据权利要求14所述的装置,其中所述用户预定义的策略包括相应存储层中存储的数据量与所述多个存储阵列中存储的数据总量的阈值比率。
16.根据权利要求15所述的装置,其中所述监测单元还被配置为在数据根据所述数据移动计划被移动时,监测所述数据正被移动到的目标存储层中已存储的数据量与所述数据总量的比率;并且
所述移动计划生成单元还被配置为响应于所述数据量与所述数据总量的比率超过与所述目标存储层相对应的阈值比率,生成新的数据移动计划以指示将所述目标存储层中的至少一部分数据移动到其他存储层。
17.根据权利要求14所述的装置,其中所述用户预定义的策略包括数据移动速率。
18.根据权利要求14所述的装置,其中所述用户预定义的分层策略包括优选的数据重定位时间。
19.根据权利要求12-18中的任意一项所述的装置,还包括:
数据移动单元,被配置为根据所述数据移动计划,使数据直接从第一存储阵列中的第一存储设备向第二存储阵列中的第二存储设备移动。
20.根据权利要求12-18中的任意一项所述的装置,还包括:
数据移动单元,被配置为根据所述数据移动计划,从第一存储阵列中的第一存储设备接收将要移动的数据,并且向第二存储阵列中的第二存储设备发送所述数据。
21.根据权利要求12-18中的任意一项所述的装置,其中所述目标位置包括目标存储层、目标存储阵列和目标存储设备。
22.根据权利要求12-18中的任意一项所述的装置,其中所述特征信息和所述位置信息是由用户预设定的。
23.一种非瞬态计算机可读存储介质,具有存储于其中的计算机程序指令,所述计算机程序指令在被执行时使机器执行根据权利要求1-11中的任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410135582.4A CN104951242B (zh) | 2014-03-28 | 2014-03-28 | 用于在存储阵列之间自动重定位数据的方法和装置 |
US14/669,437 US20150277768A1 (en) | 2014-03-28 | 2015-03-26 | Relocating data between storage arrays |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410135582.4A CN104951242B (zh) | 2014-03-28 | 2014-03-28 | 用于在存储阵列之间自动重定位数据的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104951242A CN104951242A (zh) | 2015-09-30 |
CN104951242B true CN104951242B (zh) | 2018-05-01 |
Family
ID=54165924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410135582.4A Active CN104951242B (zh) | 2014-03-28 | 2014-03-28 | 用于在存储阵列之间自动重定位数据的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150277768A1 (zh) |
CN (1) | CN104951242B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9959054B1 (en) | 2015-12-30 | 2018-05-01 | EMC IP Holding Company LLC | Log cleaning and tiering in a log-based data storage system |
US10282140B2 (en) * | 2016-10-18 | 2019-05-07 | Samsung Electronics Co., Ltd. | I/O workload scheduling manager for RAID/non-RAID flash based storage systems for TCO and WAF optimizations |
US10691350B2 (en) * | 2016-11-15 | 2020-06-23 | StorageOS Limited | Method for provisioning a volume of data including placing data based on rules associated with the volume |
US11264094B2 (en) * | 2018-03-05 | 2022-03-01 | Intel Corporation | Memory cell including multi-level sensing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102455776A (zh) * | 2010-10-22 | 2012-05-16 | 国际商业机器公司 | 用于降低能量消耗并优化工作负荷和性能的方法与系统 |
CN102508789A (zh) * | 2011-10-14 | 2012-06-20 | 浪潮电子信息产业股份有限公司 | 一种系统分级存储的方法 |
CN103106151A (zh) * | 2011-11-15 | 2013-05-15 | Lsi公司 | 管理层之间有效数据迁移的设备 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0944381A (ja) * | 1995-07-31 | 1997-02-14 | Toshiba Corp | データ格納方法およびデータ格納装置 |
US8880835B2 (en) * | 2009-07-07 | 2014-11-04 | International Business Machines Corporation | Adjusting location of tiered storage residence based on usage patterns |
WO2011030290A1 (en) * | 2009-09-08 | 2011-03-17 | International Business Machines Corporation | Data management in solid-state storage devices and tiered storage systems |
US8429346B1 (en) * | 2009-12-28 | 2013-04-23 | Emc Corporation | Automated data relocation among storage tiers based on storage load |
US8566553B1 (en) * | 2010-06-30 | 2013-10-22 | Emc Corporation | Techniques for automated evaluation and movement of data between storage tiers |
US9348515B2 (en) * | 2011-01-17 | 2016-05-24 | Hitachi, Ltd. | Computer system, management computer and storage management method for managing data configuration based on statistical information |
US8838927B2 (en) * | 2011-05-27 | 2014-09-16 | International Business Machines Corporation | Systems, methods, and physical computer storage media to optimize data placement in multi-tiered storage systems |
US9542326B1 (en) * | 2011-06-14 | 2017-01-10 | EMC IP Holding Company LLC | Managing tiering in cache-based systems |
US8706962B2 (en) * | 2012-01-27 | 2014-04-22 | International Business Machines Corporation | Multi-tier storage system configuration adviser |
US9817766B1 (en) * | 2012-12-28 | 2017-11-14 | EMC IP Holding Company LLC | Managing relocation of slices in storage systems |
US20140281322A1 (en) * | 2013-03-15 | 2014-09-18 | Silicon Graphics International Corp. | Temporal Hierarchical Tiered Data Storage |
US9753987B1 (en) * | 2013-04-25 | 2017-09-05 | EMC IP Holding Company LLC | Identifying groups of similar data portions |
US9612964B2 (en) * | 2014-07-08 | 2017-04-04 | International Business Machines Corporation | Multi-tier file storage management using file access and cache profile information |
US9411539B2 (en) * | 2014-09-24 | 2016-08-09 | International Business Machines Corporation | Providing access information to a storage controller to determine a storage tier for storing data |
-
2014
- 2014-03-28 CN CN201410135582.4A patent/CN104951242B/zh active Active
-
2015
- 2015-03-26 US US14/669,437 patent/US20150277768A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102455776A (zh) * | 2010-10-22 | 2012-05-16 | 国际商业机器公司 | 用于降低能量消耗并优化工作负荷和性能的方法与系统 |
CN102508789A (zh) * | 2011-10-14 | 2012-06-20 | 浪潮电子信息产业股份有限公司 | 一种系统分级存储的方法 |
CN103106151A (zh) * | 2011-11-15 | 2013-05-15 | Lsi公司 | 管理层之间有效数据迁移的设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104951242A (zh) | 2015-09-30 |
US20150277768A1 (en) | 2015-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102438308B1 (ko) | 구역화된 네임스페이스들에 대한 내구성 그룹들의 적용 | |
US10095418B1 (en) | Automatic tiering of storage using dynamic grouping | |
US8464003B2 (en) | Method and apparatus to manage object based tier | |
US10082965B1 (en) | Intelligent sparing of flash drives in data storage systems | |
US9477407B1 (en) | Intelligent migration of a virtual storage unit to another data storage system | |
US9665630B1 (en) | Techniques for providing storage hints for use in connection with data movement optimizations | |
US8621178B1 (en) | Techniques for data storage array virtualization | |
US9274723B2 (en) | Storage apparatus and its control method | |
JP4699837B2 (ja) | ストレージシステム、管理計算機及びデータ移動方法 | |
US20170285972A1 (en) | Managing ssd write quotas in data storage systems | |
US9703717B2 (en) | Computer system and control method | |
US8677093B2 (en) | Method and apparatus to manage tier information | |
CN104951242B (zh) | 用于在存储阵列之间自动重定位数据的方法和装置 | |
US9740421B2 (en) | Just-in-time remote data storage allocation | |
US10521124B1 (en) | Application-specific workload-based I/O performance management | |
CN103562881A (zh) | 数据存储池的碎片整理 | |
US20140074834A1 (en) | Storage Block Metadata Tagger | |
JP5325304B2 (ja) | 仮想ボリューム内のパフォーマンスホットスポットの特定及び抑制 | |
US20180314427A1 (en) | System and method for storage system autotiering using adaptive granularity | |
US11461287B2 (en) | Managing a file system within multiple LUNS while different LUN level policies are applied to the LUNS | |
US20130145118A1 (en) | Virtual Storage Mirror Configuration in Virtual Host | |
US10635332B2 (en) | Managing data storage arrays on behalf of host computers via specialized LUN-related queries | |
CN107092443B (zh) | 数据迁移方法及装置 | |
CN104951243B (zh) | 虚拟化存储系统中的存储扩展方法和装置 | |
US9317224B1 (en) | Quantifying utilization of a data storage system by a virtual storage unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200410 Address after: Massachusetts, USA Patentee after: EMC IP Holding Company LLC Address before: Massachusetts, USA Patentee before: EMC Corp. |