管理层之间有效数据迁移的设备的制作方法

文档序号:6380428阅读:179来源:国知局
专利名称:管理层之间有效数据迁移的设备的制作方法
管理层之间有效数据迁移的设备技术领域
本发明总体涉及数据存储系统,具体涉及具有层的数据存储系统。
背景技术
在基于块的存储系统中,通过移动频繁访问的数据(热数据)以加快和提高驱动器能力并同时移动不经常访问的数据(冷数据)以降低缓慢存储能力,改善了整个系统的性能。这种已知为存储分层的解决方案,比使用用于所有存储需求的高性能存储更有成本效益。一种典型的分层配置将利用较廉价且性能较差的驱动器(如SATA驱动器)的大存储池作为“慢层(slow tier)”和将利用昂贵且性能较好的驱动器(如SSD)的小池作为“快层(Fasttier)”。分层比其他可比较配置提供了性能优越的单位成本。
为了分层更有效率,必须将热数据保留在快层上和必须将冷数据保留在慢层上,即使当数据的访问频率随时间改变时。分层的数据存储系统跟踪数据或数据块的访问频率并当访问频率改变时在层之间移动数据。在层之间的数据的移动是从实际服务IO处占用带宽的开销。
因此,如果存在一种适合在分层数据存储系统中的层之间有效迁移数据的设备,将是有利的。发明内容
相应地,本发明涉及一种用于在分层数据存储系统中的层之间有效迁移数据的新的方法和设备。
本发明的一实施方案是一种数据存储系统,其具有快层和其中保留部分快层的慢层。当先前的冷数据变热时,将数据从慢层到保留的快层部分转移。表最初跟踪保留的快存部分中的所有空间。当数据变热并被转移到保留的快存部分时,对表修改以将在慢层的数据的先前位置增加到保留部分并从保留部分移除快层上数据的新位置。使用本发明,数据迁移主要从慢层到快层而没有从快层到慢层的即时对应迁移,据此减少迁移的最初开销。当已经将一定比例的保留部分迁移到慢层,数据存储系统执行从快层到慢层的冷数据的大规模迁移。大规模迁移的计时可基于可获得的系统资源。
应当理解,以上一般说明和以下具体说明都仅仅是示范性和解释性的且不是对本发明要求权利的限制。被并入且构成本说明书一部分的附图,描述了本发明的实施方案,并和一般说明一起用于解释原理。


通过参考附图,本领域技术人员可更好地理解本发明的众多目标和优点,其中: 图1示出了用于实施本发明的数据存储系统的方框图;图2示出了使用包括不同数据存储技术的虚拟驱动器实施的分层驱动器的方框图; 图3A示出了在具有慢数据存储装置和快数据存储装置的数据存储系统中的数据块的最初布局的表; 图3B示出了与在具有快数据存储装置和慢数据存储装置的数据存储系统中的数据存储装置上的保留空间相关的逻辑块地址的最初表; 图4A示出了在已经将数据块从慢数据存储装置迁移到快数据存储装置之后在具有慢数据存储装置和快数据存储装置的数据存储系统中的数据块的表; 图4B示出了在已经将数据块从慢数据存储装置迁移到快数据存储装置之后与在具有快数据存储装置和慢数据存储装置的数据存储系统中的数据存储装置上的保留空间相关的逻辑块地址的最初表; 图5A示出了在已经将两个数据块从慢数据存储装置迁移到快数据存储装置之后在具有慢数据存储装置和快数据存储装置的数据存储系统中的数据块的表; 图5B示出了在已经将两个数据块从慢数据存储装置迁移到快数据存储装置之后与在具有快数据存储装置和慢数据存储装置的数据存储系统中的数据存储装置上的保留空间相关的逻辑块地址的最初表; 图6A示出了在冷交换以将保留空间移回到快数据存储装置之后在具有慢数据存储装置和快数据存储装置的数据存储系统中的数据块的表; 图6B示出了在冷交换以将保留空间移回到快数据存储装置之后与在具有快数据存储装置和慢数据存储装置的数据存储系统中的数据存储装置上的保留空间相关的逻辑块地址的最初表;以及 图7示出了用于迁移在具有慢数据存储装置和快数据存储装置的数据存储系统中的数据的方法的流程图。
具体实施方式
现在将对在附图中描述的公开主题进行具体说明。本发明的范围不仅仅限于权利要求;包含了众多替换,修改和等同体。为了说明清楚,尚未对与这些实施方案相关的技术领域中已知技术材料进行具体说明以避免不必要地使本说明不清楚。
参照图1,示出了 一种数据存储系统的方框图。实施本发明实施方案的数据存储系统可包括处理器102,连接处理器的存储器104,和一个或多个数据存储装置106,108。本发明涉及在分层数据存储系统中的数据迁移;因此,实施本发明实施方案的数据存储系统可具有快数据存储层106和慢数据存储层108。可替换地,参照图2,实施本发明实施方案的数据存储系统可具有包括一个或多个虚拟驱动器204,206,208的一个或多个逻辑分层驱动器202。虚拟驱动器204,206,208的每一个可以是访问一个或多个物理驱动器的逻辑构造。例如,SATA虚拟驱动器204可以是访问多个SATA硬盘驱动器的逻辑构造;SAS虚拟驱动器206可以是访问多个SAS硬盘驱动器的逻辑构造;SSD虚拟驱动器208可以是访问多个固态驱动器的逻辑构造。在具有如图2中的一个或多个分层驱动器202的分层数据存储系统中,每一个分层驱动器202可出现在用户和进程之外作为具有单个、合并的逻辑块寻址(LBA)系统的单个数据存储装置。
为了有效,分层数据存储系统必须保留最频繁访问的数据(热数据)在快层上。用来实施快层的技术比用来实施慢层的技术携带了数据存储的更高的单位成本;因此,快层可能具有相对小的整个存储容量。当随时间访问不同数据时,数据访问模式可能改变,引起先前冷数据变热和引起先前热数据变冷。分层数据存储系统必须因此当先前冷数据变热时将数据从慢层迁移到快层。因为快层相对小,随时间已经变冷的数据可能需要被迁移到慢层以释放在快层上的容量。
根据本发明的分层存储装置可能保留在数据存储装置上的一部分容量作为预留空间。参照图3A和3B,图3A示出了在具有快层308和慢层306的分层数据存储装置中数据的最初分布的方框图。可将快层308和慢层306划分为数据块314。所有数据块314可能大小相同。可为每一个数据块314分配分层驱动器逻辑块寻址(TD LBA)310。也可为每一个数据块分配本地驱动器逻辑块寻址(LD LBA),特别是如SSD VD 208的虚拟驱动器,或特别是物理驱动器。保留空间最初可能包括多个在快层中未映射的数据块312。在快层上的所有数据块314可被获得用于数据存储,除了用于包括保留空间312的未映射数据块之夕卜。包括保留空间312的未映射数据块可能仅仅被获得用于控制器用来数据迁移。保留空间312可能是快层308的整个容量的一些百分比;例如,百分之五(5% )。图3B示出了未映射数据块的保留空间表302。在未映射数据块的保留空间表302中的每一个记录304可识别在数据存储装置中未映射数据块的位置。在图3B中的表302中的每一个记录304通过LD LBA和层识别每一个未映射数据块,但是本领域技术人员应当理解,其他识别机制可能是可能的;例如,可通过TD LBA识别每一个未映射数据块。可将保留空间表302保留在快层(FAST) 308 上。
参照图4A和4B,图4A示出了在具有快层(FAST>308和慢层(SL0ff)306的分层数据存储装置中数据分布的方框图,其中已经将数据块从慢层306迁移到快层308。数据存储系统可分析随时间的数据访问模式并确定在慢层306上的一个或多个数据块已经比在快层308上的数据块被更频繁地访问,因此变热。例如,由于随时间的频繁的用户或进程访问,在第一慢层数据块406中的数据可能变热。为了最大化数据存储系统的效率,必须将已存入第一慢层数据块406中的数据转移到快层308 ;然而,如图4A所示,必须填写在快层308上的所有被映射的数据块。在此情况中,数据存储系统可将数据从第一慢层数据块406迁移到快层308上的第一未映射快层数据块404。随后可修改保留空间表302以反映从第一慢层数据块406到第一未映射快层数据块404的数据迁移。可更新第一迁移记录402以涉及第一慢层数据块406,或可将第一迁移记录增加到保留空间表302以涉及第一慢层数据块406,而移除涉及第一未映射快层数据块404的相应记录。随后第一慢层数据块406可变为保留空间的一部分。根据本发明的数据迁移因此是对于第一数据迁移的单向;即,数据存储系统不迁移来自快层上的数据块的数据以为来自慢层上的数据块的数据提供空间。根据本发明的数据迁移引发了与在传统分层数据存储系统的数据迁移相比较的相应较低开销。
参照图5A和5B,图5A示出了在具有快层308和慢层306的分层数据存储装置中数据分布的方框图,其中已经将两个数据块从慢层306迁移到快层308。在数据存储系统确定了已经比在快层308上的数据块更频繁地访问在慢层306上的两个数据块并因此变热之处,数据存储系统可将数据从第一慢层数据块406迁移到快层308上的第一未映射快层数据块404并如图4A和4B所示修改保留空间表302。随后数据存储系统可将数据从第二慢层数据块506迁移到快层308上的第二未映射快层数据库块504。随后可修改保留空间表302以反映从第二慢层数据块506到第二未映射快层数据库块504的数据迁移。可更新第二迁移记录502以涉及第二慢层数据块506,或可将第二迁移记录增加到保留空间表302以涉及第二慢层数据块506,而移除涉及第二未映射快层块504的相应记录。随后第二慢层数控块506可变为保留空间的一部分。根据本发明的数据迁移因此继续为甚至对于超过一个数据迁移的单向。根据本发明的数据迁移引发了与在传统分层数据存储系统的数据迁移相比较的相应较低开销。
参照图6A和6B,图6A示出了在具有快层308和慢层306的分层数据存储装置中数据分布的方框图,其中数据存储系统已经经历了“冷交换”以通过从快层308上一个或多个数据块到慢层306的数据大规模迁移返回保留空间给快层308。在根据本发明的数据存储系统的操作期间,当在慢层306上的数据变热并被迁移到在快层308上的保留空间中的未映射数据块时,最初被分配在快层308上的保留空间(参见图3A的保留空间312)最终迁移到慢层306。
来自慢层306的数据块的每一个数据迁移伴随有从快层308到慢层306的保留空间的相应迁移,通过记录了保留空间的每一个数据块的位置的保留空间表302。通过跟踪在慢层306上的保留空间的数据块,数据存储系统保留了在慢层上的必要空间以周期性地迁移来自慢层308上数据块的冷数据,当随时间将热数据迁移到快层308时。
数据存储系统可包括迁移阈值。迁移阈值可以是对可从慢层306转移到快层308的保留空间数量的一些限制。迁移阈值可以是最初保留空间的一些百分比,如百分之八十(80%),尽管本领域技术人员应当理解80%是示范性的且可利用其他阈值。当达到迁移限制时,数据存储系统可启动“冷交换”。冷交换是通过将来自快层的数据块的冷数据迁移到被识别在保留空间表302中慢层上的数据块以返回保留空间给快层308的处理。可替换地,可以预定间隔,或当系统的使用在阈值下使得冷交换不会减少数据存储系统的终端用户性能时,启动冷交换。
在数据存储系统确定应启动冷交换之处,数据存储系统确定在快层308上的哪些数据已经变冷。例如,数据存储系统可确定已经比在快层308上的其他数据块更少地访问快层308上的两个数据块606、608并因此变冷。数据存储系统可将来自第一快层数据库块606的数据迁移到通过在保留空间表302中的迁移记录(参见图5A的第一迁移记录402)识别为保留空间的第一慢层数据块406。可更新识别第一慢层数据块406的迁移记录602以涉及第一快层数据块606,或可将迁移记录602增加到保留空间表302以涉及第一快层数据块606,而移除涉及第一慢层数据块406的相应记录。随后数据存储系统可将来自第二快层数据块608的数据迁移到通过在保留空间表302中的迁移记录(参见图5A的第二迁移记录502)识别为保留空间的第二慢层数据块506。可更新识别第二慢层数据块506的迁移记录604以涉及第二快层数据块608,或可将迁移记录604增加到保留空间表302以涉及第一个第二层数据块608,而移除涉及第二慢层数据块506的相应记录。在冷交换期间,将来自快层308上的多个数据块的数据迁移到慢层306,同时迁移到被识别在保留空间表中的慢层306上的预定位置。
参照图7,示出了本发明的实施方案的流程图。分层数据存储系统具有至少一个慢层,或慢数据存储装置,和至少一个快层,或快数据存储装置,可最大化数据存储系统的可用性,以通过减少沉重使用期间数据迁移操作的开销来处理数据请求。在数据存储系统基于数据访问模式确定了在慢数据存储系统上的数据已经变热之处,数据存储系统可转移702来自慢数据存储装置上的数据块的数据到在快数据存储装置上的保留空间数据块。保留空间数据块是被识别在保留空间表中的数据块。保留空间数据块不为数据存储系统的定期使用而分配并专门为数据迁移操作保持预留。当已经将数据从慢数据存储装置的数据块转移到块数据存储装置上的数据块时,数据存储系统可增加704在慢数据存储装置上的数据块,其中预先将数据定位到保留空间表中。其中预先定位数据的数据块随后可变为保留空间的一部分并可能不再为数据存储系统定期使用所获得;仅仅用于数据迁移操作。随后数据存储系统可移除706在快数据存储装置上的数据块,其中转移来自保留空间表的数据。随后在快数据存储装置上的数据块可为数据存储装置的定期使用所获得。
当保留空间表指示了已经将保留空间的一些阈值量转移到慢数据存储装置时,数据存储系统可启动冷交换以返回保留空间给快数据存储装置。数据存储装置可转移708来自快数据存储装置上的数据块的冷数据到被识别在保留空间表中的慢数据存储装置上的数据块。在快数据存储装置上的冷数据可涉及由用户或进程最少访问的在快数据存储装置上的数据或数据块。当已经将数据从快数据存储装置的数据块转移到慢数据存储装置的数据块时,数据存储系统可增加710在快数据存储装置上的数据块,其中预先将数据定位到保留空间表中。其中预先定位数据的数据块随后可变为保留空间的一部分并可能不再为数据存储系统定期使用所获得;仅仅用于数据迁移操作。随后数据存储系统可移除712在慢数据存储装置上的数据块,其中转移来自保留空间表的数据。随后在数据数据存储装置上的数据块可为数据存储装置的定期使用所获得。冷交换可将来自慢数据存储系统的多个保留空间数据块转移到快数据存储系统。一般地,保留空间转移将如此处所述一样地开始,将来自快层的数据转移到慢层并更新保留空间表。
应当相信,通过前面的说明,将理解本发明和许多其伴随的优点,应当清楚,在其组件的形式,构造和设置中可做出各种改变而不背离本发明的范围和精神或不牺牲其所有实质优点。此处之前所述的形式仅仅是其的解释性的实施方案,打算的是,后续权利要求要包含和包含这些改变。
权利要求
1.一种数据存储设备,包括: 一处理器; 一第一数据存储装置,其连接到所述处理器,所述第一数据存储装置被配置用以存储一保留空间表;和 一第二数据存储装置,其连接到所述处理器, 其中: 所述第一数据存储具有比所述第二数据存储装置相对快的访问时间; 所述表被配置用以识别所述第一数据存储装置的一离散部分和所述第二数据存储装置的一离散部分;和 所述处理器被配置用以: 将数据从所述第二数据存储装置的离散部分迁移到被识别在所述保留空间表中的所述第一数据存储装置的离散部分; 将所述第二数据存储装置的所述离散部分的位置增加到所述表中; 自所述保留空间表移除 所述第一数据存储装置的所述的离散部分的位置; 将来自所述第一数据存储装置的多个离散部分的数据转移到所述第二数据存储装置的多个离散部分; 增加多个位置,每一个位置关联于到所述保留空间表的所述第一数据存储装置的所述多个离散部分中的一个;和 移除多个位置,每一个位置关联于来自所述保留空间表的所述第二数据存储装置的所述多个离散部分中的一个。
2.根据权利要求1所述的数据存储设备,其中所述处理器进一步被配置用以监视在所述第一数据存储装置和所述第二数据存储装置之间的所述保留空间表中的位置的分布。
3.根据权利要求1所述的数据存储设备,其中所述第一数据存储装置包括一个或多个固态驱动器。
4.根据权利要求1所述的数据存储设备,其中所述第二数据存储装置包括一个或多个硬盘驱动器。
5.根据权利要求1所述的数据存储设备,其中所述处理器进一步被配置用以阻止对被识别在所述保留空间表中任意位置的数据访问操作。
6.一种数据存储设备,包括: 一处理器; 一第一数据存储装置,其连接到所述处理器,所述第一数据存储装置被配置用以存储一表;和 一第二数据存储装置,其连接到所述处理器, 其中: 所述第一数据存储具有比所述第二数据存储装置相对快的访问时间; 配置所述表以识别所述第一数据存储装置的离散部分和所述第二数据存 储装置的离散部分;和 所述处理器被配置用以: 将数据从所述第二数据存储装置的一离散部分迁移到被识别在所述表中的所述第一数据存储装置的一离散部分; 将所述第二数据存储装置的所述的离散部分的位置增加到所述表中;和 自所述表移除所述第一数据存储装置的所述离散部分。
7.根据权利要求6所述的数据存储设备,其中所述处理器进一步被配置用以监视在所述第一数据存储装置和所述第二数据存储装置之间的所述保留空间表中的位置的分布。
8.根据权利要求7所述的数据存储设备,其中所述处理器进一步被配置用以: 当在所述保留空间表中的位置的分布超出一阈值时,将来自所述第一数据存储装置的多个离散部分的数据转移到所述第二数据存储装置的多个离散部分; 增加多个位置,每一个位置关联于到所述保留空间表的所述第一数据存储装置的所述多个离散部分中的一个;和 移除多个位置,每一个位置关联于来自所述保留空间表的所述第二数据存储装置的所述多个离散部分中的一个。
9.根据权利要求6所述的数据存储设备,其中所述处理器进一步被配置以监视一系统使用度星。
10.根据权利要求9所述的数据存储设备,其中所述的处理器进一步被配置用以: 当所述系统使用度量低于一阈值时,将来自所述第一数据存储装置的多个离散部分的数据转移到所述第二数据存储装置的多个离散部分; 增加多个位置,每一个位置关联于到所述保留空间表的所述第一数据存储装置的所述多个离散部分中的一个;和 移除多个位置,每一个位置关联于来自所述保留空间表的所述第二数据存储装置的所述多个离散部分中的一个。
11.根据权利要求8所述的数据存储设备,其中所述阈值是被识别在参照所述第二数据存储装置上的位置的保留空间表中的所有位置的百分之八十。
12.根据权利要求6所述的数据存储设备,其中所述第一数据存储装置包括一个或多个固态驱动器。
13.根据权利要求6所述的数据存储设备,其中所述第二数据存储装置包括一个或多个硬盘驱动器。
14.根据权利要求6所述的数据存储设备,其中进一步配置所述处理器以阻止对被识别在所述保留空间表中任意位置的数据访问操作。
15.一种用于在数据存储系统中的层之间迁移数据的方法,包括: 将来自一慢数据存储装置的一离`散部分的数据转移到一快数据存储装置的离散部分; 将所述慢数据存储装置的所述离散部分增加到一保留空间表中;和 自所述保留空间表移除所述快数据存储装置的所述离散部分。
16.根据权利要求15所述的方法,进一步包括监视在所述慢数据存储装置和所述快数据存储装置之间的所述保留空间表中的位置的分布。
17.根据权利要求16所述的方法,进一步包括: 当在所述保留空间表中的所述位置分布超出一阈值时,将来自所述快数据存储装置的多个离散部分的数据转移到所述慢数据存储装置的多个离散部分;增加多个位置,每一个位置关联于到所述保留空间表的所述快数据存储装置的所述多个离散部分中的一个;和 移除多个位置,每一个位置关联于来自所述保留空间表的所述慢数据存储装置的所述多个离散部分中的一个。
18.根据权利要求17所述的方法,其中所述阈值是被识别在参照所述慢数据存储装置上的位置的保留空间表中的所有位置的百分之八十。
19.根据权利要求15所述的方法,其中所述快数据存储装置包括一个或多个固态驱动器。
20.根据权利要求15所述的方法,进一步包括阻止对被识别在所述保留空间表中任意位置的数据访 问操作。
全文摘要
管理层之间有效数据迁移的设备。具有快层和其中保留部分快层的慢层,当先前的冷数据变热时,将数据从慢层到保留的快层部分转移。表最初跟踪保留的快存部分中的所有空间。当数据变热并被转移到保留的快存部分时,对表修改以将在慢层的数据的先前位置增加到保留部分并从保留部分移除快层上数据的新位置。保持了保留空间表并实施从快层到慢层的数据的大规模迁移;数据迁移经常是将数据从慢层到快层迁移的单向,减少了在正常操作期间的开销。
文档编号G06F12/08GK103106151SQ20121043457
公开日2013年5月15日 申请日期2012年11月2日 优先权日2011年11月15日
发明者阿南特·巴德蒂尼, 杰拉尔德·E·史密斯, 马克·伊什 申请人:Lsi公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1