CN104484125A - 联合分层管理 - Google Patents
联合分层管理 Download PDFInfo
- Publication number
- CN104484125A CN104484125A CN201410557180.3A CN201410557180A CN104484125A CN 104484125 A CN104484125 A CN 104484125A CN 201410557180 A CN201410557180 A CN 201410557180A CN 104484125 A CN104484125 A CN 104484125A
- Authority
- CN
- China
- Prior art keywords
- mass
- memory unit
- controller
- subsystem
- access
- 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.)
- Pending
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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- 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
- 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/0614—Improving the reliability 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
- G06F3/0649—Lifecycle management
-
- 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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer Security & Cryptography (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了联合分层管理。描述了一种装置和方法,响应于大容量存储设备中的至少某些大容量存储设备提供标识哪些数据是将在层之间移动的候选的信息,在大容量存储设备的层之间动态地移动数据。
Description
发明内容
描述了一种装置和方法,响应于至少某些大容量存储设备提供标识哪些数据是将在层之间移动的候选的信息,在大容量存储设备的层之间动态地移动数据。
附图说明
图1示出了处于第一状态的第一存储子系统;
图2示出了处于第二状态的第一存储子系统;
图3示出了处于第一状态的第二存储子系统;
图4示出了处于第二状态的第二存储子系统;
图5示出了第二存储子系统使用的流程;
图6示出了第二存储子系统使用的另一流程;
图7示出了第二存储子系统使用的大容量存储设备;
图8示出了第二存储子系统使用的又一流程;
图9示出了第三存储子系统;以及
图10示出了另一大容量存储设备。
详细说明
大容量存储设备,例如硬盘驱动器(HDD)、固态驱动器(SSD)和混合盘驱动器(Hybrid),能够在存储子系统中集成在一起。存储子系统包括控制访问大容量存储设备的控制器。存储子系统可用于提供更好的数据访问性能、数据保护或维护数据可用性。
分层已经成为包括多种大容量存储设备的子系统的优化中不可缺少的元素。在这样的存储子系统中大容量存储设备按照类型,例如,具有相似的性能特征,集合在一起形成一个层。一个分层的示例是在最高性能的层上维护访问最多的数据从而提高存储子系统的性能。较少访问的数据则保存在较低性能的层上从而释放较高性能的层上的空间。
然而,数据访问图案的动态特性和用户可消化的及时信息的缺乏,使得在最高性能的层上维护该数据较困难,其中从该用户可消化的及时信息获得有效的存储管理。为了克服该问题可以自动执行分层以保持性能与变化的操作环境一致。然而在存储子系统中维护对所有大容量存储设备的数据访问图案的持续评估,会是控制器中一个相当大的负担,并且会导致低效的存储使用。
为了说明,参见图1的存储子系统100。子系统100包括控制器110、第一存储层120和第二存储层130。第一和第二存储层120、130可以分别是SSD125和HDD 135。这样,第一存储层120具有的随机访问读时间比第二存储层130快。为了利用该较快时间,控制器110基于访问图案在层之间移动数据。
存储子系统100中的数据示例为设备数据段120a。如图所示,每个SSD125中有三个设备数据段,例如120a、120b、120c。设备数据段120c是第一存储层120中最不忙的设备数据段。每个HDD 135中有六个设备数据段。设备数据段130a和130b是第二存储层130中最忙的。设备数据段130c则是最不忙的。
控制器110的任务是管理层之间数据的移动从而优化性能。为此控制器110使用子系统数据块以追踪数据访问。为了降低该追踪的开销,子系统数据块的尺寸被划分为比设备数据段大。在该特定示例中,子系统数据块110a对应包括设备数据段120a、120b、120c的设备数据段组122。这样子系统数据块110a具有三个设备数据段的大小。子系统数据块110b对应设备数据段组124。子系统数据块110c对应包括设备数据段130a的设备数据段组132。子系统数据块110d对应包括设备数据段130b、130c的设备数据段组134。无论设备数据段何时被访问,控制器110将该访问作为它的对应子系统数据块的访问。在该示例中,对组122中设备数据段的任何一个的访问作为是对子系统数据块110a的访问。
如前所述,设备数据段120c是第一存储片120中最不忙的设备数据段。那么随着控制器110追踪数据访问,它确定分别对应的子系统数据块110a是第一存储层120中最不忙的子系统数据块。同样地,由于设备数据段130a和130b是第二存储层130中最忙的设备数据段,控制器110确定分别对应的子系统数据块110c和110d是第二存储层130中最忙的子系统数据块。因此,控制器确定将最不忙和最忙的子系统数据块移动到另一层。
存储层之间子系统数据块的移动将参考图2进行说明。在此,对应子系统数据块110a的设备数据段组122(包括设备数据段120a、120b、120c)被写入HDD 135,该HDD 135先前维护对应子系统数据块110c的设备数据段组132(包括设备数据段130a)。类似地,对应子系统数据块110b的设备数据段组124被写入HDD 135,该HDD 135先前维护对应子系统数据块110d的设备数据段组134(包括设备数据段130b、130c)。子系统数据块110c和110d分别被写入先前存储设备数据段组122和124的位置。
在此揭露该分层管理方法的低效之处。注意和设备数据段组134一起传输的是设备数据段130c。该段曾是第二存储层130中最不忙的设备数据段。现在该设备数据段位于第一存储层120中使用着本可用于更忙的设备数据段的宝贵存储空间。发生这种情况是由于该分层管理方法所作的折衷。考虑到在系统级为每个设备数据段追踪所有数据访问活动对子系统控制器处理开销和存储器要求具有负面影响。此外,随着潜在的层存储容量增长,用于追踪访问活动的子系统存储器也增长否则会损害子系统数据块大小的追踪准确度。结果,子系统存储器和处理开销通常指定子系统控制器使用比理想大小更大的块-比设备数据段更大。这导致由于将最不忙的设备数据段移动到最高性能的层上这样的操作所造成的性能增益减小。
为了克服这种分层管理方法的不足,使用构成子系统的大容量存储设备来贡献分层管理任务从而在提高分层整体效率的同时减小对子系统控制器处理开销和存储器要求的影响。将监控大容量存储设备数据段活动水平和标识候选移动段的任务分散在大容量存储设备上-也就是说,通过将其联合-将使大容量存储设备个体上承担相对小的额外负担,但总体上极大地减少控制器任务。
用这种方法也使得该分层更有效。由于控制器在子系统数据块的大小以及控制器处理开销的量和用于监控设备数据段活动水平的存储器之间进行折衷,联合分层能够在很小容量的单元上实现,因为所有大容量存储设备在并行进行该工作。
大容量存储设备贡献分层管理的一个潜在方面在于,它提供给控制器的大量数据是它可能已经维护的数据。考虑即使最小和最简单的大容量存储设备也包括内部缓存。为了管理该内部缓存,大容量存储设备追踪它所服务的访问活动并使最经常被请求的段在其缓存中可用。这将优化缓存的性能益处。SSD为数据管理技术例如闪存单元的损耗均衡和垃圾收集而监控访问活动以保证存储持久性。
然后这些大容量存储设备能够向控制器提供该访问活动信息。这使得控制器能够得到准确、及时和全面的指示高或低访问活动段的信息。然后控制器能够使用该信息优化子系统性能。因此,用自己非常少的测量活动,子系统控制器将从给定配置中获得最好的性能。由于大容量存储设备已经可以结合对它们自己内部缓存的监管或其他内部管理处理很多这些工作,由联合分层管理导致的额外负担相对较小。
控制器将配置每个层中的大容量存储设备关于它将从它们请求哪些访问活动信息,随后请求该信息。每个大容量存储设备优选地追踪其存储空间中最忙或最不忙的段的读和写活动,包括记录顺序读和写。为了确定哪个段应在层之间移动,控制器可以请求最忙或最不忙的段的列表。为了说明,参考图3和所示的子系统300。这里,控制器310向第一存储层320的大容量存储设备请求哪些设备数据段最不忙,潜在地满足阈值或其他条件。作为响应,控制器310接收关于设备数据段320a、320b的访问活动信息。控制器310向第二存储层330的大容量存储设备请求哪些设备数据段最忙。作为响应,控制器310接收关于设备数据段330a、330b的访问活动信息。
然后控制器310确定这四个被标识的设备数据段是否应当被移动,这部分地基于目标层是否能够接收它并且达到移动的目的。如图3所示,第一和第二存储层320、330能够容纳该数据移动,因为二者都报告了两个设备数据段。在图4中控制器310继续在存储层之间移动所标识的设备数据段。设备数据段320a和330a的存储位置互换,并且设备数据段320b和330b的存储位置互换。这样提高了设备数据段330a和330b的访问性能。并且,和图1和2的分层管理方法不同,没有无保证的设备数据段移动被执行。结果是不像被放入高性能层中那样多地被访问的数据量的最小化。注意最不忙的设备数据段330c未被移动到第一存储层320。而且,控制器310使用了比图1和2所示的处理器110用于管理15个子系统数据块更少的处理和存储器资源来管理这四个设备数据段320a、320b、330a和330b。
以上描述只是许多示例中的一个。进一步的示例将参考下面的表1进行说明。假设子系统中的每个大容量存储设备维护如表1所示的访问活动信息。第1列示出了作为LBA范围的设备数据段。这些LBA范围可以任意方式定义。一种方式是使用子系统访问的平均传输长度。尽管每个层和每个大容量存储设备的段的大小可以不同,但这会导致控制器更多的开销。
每个LBA范围有相关的读和写(访问)频率值。这些值可根据满足阈值访问频率而确定。例如,子系统控制器可编程大容量存储设备从而将某个值,例如150IO/秒,作为访问频率。或者大容量存储设备可随着它们发生而简单地增加每个读和写的列,并且子系统控制器用于确定访问频率。这可以通过子系统控制器确定访问活动信息请求之间的时间来完成。或者子系统控制器可以以固定间隔对访问活动信息请求进行计时。然后大容量存储设备将仅发送满足一定阈值的访问活动信息。而且,在某些情况下提供除了读活动以外的信息,因为在层之间移动数据的最好决定可能不是仅考虑读活动信息而确定的。
此外,大容量存储设备可提供控制器不方便收集的信息。例如,表1中的访问活动信息还包括显示该访问是否为顺序的列。子系统控制器要准确检测顺序访问具有很大的困难。但是顺序访问可能是考虑是否降级或升级设备数据段的重要信息。
表1
子系统控制器对访问活动信息的使用由子系统的编程决定。例如,子系统可以被编程从而每个大容量存储设备发送设备数据段的访问活动信息,所述访问活动信息仅满足某个阈值如访问频率(例如150IO/秒)或者设备数据段的访问频率落入该大容量存储设备存储容量的一定比例内。对于后者,如果请求大容量存储设备最忙(或最不忙)的1%,大容量存储设备将报告用户存储空间中哪些段,总计大容量存储设备容量的1%,在读或写或两者方面最忙(或最不忙)。
假设子系统被编程以使得每个大容量存储设备向子系统控制器提供仅满足最高性能层(例如图3-4中的第一存储层320)的访问频率<5访问/时间单位并且较低性能层(例如图3-4中的第一存储层330)的访问频率>10访问/时间单位的设备数据段的访问活动信息。如果最高性能层中的大容量存储设备维护表1的访问活动信息,LBA0-15和16-31的访问活动信息将被报告到子系统控制器。如果较低性能层中的大容量存储设备维护表1的访问活动信息,LBA32-47、48-63、64-79和80-95的访问活动信息将被报告到子系统控制器。
表2
表2是可能的监控表的另一示例。子系统控制器将请求最活跃的设备数据段,或许是最活跃的.01%的块(块的大小可能在模式页面中指定)或者,作为可能的替代,最活跃的N(例如100)个块。起始和结束LBA可方便地指定什么时候作为块的设备数据段是连接着作为一个大块,而不是多个小块。
用于升级或降级设备数据段的阈值可基于层的存储容量。在图3和4的第一存储层320的情况下,增加的存储容量越大将允许越低的阈值用于升级设备数据段。通常,子系统可使用更多的层和更多的驱动器进行按比例缩放,因为每个驱动器增加计算的功耗。
大容量存储设备报告相关的访问活动信息,在一个实施例中控制器决定什么段应当移动以及它们应当移动到何处。控制器可比较从所有大容量存储设备得到的访问活动信息,并决定哪里有应当升级/降级的段,这些段应当移动到层中的哪个大容量存储设备,以及如何从该大容量存储设备升级/降级(如果可能)足够的段以允许被升级/被降级的段写入。然后控制器将开始从源大容量存储设备进行读和向它所选择的用于完成最不忙的设备数据段的降级和最忙的设备数据段的升级的目标大容量存储设备进行相应的写。然后将设备数据段从源大容量存储设备读取到与子系统控制器相关的存储器,然后从该存储器发送到目标大容量存储设备。可替换地,层或大容量存储设备之间能够通信从而子系统控制器不必参与实际的数据移动。这可以借助大容量存储设备间存在的合适的通信协议来实现。数据移动后相关的大容量存储设备或层通知子系统控制器数据已经移动。
图5示出了上述子系统控制器的一个流程。流程500在步骤510开始,然后进行到步骤520,在步骤520子系统控制器接收访问活动信息。该信息可响应于来自子系统控制器的请求而从大容量存储设备获得。在步骤530子系统控制器确定是否对与接收的访问活动信息对应的任何设备数据段进行升级或降级,或两者。如果确定对与接收的访问活动信息对应的任何设备数据段进行升级或降级,或两者,在步骤540完成该操作。然后流程500在步骤550结束。如果确定不对任何设备数据段进行升级或降级,那么流程500进行到结束步骤550。
图6示出了上述大容量存储设备的一流程。流程600在步骤610开始,然后进行到步骤620,在步骤620大容量存储设备接收关于访问活动信息的请求。在步骤630大容量存储设备响应于在步骤620接收的请求而输出访问活动信息。步骤630结束流程600。
除上述描述外,可以使用子系统特别是子系统控制器的额外编程(例如,政策)。额外编程可基于大容量存储设备的特性。为了说明,由于将数据写入SSD所需的时间和SSD存储单元的损耗特性,如果相同的设备数据段被多次写入那么SSD不能很好地执行。这种情况下,子系统,优选地是子系统控制器,可被编程以使用高的写访问将设备数据段移动至非SSD大容量存储设备。如图3和4所示,这意味着将设备数据段移动到第二存储层的HDD中。在这个示例里,如果表1的LBA64-79存储在SSD中,它们可能被移动到HDD中,因为它们具有高的写访问。这将允许具有较少读和写的段维护在SSD中。高的写访问与所使用的存储器的类型相关。
额外编程可基于设备数据段的顺序访问。特别地,即使访问主要是读,如果它们全部或大多数为顺序的,SSD的表现可能不足以更好使得有理由将数据从HDD移走。然而,如果多数读活动为顺序的,那么升级这些段可能是不明智的。SSD上的顺序性能通常并不比HDD好多少,并且具有更多随机活动的段,即使它们总体上具有较少的读,可能更适合作为升级的候选。从存储系统服务时间免去的访问时间更多改进将更大,而在顺序访问中仅仅很小的传输率的差别将被看到。在这个示例中,如果表1的LBA48-63存储在SSD中,它们可能被移动到HDD,因为它们具有顺序访问。
进一步的额外编程可基于经验数据。这样的情况在于,经验数据显示很多时候特定设备数据段的访问活动改变使得它们应当被移动到另一合适的层。该数据移动后,它可被锁定从而被维护在它的层中而不管该层的访问活动信息。
如对图3和4中子系统的描述,控制器从每个层获取设备段信息从而它能够将相同数量的设备数据段从一个层移动到另一个。然而,并非总是这样进行。当一个层被填充后,控制器不需要该层的访问活动信息来将设备数据段移到它上面。
控制器可周期性地或者由事件驱动从大容量存储设备获取更新的访问活动信息。控制器可询问或请求大容量存储设备以获得最新的访问活动信息并响应于活动的改变而作出升级/降级决定。这可发生在一个或多个条件下。控制器可优选地从任意或所有大容量存储设备获得关于最忙或最不忙的数据段的常规报告。可选地,控制器可发现仅当超过某个阈值,例如最忙的或最不忙的段的对象改变10%时,获取访问活动信息更有效。这种情况下,大容量存储设备将维护访问活动信息并设置标志来指示N个最忙的或最不忙的段中的X%或更多已经发生了改变。就是说,构成最忙的或最不忙的X%的段中至少有X%是新条目。
大容量存储设备的一个示例在图7示出。大容量存储设备700包括耦合到大容量存储器720和存储器730的大容量存储控制器710。大容量存储器可以是磁的、光学的、固态的和磁带中的一种或多种。存储器720可以是用于控制器的数据和指令的固态存储器例如RAM,以及例如缓冲器。大容量存储控制器710可通过电连接740使用接口I/F 750与子系统控制器连接。
可关于访问活动信息中包括哪些内容对大容量存储设备进行编程。可通过使用SCSI标准中的模式页面指令进行这样的编程。然后当子系统控制器请求时访问活动信息通过存储接口被发送。
一个这样的示例在图8中由流程800示出。从步骤810开始,流程800进行到步骤820,此时操作大容量存储控制器的固件使得,可能从大容量存储器720中,读取配置信息。配置信息可包括LBA中设备数据段的大小,以及例如在表1和2中所示的其他信息。在步骤830,通过在存储器(例如存储器730)中创建表格来配置访问活动信息。随着大容量存储设备操作,它在步骤840收集访问活动信息。在步骤850,在存储器例如存储器730中维护该信息。如果存储器730为易失性的,访问活动信息可保存至存储器720。流程800在步骤850结束。
可以有比所示的两个更多的任意数量的层。如图9所示,一个特定的子系统包括三个层。这里系统900包括耦合到层920、930、940的子系统控制器910。层920可包括最高性能的大容量存储设备925,例如SSD。层930可包括次高性能的大容量存储设备935例如FC/SCSI、混合驱动器、短行程或高每分钟转数(rpm)盘驱动器。层940可包括最低性能大容量存储设备945例如SATA、磁带或光驱动器。无论层的数量多少,一个层中所有的大容量存储设备并非必须相同。相反,它们可具有落入一定范围或满足一定条件的至少一个特性。并且,在至少一个层中有单个大容量存储设备。
操作中,大容量存储设备935可向子系统控制器910提供它最不忙和最忙的设备数据段的访问活动信息。如上所述,子系统控制器可将最不忙的段移动至层940并且将最忙的段移动至层920。层920、940可分别提供它们最忙和最不忙的数据段。这里子系统控制器910可确定设备数据段应当被移动到另外两个层中的哪个。可替换地,这些设备数据段可被移动至层930从而它们与层930中另外的设备数据段进行比较。如果合适它们可从那里被移动至另一个层。
至少图3-10的上述实施例可用于分布式文件系统,例如Hadoop。分层存储可用于数据节点,其中数据节点的子系统控制器确定什么数据在层之间移动。数据节点上的分布式文件系统可以参与或不参与层之间的数据移动。如果可以,那么分布式文件系统可自己或与子系统控制器协作确定什么数据在层之间移动。然后控制器或分布式文件系统中的政策可包括优先权以避免二者之间的冲突。分层存储也可作为群或其一部分。分层存储的每个层可以是数据节点。这里分布式文件系统将作为子系统控制器来确定层之间的数据移动。
并且,大容量存储设备中的至少一个可包括子系统控制器的功能。这在图10中被示出。大容量存储设备1000包括子系统控制器1010,大容量存储控制器1020、存储器1030和大容量存储器1040。控制器1010、1020可实现为包括或不包括相关固件或软件的分离的硬件,或者包括或不包括相关固件或软件的单个硬件。由于该大容量存储设备具备该功能,其他大容量存储设备将通过层接口1060与该大容量存储设备通信。子系统控制器使用主机接口1050从请求数据访问的主机或其他设备接收命令。控制器之间使用所示的接口I/F通信。大容量存储设备可被制造为具有子系统功能,并在之后被使能以控制子系统。如果子系统功能在多于一个的大容量存储设备中可行,所有的子系统功能可在它们之间进行划分。
所说明的装置和方法不应限制为上述特定的示例。图3-10的控制器可以是硬件,无论是特定应用的、专用的或通用的。并且,该硬件可与软件或固件一起使用。
所述装置和方法可应用的各种修改、等效流程以及众多结构将显而易见。例如,控制器可以是能够使用直接连接的驱动器的主机CPU。大容量存储设备也可以是光学驱动器、固态存储器、直接连接的或磁带驱动器,或者可以是高和低性能的HDD。层可以是SAN、磁带库或云存储。存储接口物理连接以及子系统控制器接口340(图3)和大容量存储设备或层之间的协议可以是以太网、USB、ATA、SATA、PATA、SCSI、SAS、光纤信道、PCI、闪电、无线、光学、背板、前端总线等。
并非所有大容量存储设备需要为子系统控制器提供访问活动信息来移动数据。相反,驱动器中的一些可提供该信息从而减少子系统控制器的负担。一个示例是层是由子系统控制器所控制的固态存储器组成。这种情况下子系统控制器可监控该存储器的访问活动。或者子系统控制器可将数据移动至该存储器而不管它其中所包含的其他数据。
代替性能,或者除了性能外,设备数据段的移动可基于大容量存储设备的容量、成本或其他功能。移动也可基于设备数据段的值,例如任务或商业关键数据。移动可基于用户或应用定义的条件。
Claims (30)
1.一种方法,包括:响应于大容量存储设备中的至少某些大容量存储设备提供标识哪些数据是将要在层之间移动的候选的信息,在大容量存储设备的层之间动态地移动数据。
2.如权利要求1所述的方法,其特征在于,在层之间动态地移动数据由子系统控制器执行。
3.如权利要求1所述的方法,其特征在于,所述大容量存储设备的每一个包括与子系统控制器分离的控制器。
4.如权利要求2所述的方法,其特征在于,进一步包括,子系统控制器请求大容量存储设备提供标识哪些数据是将要在层之间移动的候选的信息。
5.如权利要求4所述的方法,其特征在于,进一步包括,大容量存储设备响应于请求而提供所述信息,所述信息包括设备数据段以及相关的读访问、写访问、顺序读和顺序写中的至少一个。
6.如权利要求4所述的方法,其特征在于,进一步包括,子系统控制器配置大容量存储设备以提供所述信息。
7.如权利要求1所述的方法,其特征在于,进一步包括,大容量存储设备收集所述信息作为不同于在层之间移动数据的用途。
8.如权利要求1所述的方法,其特征在于,进一步包括,大容量存储设备在它们自身之间移动数据并通知子系统控制器数据已经移动。
9.如权利要求1所述的方法,其特征在于,所述层是分布式文件系统的一部分。
10.一种系统,包括:
子系统控制器;以及
耦合到子系统控制器的大容量存储设备的层,每一个被配置为向子系统控制器输出用于在层之间移动数据的访问活动信息。
11.如权利要求10所述的系统,其特征在于,所述子系统控制器和层通过各自的接口耦合在一起。
12.如权利要求10所述的系统,其特征在于,所述层在性能、成本和容量中的至少一方面不同。
13.如权利要求10所述的系统,其特征在于,访问活动信息包括设备数据段以及相关的读访问、写访问、顺序读和顺序写中的至少一个。
14.权利要求10所述的系统,其特征在于,所述大容量存储设备的每一个包括与子系统控制器分离的控制器。
15.权利要求10所述的系统,其特征在于,子系统控制器被配置为请求访问活动信息。
16.权利要求10所述的系统,其特征在于,大容量存储设备被配置为在它们自身之间移动数据并通知子系统控制器数据已经移动。
17.权利要求10所述的系统,其特征在于,子系统控制器能够配置大容量存储设备以提供所述信息。
18.权利要求10所述的系统,其特征在于,大容量存储设备被配置为收集所述信息作为不同于在层之间移动数据的用途。
19.权利要求10所述的系统,其特征在于,所述层是分布式文件系统的一部分。
20.一种子系统控制器,包括存储接口,所述存储接口可电耦合到大容量存储设备的层,并且可操作地被配置为响应于从大容量存储设备中的至少某些大容量存储设备接收的访问活动信息而确定层之间的数据移动。
21.如权利要求20所述的子系统控制器,其特征在于,子系统控制器被配置为使用至少一个政策以及访问活动信息以确定数据移动。
22.权利要求20所述的子系统控制器,其特征在于,在从子系统控制器接收请求后接收访问活动信息。
23.权利要求22所述的子系统控制器,其特征在于,所述请求可以是周期性的或由事件驱动。
24.权利要求20所述的子系统控制器,其特征在于,进一步被配置为针对访问活动信息向大容量存储设备提供配置信息。
25.一种大容量存储设备,包括:
大容量存储器,以及
耦合的控制器,用于控制对大容量存储器的访问并包括主机接口;所述控制器被配置为收集大容量存储器的访问活动信息,并响应于请求而从存储接口输出访问活动信息。
26.如权利要求25所述的大容量存储设备,其特征在于,控制器由子系统控制器配置。
27.如权利要求25所述的大容量存储设备,其特征在于,进一步包括耦合到控制器的子系统控制器。
28.如权利要求25所述的大容量存储设备,其特征在于,子系统控制器包括层接口。
29.如权利要求25所述的大容量存储设备,其特征在于,访问活动信息被输出到大容量存储设备外部。
30.如权利要求25所述的大容量存储设备,进一步被配置为与另一大容量存储设备一起移动。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/958,077 US20150039825A1 (en) | 2013-08-02 | 2013-08-02 | Federated Tiering Management |
US13/958,077 | 2013-08-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104484125A true CN104484125A (zh) | 2015-04-01 |
Family
ID=52428753
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410557180.3A Pending CN104484125A (zh) | 2013-08-02 | 2014-08-04 | 联合分层管理 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150039825A1 (zh) |
JP (1) | JP2015038729A (zh) |
CN (1) | CN104484125A (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6350162B2 (ja) * | 2014-09-18 | 2018-07-04 | 富士通株式会社 | 制御装置 |
JP6165909B1 (ja) * | 2016-03-16 | 2017-07-19 | 株式会社東芝 | 階層化ストレージシステム、ストレージコントローラ、及び階層化制御方法 |
US10030986B2 (en) * | 2016-06-29 | 2018-07-24 | Whp Workflow Solutions, Inc. | Incident response analytic maps |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070118710A1 (en) * | 2005-11-18 | 2007-05-24 | Hiroshi Yamakawa | Storage system and data migration method |
JP2009157441A (ja) * | 2007-12-25 | 2009-07-16 | Toshiba Corp | 情報処理装置、ファイル再配置方法およびプログラム |
US20110072233A1 (en) * | 2009-09-23 | 2011-03-24 | Dell Products L.P. | Method for Distributing Data in a Tiered Storage System |
CN102576293A (zh) * | 2009-09-08 | 2012-07-11 | 国际商业机器公司 | 固态存储设备和分层存储系统中的数据管理 |
US20130066883A1 (en) * | 2011-09-12 | 2013-03-14 | Fujitsu Limited | Data management apparatus and system |
US20130185464A1 (en) * | 2012-01-18 | 2013-07-18 | Sony Corporation | Electronic apparatus, data transfer control method, and program |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9317215B2 (en) * | 2013-05-23 | 2016-04-19 | Globalfoundries Inc. | Mapping a source workload pattern for a source storage system to a target workload pattern for a target storage system |
-
2013
- 2013-08-02 US US13/958,077 patent/US20150039825A1/en not_active Abandoned
-
2014
- 2014-08-01 JP JP2014157641A patent/JP2015038729A/ja active Pending
- 2014-08-04 CN CN201410557180.3A patent/CN104484125A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070118710A1 (en) * | 2005-11-18 | 2007-05-24 | Hiroshi Yamakawa | Storage system and data migration method |
JP2009157441A (ja) * | 2007-12-25 | 2009-07-16 | Toshiba Corp | 情報処理装置、ファイル再配置方法およびプログラム |
CN102576293A (zh) * | 2009-09-08 | 2012-07-11 | 国际商业机器公司 | 固态存储设备和分层存储系统中的数据管理 |
US20110072233A1 (en) * | 2009-09-23 | 2011-03-24 | Dell Products L.P. | Method for Distributing Data in a Tiered Storage System |
US20130066883A1 (en) * | 2011-09-12 | 2013-03-14 | Fujitsu Limited | Data management apparatus and system |
US20130185464A1 (en) * | 2012-01-18 | 2013-07-18 | Sony Corporation | Electronic apparatus, data transfer control method, and program |
Also Published As
Publication number | Publication date |
---|---|
US20150039825A1 (en) | 2015-02-05 |
JP2015038729A (ja) | 2015-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8909887B1 (en) | Selective defragmentation based on IO hot spots | |
US9575668B1 (en) | Techniques for selecting write endurance classification of flash storage based on read-write mixture of I/O workload | |
US9355112B1 (en) | Optimizing compression based on data activity | |
US9477407B1 (en) | Intelligent migration of a virtual storage unit to another data storage system | |
US9026760B1 (en) | Techniques for enforcing capacity restrictions of an allocation policy | |
US9612758B1 (en) | Performing a pre-warm-up procedure via intelligently forecasting as to when a host computer will access certain host data | |
US7467263B2 (en) | Storage system, management apparatus & method for determining a performance problem using past & current performance values of the resources | |
US8583838B1 (en) | Techniques for statistics collection in connection with data storage performance | |
JP6510635B2 (ja) | ストレージシステム及びデータ制御方法 | |
US9703717B2 (en) | Computer system and control method | |
CN101292220A (zh) | 用于管理存储装置的系统、方法和程序 | |
US20110320754A1 (en) | Management system for storage system and method for managing storage system | |
US10552056B2 (en) | Data storage system tiering accounting for limited write endurance | |
JPWO2008136075A1 (ja) | ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法 | |
CN106610903A (zh) | 层级化存储器系统、存储器控制器和去重及存储器层级化方法 | |
JP5000234B2 (ja) | 制御装置 | |
US11914894B2 (en) | Using scheduling tags in host compute commands to manage host compute task execution by a storage device in a storage system | |
EP2813941A2 (en) | Storage system and operation management method of storage system | |
JP2020046929A (ja) | 情報処理装置及び情報処理プログラム | |
US20180341423A1 (en) | Storage control device and information processing system | |
CN104484125A (zh) | 联合分层管理 | |
US10360127B1 (en) | Techniques for identifying I/O workload patterns using key performance indicators | |
US20150268867A1 (en) | Storage controlling apparatus, computer-readable recording medium having stored therein control program, and controlling method | |
US9317224B1 (en) | Quantifying utilization of a data storage system by a virtual storage unit | |
KR101686346B1 (ko) | 하이브리드 ssd 기반 하둡 분산파일 시스템의 콜드 데이터 축출방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150401 |