CN102713827A - 用于分层存储架构的区间迁移 - Google Patents

用于分层存储架构的区间迁移 Download PDF

Info

Publication number
CN102713827A
CN102713827A CN2010800608905A CN201080060890A CN102713827A CN 102713827 A CN102713827 A CN 102713827A CN 2010800608905 A CN2010800608905 A CN 2010800608905A CN 201080060890 A CN201080060890 A CN 201080060890A CN 102713827 A CN102713827 A CN 102713827A
Authority
CN
China
Prior art keywords
storage
data segment
tolerance
storage pools
classification
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.)
Granted
Application number
CN2010800608905A
Other languages
English (en)
Other versions
CN102713827B (zh
Inventor
D.蒙哥马利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN102713827A publication Critical patent/CN102713827A/zh
Application granted granted Critical
Publication of CN102713827B publication Critical patent/CN102713827B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

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)

Abstract

提供了一种用于计算存储环境中多个存储池的每个之间的数据迁移的方法。通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类。基于所述度量在所述多个存储池的所述任何一个中确定所述数据段的优先级。以预定间隔,基于所述度量,对于所述多个存储池的每个执行发现子池上具有最高优先级的数据段是否大于父池上具有最低优先级的数据段。如果是,则将所述子池上具有最高优先级的数据段提升到所述父池。类似的发现处理将所述父池上具有最高优先级的数据段降级到所述子池。

Description

用于分层存储架构的区间迁移
技术领域
本发明通常涉及计算机,并且更具体地,涉及用于在使用分层架构的计算存储环境中的池之间分配和迁移数据的装置、方法和计算机程序产品实施例。
背景技术
当今社会中在各种环境中找到计算机和计算机系统。可以在家里、在工作场所、在学校、在政府以及在其它环境中找到计算环境和网络。计算环境日益增加地在一个或多个存储环境中存储数据,该存储环境在许多情况下远离呈现给用户的本地接口。
这些计算存储环境可以使用通常协同工作的许多存储设备(如盘驱动器)来存储、检索和更新大量的数据,该数据然后可以提供给请求或发送数据的主机计算机。在一些情况下,大量的数据存储子系统作为单个数据存储系统统一管理。这些子系统可以通过主机“sysplex(system complex,系统复合)”配置管理,该配置组合若干处理单元或处理单元的簇。以此方式,通常包括各种类型的存储设备的多层/多系统计算环境可以用于组织和处理大量的数据。
发明内容
当前的分层存储架构要求用户(如系统管理员)亲自管理在哪一个存储等级和相关层上将创建或迁移给定的存储单元(如卷)。因为用户不能识别动态操作环境中的存储单元的优化布置,所以在一些情况下不能实现对这样的布置的理想解决方案。
考虑以上,存在对用于存储单元的动态分配和迁移的机制的需要,从系统性能观点来看,该机制重复地并准确地确定对于存储单元布置的优化解决方案。相应地,提供各种方法、系统和计算机程序产品实施例用于计算存储环境中的多个存储池的每个之间的数据迁移。
在一个这样的实施例中,仅通过示例方式,提供了一种用于多个存储池的每个之间的数据迁移的方法。多个存储池的每个通过分配给多个存储池的任何一个存储池的数据段之间共享的度量(metric)分类。基于该度量在多个存储池的任何一个存储池中确定该数据段的优先级。以预定间隔以及基于该度量,对于多个存储池的每个执行至少一个发现处理。一个这样的处理发现多个存储池的子池上具有最高优先级的数据段是否大于多个存储池的父池上具有最低优先级的数据段。如果是,如果空间可用,则将子池上具有最高优先级的数据段提升到父池。
另一个这样的处理发现多个存储池的子池上具有最低优先级的数据段是否小于多个存储池的父池上具有最高优先级的数据段。如果是,如果空间可用,则将父池上具有最高优先级的数据段降级到父池。按照将子池上具有最高优先级的数据段提升到父池和将父池上具有最高优先级的数据段降级到子池,保留子池和父池上具有最高优先级的数据段的副本,以便允许以恒定时间迁移回来。
除了前述示例性实施例,提供了各种其它方法、系统和计算机程序产品实施例,并且提供相关优点。
附图说明
为了更容易地理解本发明的优点,将通过参考附图中图示的特定实施例呈现上面简要描述的本发明的更具体描述。要理解本发明的这些附图描绘本发明的实施例,因此不被认为是限制其范围,将通过附图的使用以额外的特征和细节描述和说明本发明,附图中:
图1图示根据特定实施例的示例性计算存储环境的方块图;
图2图示示例性分级树结构的方块图,其中例如存储树内的给定级别的节点的每个集合表示包含区间池的区间层;
图3图示包括用于区间池节点的数据结构和用于区间的数据结构的示例性数据结构;
图4图示用于分层存储环境中池之间的数据段的发现和提升的示例性方法;以及
图5图示用于分层存储环境中池之间的数据段的发现和降级的示例性方法。
具体实施方式
图示的实施例提供用于在分级的虚拟存储树内(例如经由发现和提升/降级)动态地迁移数据单元的机制。该机制用于基于各种度量(如输入/输出(I/O)请求)保持诸如负载平衡和数据的优化放置的特性。此外,图示实施例的机制提供用于“冷”数据段(如区间(extent))的快速迁移(恒定时间)。因为相同段可以存在于虚拟存储树的两个层上,所以段的提升或降级可以在将指针移到该段时迅速执行,假设该段在迁移层中没有被修改。
如将进一步描述的,本发明的一些实施例可以在树数据结构上使用并入图论的方法学,其中存储树内的给定级别的每个节点集合表示包含段池的数据段(再次例如区间)层。树的根节点可以表示包含所谓的“最热”数据的最高级别层,并且随后的子节点表示“较冷数据”。相同层(树级别)内的存储池可以称为表亲。
热和冷数据可以对应于多个数据度量,如具有最高I/O速率的数据,或者本领域普通技术人员将理解的其他度量,如读取到写入速率、对于特定存储类别(例如,高速缓存、固态驱动器(SSD)、硬盘驱动器(HDD)、独立盘的冗余阵列(RAID)等级等)在预定时间间隔上的存取。在确定池之间是否应当发生迁移操作时,用于子节点的相同数据度量比较被用于父节点。通常来说,分配给父节点的那些数据段因此展现比分配给子节点的那些更多的考虑中的特定度量的属性。
相同层(树级别)内的存储池可以称为表亲。对于一层内的给定节点集合,每个节点可以表示包含按照池的度量排序的列表的段池,并且包括列出最近提升或降级的段的两个先入/先出队列。按照迁移日期排序的队列表示在相邻池内存在以潜在地允许数据以恒定时间迁移回来的那些段,假设数据还没有修改。
对于给定池,数据段只能被删除,假设区间已经提升(存在于较高层中),并且进一步地在复制到该池时,没有足够空间存在。然后,从提升列表的底部(最老)删除数据段。在一些实施例中,如果特定段不能在父子关系内迁移,则该段可以迁移到表亲。最后,替代提升和降级操作,在父子关系内可以出现交换操作,如将进一步描述的。
现在转到图1,图示了根据某些实施例的计算存储环境100的框图。计算存储环境100包括第一计算设备,如存储服务器102,其耦合到一个或多个计算设备,如客户端104。在某些实施例中,存储服务器102和客户端104可以包括任何适当的计算设备,包括本领域已知的那些,如个人计算机、工作站、大型机、中型计算机、网络装置、掌上型计算机、电话设备、平板计算机、手持式计算机等。
在一些实施例中,存储管理器106(如国际商用机器出售的
Figure BDA00001860083800042
Storage(TSM))可以用于根据本发明的各方面安全地存储和管理数据段。存储管理器106可以在存储管理服务器(如TSM服务器102)或其他中运行。在一个实施例中,存储管理器可通过和/或结合示出的处理器设备105操作。本领域普通技术人员将意识到,处理器105、存储管理器106、和相关的额外处理和/或存储器组件可以预期。IBM、Tivoli和Tivoli StorageManager是IBM公司的商标或注册商标。
TSM可以提供数据存储服务给客户端(如TSM客户端104a)用于数据的管理。TSM服务器102可以存储由一个或多个TSM客户端104a发送给TSM服务器102的文件。存储管理器106和/或处理器设备105可以允许系统管理员配置存储池,其中存储池包括用于存储从TSM客户端104a接收的数据的一组设备。存储池用作用于来自TSM客户端104的存储操作的目标,并且在TSM服务器策略和用于处理的其他构造中被参考。
如所示的,多个存储设备可以组织成存储分级。存储分级内的存储介质因此可以分组成在此称为存储池的数据结构。存储分级可以组织成与一个或多个度量(如之前描述的性能度量)对应。如所示的,存储分级108可以组织,使得分级的顶部可以包括高速缓存池110,其具有最高量或质量的特定性能度量。在高速缓存池110下面,大量的SSD类别设备可以通过相同度量组织成SSD池(例如,SSD池112和114)。在SSD池112和114下面,然后可以组织第一层的盘池(例如,盘池116、118和120)。
通过展现度量的更大量、更强属性或多个属性、或者质量,第一层盘池可以位于第二层盘池(例如,盘池122、124和126)上面。在第二层盘池下面,然后可以组织额外的一层带池(例如,带池128、130和132)。下面将进一步描述对于这样的存储分级108的组织的各种考虑。在一个实施例中,系统管理员可以通过对TSM管理客户端104b或其他机构输入,帮助执行存储分级108中的这样的组织。
考虑到图1,转向图2,描绘了存储池的分级树结构200的框图。分级树结构200示出如之前描述的父子关系的和表亲-表亲关系的各种存储池。这里再次说明,各种父、子和表亲池可以对应于特定度量(如性能度量)的展现的属性。这可以包括如读取/写入比率、每特定时间的写入数量、分条和分区特性、以及其他相关测量的测量。池208在图示实施例中描绘为顶层202中的树结构200的根。在池208下面,在层204中包含额外的表亲池210和212的集合。在池210更下面,在层206中包含额外的表亲池214、216、218和220的集合。如本领域技术人员将意识到的,对于特定实现,预期包括各种表亲池的任何数量的额外层。
各种存储池208-220的每个通过各种箭头222、224、226、228、230、232、234、236、238和240相互相关,如所示的。水平箭头226、236、238和240表示相同层的池210和212、以及214、216、218和220之间的表亲关系。从左到右,表亲池可以展现增加的质量或与度量相关的属性。在层202、204和206之间,根据父子池关系,该属性可以比表亲池之间变化更显著。与水平箭头226、236、238和240相反,垂直箭头222、224、228、230、232和234表示层202、204和206每个之间的父子关系。
为了图示父池和子池以及表亲池之间的各种关系,考虑以下示例。使用预定时间间隔上的访问的示例性性能度量,可以组织各种存储池208-220的每个,使得分配给分级树的根(例如,池208)的数据段可以展现最热I/O活动性(例如,每间隔的最大数量的访问)。层204中的池210和212然后可以展现每间隔的少一定量的访问,并且池214、216、218和220可以展现每间隔的更少的访问。横跨特定层从左到右行进,左侧池(例如,池214)可以展现比右侧池(例如,池216)少的每间隔的访问,这相应地增加,直到在最右侧池(例如,池220)中实现每给定层的最大数量的访问。
相应地,然后分级中的任何一个层中的表亲池的每个包含对于考虑的特定度量的最小和最大属性、质量、数量等。例如,分配给特定存储池的特定数据段满足在该特定池中的数据段之间共享的度量的最小数量的属性等,但是不超过该特定池的度量的最大属性。
如前所述,各个层202、204、206(以及其它目前没有图示的层)的每个可以组织为不仅与特定度量一致,而且与特定池中的数据段所分配的存储介质的特性和度量之间的关系一致。例如,并且如前所述,层202可以组织为与高速缓冲等级一致。类似地,层204可以组织为与SSD类别设备和/或独立盘冗余阵列(RAID)-10等级一致。最后,层206可以组织为与带类别设备和/或RAID-5等级一致。以此方式,特定池中的各种数据段所分配的存储介质的每个根据与存储介质自身相关联的属性,还承担对层和/或池的一些关系。
转到图3,下面示出用于分级树结构中的节点(在该情况下,按照区间组织)的各种示例性数据结构。第一数据结构302包括要与分级树中的任何一个区间存储池相关联的信息。该信息包括考虑的特定区间度量、特定池中的区间的访问列表、调度为提升到较高池(例如,父池或较高的表亲池)的各种区间的提升队列、调度为降级到较低池(例如,子池或较低的表亲池)的各种区间的降级队列、以及与相关子池、表亲池和父池有关的信息。这样的信息可以保留在与特定区间池相关联的元数据中,或者可以使用本领域普通技术人员已知的其它机制与池相关联。
以类似于数据结构302的方式,与用于区间池内的特定区间的数据结构304相关联的信息包括这样的度量信息,如写入或读取计数器数据、区间被提升的最后时间(其可以具有时间戳)、以及将区间初始化为错误并且在写入时设置的标志。存储管理器106(再次参考图1)可以在分级树内的数据段的组织、提升和降级时保持并更新这样的数据结构302和304。
下面图4和5分别图示用于分级树结构中的存储池之间的数据段的发现和提升、以及分级树结构中的数据段的发现和降级的示例性方法400和500的流程图。在下面的图4和5中,发现并提升和/或降级的数据段是区间。如本领域普通技术人员将意识到的,方法400和500中的各个步骤可以以不同方式实现以适合特定应用。此外,描述的方法可以通过各种方式实现,如在计算存储环境上操作的或者与计算存储环境相关联的硬件、软件、固件或其组合。例如,方法400和500可以部分地或全部地实现为计算机程序产品,其包括在其中存储计算机可读程序代码部分的计算机可读存储介质。计算机可读存储介质可以包括盘驱动器、闪存、数字多功能盘(DVD)、致密盘(CD)和其它类型的存储介质。
首先转到图4,方法400图示了用于分级树结构中的区间的示例性发现和提升处理。方法400开始(步骤402),其中通过所有区间层的重复行进分级树结构的n级别顺序横跨,其中从最高层中的最低级别池开始(步骤404)。然后在给定层中,然后重复每个池(步骤406)。对于给定层中的任何一个池,基于考虑的度量,方法400询问具有最高“优先级”的区间(即,具有度量的最大数量、最强属性、或最大质量等的区间)是否在优先级上大于具有最低优先级的相应的父区间(步骤408)。如果不是,则该方法然后重复到给定层中的下一(向右)池。
如果情况如此,则方法400询问最常访问的区间是否未改变地存在于父降级队列中(步骤410)。如果是,则将该区间从父池的降级队列去除(步骤412),并且该区间排入到提升队列(步骤414)。从当前池的访问列表移除该区间(步骤416),并且将其添加到提升池的访问列表(步骤418)。然后,方法400重复到下一存储池(从步骤406再次开始)。
返回步骤410,如果情况并非如此,则方法400询问该区间是否将适于父池(步骤420)。如果是,则在恒定时间复制操作中将该区间复制到父池(步骤422),并且如前所述执行步骤414、416和418。可替代地,如果在父池中没有找到空间,则该方法查询父池是否包含提升的或降级的区间(步骤424)。如果是,则从子提升或降级队列中去除该区间以保持平衡并释放该区间(步骤426)。如果父池不包含提升或降级的区间,则恢复父的提升和降级队列(步骤428),并且方法400返回步骤406以通过给定层中的额外存储池重新重复。当每个区间层中的所有区间池(再次从最高到最低)已经重复时,方法400结束(步骤430)。
如本领域普通技术人员将意识到的,方法400(以及现在要描述的500)可以在按调度的间隔执行。该调度可以按照计算存储环境的各种实现出现。例如,该调度可以与高和/或低存储活动性的时段一致。该调度可以由系统管理员使用存储管理器106(图1)或通过其它类似手段配置。
现在转到图5,方法500图示了用于分级树结构中的区间的示例性发现和降级处理。方法500开始(步骤501),并且通过所有区间层的重复行进分级树结构的相反n级别顺序横跨,其中从最低层中的最低级别池开始(步骤502)。然后在给定层中,然后重复每个池(步骤504),并且对于每个给定池,重复对应的子池(步骤506)。对于给定层中的任何一个池,基于考虑的度量,方法500询问具有最低“优先级”的区间(即,具有度量的最低数量、最弱属性、或最小质量等)是否在优先级上低于具有最高优先级的相应的父区间(步骤508)。如果不是,则该方法然后重复到给定层中的下一(向右)子池(再次从步骤506开始)。
如果情况如此,则方法500询问最少访问的区间是否未改变地存在于子提升队列中(步骤510)。如果是,则将该区间从子池的降级队列去除(步骤512),并且该区间排入到降级队列(步骤514)。从当前池的访问列表移除该区间(步骤516),并且将其添加到降级池的访问列表(步骤518)。然后,方法500重复到下一存储池(从步骤504再次开始)。
返回步骤510,如果情况并非如此,则方法500询问该区间是否将适于子池(步骤520)。如果是,则在恒定时间复制操作中将该区间复制到父池(步骤522),并且如前所述执行步骤514、516和518,返回步骤504以通过给定层上的额外池重复。可替代地,如果在父池中没有找到空间,则该方法查询子池是否包含提升的或降级的区间(步骤524)。如果是,则从子提升或降级队列中去除该区间以保持平衡并释放该区间(步骤526)。如果子池不包含提升或降级的区间,则恢复子的提升和降级队列(步骤528),并且方法500返回步骤506以通过额外子池重新重复。当每个区间层中的所有区间池(再次从最低开始)已经重复时(再次从步骤502开始),方法500结束(步骤530)。
如本领域技术人员将意识到的,本发明的各方面可以体现为系统、方法或计算机程序产品。相应地,本发明的各方面可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或组合软件和硬件方面的实施例的形式,其在此一般可以全部称为“电路”、“模块”或“系统”。此外,本发明的各方面可以采用计算机程序产品的形式,该计算机程序产品体现在其上体现计算机可读程序代码的一个或多个计算机可读介质。
可以利用一个或多个计算机可读介质的任何组合。例如,计算机可读介质可以是(但不限于)电、磁、光、电磁、红外、或半导体系统、装置或设备,或者前述的任何适当的组合。计算机可读存储介质的更具体示例(非穷尽性列表)将包括以下:具有一个或多个接线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式致密盘只读存储器(CD-ROM)、光存储设备、磁存储设备或前述的任何适当组合。在本文的上下文中,计算机可读存储介质可以是任何刚性介质,其能够包含或存储通过或结合指令执行系统、装置或设备使用的程序。
体现在计算机可读介质上的程序代码可以使用任何适当的介质传输,该介质包括但不限于无线、有线、光纤电缆、RF等或者前述的任何适当组合。用于执行本发明的各方面的操作的计算机程序代码可以以一种或多种编程语言的任何组合编写,该编程语言包括面向对象编程语言(如Java、Smalltalk、C++等)和传统过程编程语言(如“C”编程语言或类似编程语言)。程序代码可以完全在用户的计算机上执行、作为单机的软件包部分在用户的计算机上执行、部分在用户的计算机上并且部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后者情景中,远程计算机可以通过任何类型的网络连接到用户的计算机,该网络包括局域网(LAN)或广域网(WAN)、或者可以连接到外部计算机(例如,使用因特网服务提供商连接到因特网)。
以下参考根据本发明实施例的方法、装置(系统)和计算机程序代码的流程图图示和/或方块图描述了本发明的各方面。将理解的是,流程图图示和/或方块图的每个块以及流程图图示和/或方块图的每个块能够通过计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或方块图方块或多个方块中指定的功能/动作的部件。
这些计算机程序指令还可以存储在计算机可读介质中,该计算机可读介质能够指导计算机、其他可编程数据处理装置或其他设备以特定方式工作,使得计算机可读介质中存储的指令产生包括实现流程图和/或方块图方块或多个方块中指定的功能/动作的指令的制造产品。计算机程序指令还可以加载到计算机、其他可编程数据处理装置或其他设备上,以使得一系列操作步骤在计算机、其他可编程数据处理装置或其他设备上执行以便产生计算机实现的处理,使得在计算机或其他可编程数据处理装置上执行的指令提供用于实现流程图和/或方块图方块或多个方块中指定的功能/动作的处理。
上面附图中的流程图和方块图图示根据本发明各个实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或方块图中的每个方块可以表示代码的模块、片段或部分,其包括用于实现指定的(多个)逻辑功能的一个或多个可执行指令。还应当注意,在一些可替代实现中,方块中表示的功能可以不按图中所示顺序出现。例如,根据涉及的功能,连续示出的两个块实际上可以基本同时地执行,或者各方块有时候可以以相反顺序执行。还将注意的是,方块图和/或流程图图示的每个方块以及方块图和/或流程图图示中的方块的组合能够由执行专用功能或动作的基于专用硬件的系统或者专用硬件和计算机指令的组合实现。
尽管已经详细图示了本发明的一个或多个实施例,但是本领域普通技术人员将意识到,可以对这些实施例进行修改和适应,而不偏离权利要求提出的本发明的范围。

Claims (25)

1.一种通过处理器设备的用于计算存储环境中多个存储池的每个之间的数据迁移的方法,包含:
通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,其中基于所述度量在所述多个存储池的所述任何一个存储池中确定所述数据段的优先级;以及
对于所述多个存储池的每个执行以下的至少一个:
以预定间隔并基于所述度量,发现所述多个存储池的子池上具有最高优先级的数据段是否大于所述多个存储池的父池上具有最低优先级的数据段,如果空间可用,则将所述子池上具有最高优先级的数据段提升到所述父池,以及
以预定间隔并基于所述度量,发现所述多个存储池的子池上具有最低优先级的数据段是否小于所述多个存储池的父池上具有最高优先级的数据段,如果空间可用,则将所述父池上具有最高优先级的数据段降级到所述子池;
其中,按照将所述子池上具有最高优先级的数据段提升到所述父池和将所述父池上具有最高优先级的数据段降级到所述子池,保留所述子池和所述父池上具有最高优先级的数据段的副本,以便允许以恒定时间迁移回来。
2.如权利要求1所述的方法,其中,通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,包括:通过所述数据段之间共享的度量的最小和最大属性,将所述多个存储池的每个分类,其中分配给所述多个存储池的所述任何一个存储池的每个数据段至少满足度量的最小属性,但是不超过度量的最大属性。
3.如权利要求1所述的方法,其中,通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,包括:通过分配给所述多个存储池的所述任何一个的数据段的共享性能度量,将所述多个存储池的每个分类。
4.如权利要求1所述的方法,其中,通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,包括:
组织树结构的多个层,所述多个层的每个能够包括所述多个存储池的至少一个,以及
将驻留在所述多个层的相同层中的多个存储池的一些指定为表亲存储池,沿着相同层组织表亲存储池的每个,使得所述表亲存储池的任何一个中的数据段之间共享的度量的属性横跨该相同层从左到右增加。
5.如权利要求4所述的方法,其中,组织树结构的多个层,包括:指定多个层的每个对应于数据段之间共享的度量的属性的级别,其中度量的属性在级别之间变化比度量的属性在表亲存储池之间变化更显著。
6.如权利要求5所述的方法,其中,通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,包括通过以下的至少一个分类所述多个存储池的每个:读取/写入比率、读取/写入速率、在预定间隔内的存取次数、独立盘冗余阵列(RADI)阵列等级、等待时间、存储类别、分条和分区特性。
7.如权利要求4所述的方法,其中,组织树结构的多个层,包括:指定多个存储类别,包括高速缓存类别、固态驱动器(SSD)存储类别、独立盘冗余阵列(RAID)-10类别、带类别、RAID-5类别和光存储类别中的至少一个,以便对应于所述多个层的每个。
8.如权利要求1所述的方法,还包括:
按照保留所述子池和所述父池上具有最高优先级的数据段的副本,代替移动所述子池和所述父池上具有最高优先级的数据段,使用数据指针来映射所述子池和所述父池上具有最高优先级的数据段。
9.一种用于计算存储环境中多个存储池的每个之间的数据迁移的系统,包含:
在所述计算存储环境中操作的存储管理器模块,其中所述存储管理器模块适配用于:
通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,其中基于所述度量在所述多个存储池的所述任何一个存储池中确定所述数据段的优先级;以及
对于所述多个存储池的每个执行以下的至少一个:
以预定间隔并基于所述度量,发现所述多个存储池的子池上具有最高优先级的数据段是否大于所述多个存储池的父池上具有最低优先级的数据段,如果空间可用,则将所述子池上具有最高优先级的数据段提升到所述父池,以及
以预定间隔并基于所述度量,发现所述多个存储池的子池上具有最低优先级的数据段是否小于所述多个存储池的父池上具有最高优先级的数据段,如果空间可用,则将所述父池上具有最高优先级的数据段降级到所述子池;
其中,按照将所述子池上具有最高优先级的数据段提升到所述父池和将所述父池上具有最高优先级的数据段降级到所述子池,保留所述子池和所述父池上具有最高优先级的数据段的副本,以便允许以恒定时间迁移回来。
10.如权利要求9所述的系统,其中,所述存储管理器模块进一步适配用于,按照通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将多个存储池的每个分类,通过所述数据段之间共享的度量的最小和最大属性,将所述多个存储池的每个分类,其中分配给所述多个存储池的所述任何一个存储池的每个数据段至少满足度量的最小属性,但是不超过度量的最大属性。
11.如权利要求9所述的系统,其中,所述存储管理器模块进一步适配用于,按照分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类,通过分配给所述多个存储池的所述任何一个存储池的数据段的共享性能度量,将所述多个存储池的每个分类。
12.如权利要求9所述的系统,其中,所述存储管理器模块进一步适配用于,按照分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将多个存储池的每个分类:
组织树结构的多个层,所述多个层的每个能够包括所述多个存储池的至少一个,以及
将驻留在所述多个层的相同层中的多个存储池的一些指定为表亲存储池,沿着相同层组织表亲存储池的每个,使得所述表亲存储池的任何一个中的数据段之间共享的度量的属性横跨该相同层从左到右增加。
13.如权利要求12所述的系统,其中,所述存储管理器模块进一步适配用于,按照组织树结构的多个层包括指定多个层的每个对应于数据段之间共享的度量的属性的级别,其中度量的属性在级别之间变化比度量的属性在表亲存储池之间变化更显著。
14.如权利要求13所述的系统,其中,所述存储管理器模块进一步适配用于,按照通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类,通过以下的至少一个分类所述多个存储池的每个:读取/写入比率、读取/写入速率、在预定间隔内的存取次数、独立盘冗余阵列(RADI)阵列等级、等待时间、存储类别、分条和分区特性。
15.如权利要求12所述的系统,其中,所述存储管理器模块进一步适配用于,按照组织树结构的多个层,指定多个存储类别,包括高速缓存类别、固态驱动器(SSD)存储类别、独立盘冗余阵列(RAID)-10类别、带类别、RAID-5类别和光存储类别中的至少一个,以便对应于所述多个层的每个。
16.如权利要求9所述的系统,其中,所述存储管理器模块进一步适配用于,按照保留所述子池和所述父池上具有最高优先级的数据段的副本,代替移动所述子池和所述父池上具有最高优先级的数据段,使用数据指针来映射所述子池和所述父池上具有最高优先级的数据段。
17.如权利要求9所述的系统,其中,所述存储管理器模块由用户通过存储客户端配置,由用户通过存储客户端将度量提供给存储管理器模块。
18.一种通过处理器设备的用于计算存储环境中多个存储池的每个之间的数据迁移的计算机程序产品,所述计算机程序产品包括其中存储计算机可读程序代码部分的计算机可读存储介质,所述计算机可读程序代码部分包含:
第一可执行部分,用于通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量,将所述多个存储池的每个分类,其中基于所述度量在所述多个存储池的任何一个存储池中确定所述数据段的优先级;以及
第二可执行部分,用于对于所述多个存储池的每个执行以下的至少一个:
以预定间隔并基于所述度量,发现所述多个存储池的子池上具有最高优先级的数据段是否大于所述多个存储池的父池上具有最低优先级的数据段,如果空间可用,则将所述子池上具有最高优先级的数据段提升到所述父池,以及
以预定间隔并基于所述度量,发现所述多个存储池的子池上具有最低优先级的数据段是否小于所述多个存储池的父池上具有最高优先级的数据段,如果空间可用,则将所述父池上具有最高优先级的数据段降级到所述子池;
其中,按照将所述子池上具有最高优先级的数据段提升到所述父池和将所述父池上具有最高优先级的数据段降级到所述子池,保留所述子池和所述父池上具有最高优先级的数据段的副本,以便允许以恒定时间迁移回来。
19.如权利要求18所述的计算机程序产品,还包括第三可执行部分,用于按照通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类,通过所述数据段之间共享的度量的最小和最大属性,将所述多个存储池的每个分类,其中分配给所述多个存储池的所述任何一个存储池的每个数据段至少满足度量的最小属性,但是不超过度量的最大属性。
20.如权利要求18所述的计算机程序产品,还包括第三可执行部分,用于按照通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类,通过分配给所述多个存储池的任何一个存储池的数据段的共享性能度量,将所述多个存储池的每个分类。
21.如权利要求18所述的计算机程序产品,还包括第三可执行部分,用于按照通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类:
组织树结构的多个层,所述多个层的每个能够包括所述多个存储池的至少一个,以及
将驻留在所述多个层的相同层中的多个存储池的一些指定为表亲存储池,沿着相同层组织表亲存储池的每个,使得所述表亲存储池的任何一个中的数据段之间共享的度量的属性横跨该相同层从左到右增加。
22.如权利要求21所述的计算机程序产品,还包括第四可执行部分,用于按照组织树结构的多个层,指定多个层的每个对应于数据段之间共享的度量的属性的级别,其中度量的属性在级别之间变化比度量的属性在表亲存储池之间变化更显著。
23.如权利要求22所述的计算机程序产品,还包括第五可执行部分,用于按照通过分配给所述多个存储池的任何一个存储池的数据段之间共享的度量将所述多个存储池的每个分类,通过以下的至少一个分类所述多个存储池的每个:读取/写入比率、读取/写入速率、在预定间隔内的存取次数、独立盘冗余阵列(RADI)阵列等级、等待时间、存储类别、分条和分区特性。
24.如权利要求21所述的计算机程序产品,还包括第四可执行部分,用于按照组织树结构的多个层,指定多个存储类别,包括高速缓存类别、固态驱动器(SSD)存储类别、独立盘冗余阵列(RAID)-10类别、带类别、RAID-5类别和光存储类别中的至少一个,以便对应于所述多个层的每个。
25.如权利要求19所述的计算机程序产品,还组织树结构的多个层,用于按照保留所述子池和所述父池上具有最高优先级的数据段的副本,代替移动所述子池和所述父池上具有最高优先级的数据段,使用数据指针来映射所述子池和所述父池上具有最高优先级的数据段。
CN201080060890.5A 2010-01-07 2010-12-21 用于分层存储架构的区间迁移的方法和系统 Expired - Fee Related CN102713827B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/683,753 US8627004B2 (en) 2010-01-07 2010-01-07 Extent migration for tiered storage architecture
US12/683,753 2010-01-07
PCT/EP2010/070351 WO2011083040A1 (en) 2010-01-07 2010-12-21 Extent migration for tiered storage architecture

Publications (2)

Publication Number Publication Date
CN102713827A true CN102713827A (zh) 2012-10-03
CN102713827B CN102713827B (zh) 2015-11-25

Family

ID=43566691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080060890.5A Expired - Fee Related CN102713827B (zh) 2010-01-07 2010-12-21 用于分层存储架构的区间迁移的方法和系统

Country Status (3)

Country Link
US (1) US8627004B2 (zh)
CN (1) CN102713827B (zh)
WO (1) WO2011083040A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103853500A (zh) * 2012-12-07 2014-06-11 中国移动通信集团河南有限公司 一种基于海量数据的数据分配方法、装置及系统
CN103942157A (zh) * 2013-01-22 2014-07-23 国际商业机器公司 用于计算存储环境中的数据处理的方法和系统
CN104123264A (zh) * 2014-08-01 2014-10-29 浪潮(北京)电子信息产业有限公司 一种基于异构融合架构的缓存管理方法及装置
CN104571954A (zh) * 2014-12-26 2015-04-29 杭州华为数字技术有限公司 一种数据存储方法及装置
CN104937574A (zh) * 2013-01-22 2015-09-23 国际商业机器公司 不同粒度的分层缓存和迁移
CN105045525A (zh) * 2014-04-21 2015-11-11 三星电子株式会社 存储控制器、存储系统及操作存储控制器的方法
CN106030553A (zh) * 2013-04-30 2016-10-12 惠普发展公司,有限责任合伙企业 存储器网络
CN106155929A (zh) * 2015-04-17 2016-11-23 伊姆西公司 数据存储管理系统和方法
CN107329700A (zh) * 2017-06-29 2017-11-07 郑州云海信息技术有限公司 一种分布式集群数据存储方法及系统
CN112445425A (zh) * 2019-08-29 2021-03-05 国际商业机器公司 多层级存储

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8627004B2 (en) * 2010-01-07 2014-01-07 International Business Machines Corporation Extent migration for tiered storage architecture
US8566553B1 (en) * 2010-06-30 2013-10-22 Emc Corporation Techniques for automated evaluation and movement of data between storage tiers
US8250257B1 (en) * 2010-12-08 2012-08-21 Emc Corporation Techniques for balancing system I/O load
US9542326B1 (en) * 2011-06-14 2017-01-10 EMC IP Holding Company LLC Managing tiering in cache-based systems
US9330009B1 (en) * 2011-06-14 2016-05-03 Emc Corporation Managing data storage
US9250810B2 (en) * 2011-08-17 2016-02-02 International Business Machines Corporation Priority based depopulation of storage ranks
US8954671B2 (en) * 2011-10-28 2015-02-10 Hitachi, Ltd. Tiered storage device providing for migration of prioritized application specific data responsive to frequently referenced data
US9471243B2 (en) * 2011-12-15 2016-10-18 Veritas Technologies Llc Dynamic storage tiering in a virtual environment
US8375385B1 (en) * 2011-12-19 2013-02-12 Emc Corporation Techniques for parallel drive upgrade while maintaining host accessibility
JP5825131B2 (ja) * 2012-02-09 2015-12-02 富士通株式会社 ゲートウエイ装置、ノード装置、通信システム、動作期間の制御方法及びコンピュータプログラム
TW201403459A (zh) 2012-04-20 2014-01-16 Enmotus Inc 具有資料管理機制之儲存系統及操作該儲存系統之方法
US9047239B2 (en) 2013-01-02 2015-06-02 International Business Machines Corporation Determining weight values for storage devices in a storage tier to use to select one of the storage devices to use as a target storage to which data from a source storage is migrated
JP6146087B2 (ja) * 2013-03-28 2017-06-14 富士通株式会社 ストレージ制御プログラム,ストレージ制御方法,ストレージシステム及びその階層制御装置
US9753987B1 (en) * 2013-04-25 2017-09-05 EMC IP Holding Company LLC Identifying groups of similar data portions
US9424300B2 (en) * 2013-09-25 2016-08-23 International Business Machines Corporation Data allocation containers in a partitioned table of a computer database system for holding data based on usage
US9584395B1 (en) 2013-11-13 2017-02-28 Netflix, Inc. Adaptive metric collection, storage, and alert thresholds
US9569110B2 (en) * 2014-11-18 2017-02-14 International Business Machines Corporation Efficient management of cloned data
US9940057B2 (en) 2015-10-20 2018-04-10 International Business Machines Corporation I/O statistic based depopulation of storage ranks
US10437800B2 (en) 2016-12-02 2019-10-08 International Business Machines Corporation Data migration using a migration data placement tool between storage systems based on data access
US10437799B2 (en) 2016-12-02 2019-10-08 International Business Machines Corporation Data migration using a migration data placement tool between storage systems based on data access
CN110858124B (zh) * 2018-08-24 2021-06-01 华为技术有限公司 数据迁移方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050071560A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corp. Autonomic block-level hierarchical storage management for storage networks
EP1918810A2 (en) * 2006-10-30 2008-05-07 Hitachi, Ltd. Storage control device and data migration method for storage control device
CN101223498A (zh) * 2005-07-15 2008-07-16 国际商业机器公司 用于管理数据存储的方法、系统和计算机程序产品以及虚拟化引擎

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659704A (en) * 1994-12-02 1997-08-19 Hewlett-Packard Company Methods and system for reserving storage space for data migration in a redundant hierarchic data storage system by dynamically computing maximum storage space for mirror redundancy
JP2003216460A (ja) * 2002-01-21 2003-07-31 Hitachi Ltd 階層ストレージ装置及びその制御装置
JP2005539309A (ja) * 2002-09-16 2005-12-22 ティギ・コーポレイション 記憶システムアーキテクチャおよび多重キャッシュ装置
US7293133B1 (en) * 2003-12-31 2007-11-06 Veritas Operating Corporation Performing operations without requiring split mirrors in a multi-class file system
US7574560B2 (en) * 2006-01-03 2009-08-11 Emc Corporation Methods, systems, and computer program products for dynamic mapping of logical units in a redundant array of inexpensive disks (RAID) environment
JP5082310B2 (ja) * 2006-07-10 2012-11-28 日本電気株式会社 データ移行装置及びプログラム
JP2008146536A (ja) * 2006-12-13 2008-06-26 Hitachi Ltd ストレージ装置及びこれを用いたデータ管理方法
US8055864B2 (en) * 2007-08-06 2011-11-08 International Business Machines Corporation Efficient hierarchical storage management of a file system with snapshots
US20090138530A1 (en) * 2007-11-26 2009-05-28 Inventec Corporation Data management method for logical volume manager
JP4477681B2 (ja) * 2008-03-06 2010-06-09 富士通株式会社 階層記憶装置、制御装置、および制御方法
US9245382B2 (en) * 2008-10-04 2016-01-26 Microsoft Technology Licensing, Llc User-guided surface reconstruction
US8627004B2 (en) * 2010-01-07 2014-01-07 International Business Machines Corporation Extent migration for tiered storage architecture

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050071560A1 (en) * 2003-09-30 2005-03-31 International Business Machines Corp. Autonomic block-level hierarchical storage management for storage networks
CN101223498A (zh) * 2005-07-15 2008-07-16 国际商业机器公司 用于管理数据存储的方法、系统和计算机程序产品以及虚拟化引擎
EP1918810A2 (en) * 2006-10-30 2008-05-07 Hitachi, Ltd. Storage control device and data migration method for storage control device

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103853500A (zh) * 2012-12-07 2014-06-11 中国移动通信集团河南有限公司 一种基于海量数据的数据分配方法、装置及系统
CN103942157A (zh) * 2013-01-22 2014-07-23 国际商业机器公司 用于计算存储环境中的数据处理的方法和系统
CN104937574A (zh) * 2013-01-22 2015-09-23 国际商业机器公司 不同粒度的分层缓存和迁移
US9430404B2 (en) 2013-01-22 2016-08-30 International Business Machines Corporation Thinly provisioned flash cache with shared storage pool
CN104937574B (zh) * 2013-01-22 2017-06-16 国际商业机器公司 在计算存储环境中数据处理的方法和系统
CN103942157B (zh) * 2013-01-22 2017-06-23 国际商业机器公司 用于计算存储环境中的数据处理的方法和系统
CN106030553B (zh) * 2013-04-30 2020-06-30 慧与发展有限责任合伙企业 存储器网络
CN106030553A (zh) * 2013-04-30 2016-10-12 惠普发展公司,有限责任合伙企业 存储器网络
US10572150B2 (en) 2013-04-30 2020-02-25 Hewlett Packard Enterprise Development Lp Memory network with memory nodes controlling memory accesses in the memory network
CN105045525A (zh) * 2014-04-21 2015-11-11 三星电子株式会社 存储控制器、存储系统及操作存储控制器的方法
CN104123264A (zh) * 2014-08-01 2014-10-29 浪潮(北京)电子信息产业有限公司 一种基于异构融合架构的缓存管理方法及装置
CN104571954B (zh) * 2014-12-26 2018-05-18 杭州华为数字技术有限公司 一种数据存储方法及装置
CN104571954A (zh) * 2014-12-26 2015-04-29 杭州华为数字技术有限公司 一种数据存储方法及装置
CN106155929A (zh) * 2015-04-17 2016-11-23 伊姆西公司 数据存储管理系统和方法
CN107329700A (zh) * 2017-06-29 2017-11-07 郑州云海信息技术有限公司 一种分布式集群数据存储方法及系统
CN112445425A (zh) * 2019-08-29 2021-03-05 国际商业机器公司 多层级存储

Also Published As

Publication number Publication date
US20110167217A1 (en) 2011-07-07
US8627004B2 (en) 2014-01-07
CN102713827B (zh) 2015-11-25
WO2011083040A1 (en) 2011-07-14

Similar Documents

Publication Publication Date Title
CN102713827A (zh) 用于分层存储架构的区间迁移
US11086523B2 (en) Automatic tiering of storage using dynamic grouping
JP7129465B2 (ja) コグニティブ階層型ストレージ管理システムを訓練する際のユーザ満足度の最適化
Ularu et al. Perspectives on big data and big data analytics
Li et al. A cost-effective mechanism for cloud data reliability management based on proactive replica checking
CN102696009B (zh) 用于存储介质之间的数据迁移的方法和系统
CN105573660B (zh) 用于改善分簇磁盘阵列的性能的方法和装置
CN104272244B (zh) 用于对处理进行调度以实现空间节省的系统、方法
Khalifa et al. The six pillars for building big data analytics ecosystems
CN110389864A (zh) 独立盘冗余阵列重构装置及方法
US20110238672A1 (en) Cost and power efficient storage area network provisioning
CN102508789A (zh) 一种系统分级存储的方法
CN1770088A (zh) 存储网络中的增量备份操作
US8914578B2 (en) Capacity-expansion of a logical volume
US8868864B2 (en) Storage apparatus and storage apparatus control method
CN110086888A (zh) 基于RabbitMQ的多集群动态负载方法、装置、电子设备
CN101976181A (zh) 一种存储资源的管理方法及管理装置
CN103761059A (zh) 一种用于海量数据管理的多盘位存储方法及系统
CN103080906B (zh) 支援迁移目标的确定的方法及管理系统
US11210282B2 (en) Data placement optimization in a storage system according to usage and directive metadata embedded within the data
CN104040508A (zh) 填充来自第一高速缓存的轨道的第一步幅以向第二高速缓存中的第二步幅写入
CN102446072B (zh) 用于池式存储中的raid 阵列变换的系统和方法
CN103970671B (zh) 用于在存储器中分配管理数据集的系统和方法
US11256428B2 (en) Scaling raid-based storage by redistributing splits
CN106020739A (zh) 用于分布式存储的数据存储方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20151125

Termination date: 20181221