CN111684779B - 分层存储管理系统中的数据迁移 - Google Patents

分层存储管理系统中的数据迁移 Download PDF

Info

Publication number
CN111684779B
CN111684779B CN201980011413.0A CN201980011413A CN111684779B CN 111684779 B CN111684779 B CN 111684779B CN 201980011413 A CN201980011413 A CN 201980011413A CN 111684779 B CN111684779 B CN 111684779B
Authority
CN
China
Prior art keywords
data unit
storage
storage nodes
copy
data
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
Application number
CN201980011413.0A
Other languages
English (en)
Other versions
CN111684779A (zh
Inventor
增田耕一
松井壮介
三间慎介
能田毅
津田崇博
川村恒星
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 CN111684779A publication Critical patent/CN111684779A/zh
Application granted granted Critical
Publication of CN111684779B publication Critical patent/CN111684779B/zh
Active 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/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/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/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/065Replication mechanisms
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1012Load balancing

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)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

实施例提供了用于执行分层存储管理(HSM)系统中的一个或多个数据单元的拷贝操作的方法、系统和计算机程序产品。HSM系统包括上层和下层。上层包括具有网格配置的多个存储节点。所述方法包括:调度多个数据单元的拷贝操作,所述多个数据单元中的每一个存储在所述多个存储节点中的至少一个中,使得所述拷贝操作上的负载分布在存储所述多个数据单元的所述多个存储节点之间;以及根据所述调度将所述多个数据单元拷贝到所述下层。

Description

分层存储管理系统中的数据迁移
背景技术
本发明总体上涉及分层存储管理,并且更具体地涉及分层存储管理系统中的数据迁移管理。
分层存储管理(HSM)是一种数据存储技术,其通过利用快速、高成本存储介质(诸如用于主存储)以及慢速、低成本存储介质(诸如用于辅助存储)来提供高效且成本有效的数据管理。主存储和辅助存储可以例如被分级、分层或以其他方式分层布置,例如分别布置在高访问速度上层和低访问速度下层中,以促进数据检索、读/写操作等。例如,
Figure BDA0002614614580000011
TS7700存储系统和
Figure BDA0002614614580000012
频谱存档企业版本(Spectrum Archive Enterprise Edition)HSM系统可以将SSD或HDD数据存储设备用于主存储,并且将磁带存储设备用于辅助存储。某些HSM系统使用云技术(诸如
Figure BDA0002614614580000013
TS7700系列磁带虚拟化产品)来实现将云数据存储用于辅助存储。
常规HSM技术可提供HSM方案,通过所述方案,频繁访问的数据可存储在例如布置在HSM系统的上层中的主磁盘存储设备中,以便促进数据的高可用性和访问。频繁访问的数据可以保留在上层中,直到例如数据的访问请求频率下降到低于预定阈值。例如,在数据的访问请求频率下降到低于预定阈值的情况下,可执行预迁移操作,通过该预迁移操作可拷贝数据,并且随后,可执行迁移操作,通过该迁移操作可移除数据以供传送到下层进行存储。该数据连同存储在下层中的其他非频繁访问的数据可以通过再调用(recall)操作的方式被传送到上层。因而,可实现预迁移、迁移和再调用操作以为HSM系统的用户提供高效和高速的数据访问。
发明内容
在实施例中,提供了一种用于在分级存储管理系统中执行一个或多个数据单元的拷贝操作的方法。分层存储管理系统可以包括上层和下层。上层包括具有网格配置的多个存储节点。所述方法包括调度多个数据单元的拷贝操作,所述多个数据单元中的每一个存储在所述多个存储节点中的至少一个中,使得所述拷贝操作上的负载分布在存储所述多个数据单元的所述多个存储节点之间。该方法进一步包括根据所述调度执行多个数据单元到下层的拷贝操作。有利地,这通过管理关于每个存储节点的应用工作负荷以及协调各个存储节点操作来实现分级存储管理系统的优化的系统级性能和吞吐量。
在实施例中,提供了一种可连接到分层存储管理系统的存储控制器。分层存储管理系统可以包括上层和下层。上层可以包括具有网格配置的多个存储节点。控制器包括:存储器;以及通信地耦合到所述存储器的处理器。所述存储器包括指令,所述指令在由所述处理器执行时使得所述处理器:调度多个数据单元的拷贝操作,所述多个数据单元中的每一个存储在所述多个存储节点中的至少一个中,使得所述拷贝操作上的负载分布在存储所述多个数据单元的所述多个存储节点之间;以及根据所述调度将所述多个数据单元拷贝到所述下层。有利地,这通过管理关于每个存储节点的应用工作负荷以及协调各个存储节点操作来实现分级存储管理系统的优化的系统级性能和吞吐量。
在实施例中,提供了一种用于在分级存储管理系统中使用的计算机程序产品。计算机程序产品可以包括一个或多个计算机可读存储设备和存储在一个或多个计算机可读存储设备中的至少一个上的用于由计算机系统的至少一个或多个计算机处理器执行的程序指令。程序指令可由计算机系统的至少一个或多个计算机处理器执行以执行所公开的方法。
在实施例中,所提供的方法可以进一步包括:从连接至管理系统的计算设备接收对应于数据单元的写入请求,其中,数据单元包括相关联的拷贝策略;以及执行所述请求以执行对应于所述数据单元的写入操作,其中,根据所述拷贝策略并关于所述存储节点中的一个或多个执行所述请求。有利地,所述拷贝策略实现对管理系统中对应数据单元的存储冗余的数据特定控制。
在实施例中,所提供的方法可进一步包括,由域中的存储节点选择域中的存储节点中的一个或多个,用于关于待拷贝的对应数据单元执行拷贝操作,其中存储节点是基于以下来选择的:确定待拷贝的数据单元的副本存储在存储节点中的一个或多个中,其中在超过预定阈值的时间量内未对数据单元执行拷贝操作;或者,确定所述存储节点自身存储所述待拷贝数据单元的副本,其中所述数据单元的副本数小于所述域中其他任一存储节点中存储的副本数。有利地,这针对例如具有所识别的数据卷的副本的另一个集群由于任何原因而无法迁移卷的情况提供了“安全网”。
本发明的上述方面不旨在列举本发明的所有所需特征,并且应理解本发明包括这些组成元件的所有组合和子组合。
附图说明
图1示出根据本发明的实施例的HSM系统。
图2示出根据本发明的实施例的构成HSM系统的主存储网格的存储集群120的框图。
图3示出根据本发明的实施例的表示用于为要存储在HSM系统中的数据卷设置拷贝策略的操作的流程图。
图4示出根据本发明的实施例的表示响应于从连接到HSM系统的主机计算机115接收到写入请求而在主存储级中存储和拷贝数据卷的操作的流程图。
图5示出根据本发明的实施例的表示将存储在主存储层中的多个集群中的数据文件拷贝到HSM系统中的云存储的拷贝操作的流程图。
图6A和6B示出根据本发明的实施例的用于描述响应于从连接到HSM系统的主机计算机接收到写入请求而在主存储级中存储和拷贝数据卷的操作的示意图。
图7示出根据本发明的实施例的用于描述将存储在主存储层中的多个集群中的数据文件拷贝到HSM系统中的云存储的拷贝操作的示意图。
图8示出根据本发明的实施例的示出如可以由主机计算机、存储集群和/或计算平台体现的数据处理设备的优选硬件配置的示例的示意图。
图9示出根据本发明的实施例的云计算环境。
图10示出根据本发明的实施例的云抽象模型层。
具体实施方式
在此披露了本发明的详细实施例是为了描述和展示所要求的结构以及方法的目的,这些结构以及方法可以用不同的形式来实施,并且不旨在以任何方式穷尽、或者局限于所披露的实施例。在不脱离如所附权利要求书及其等效物界定的所公开实施例的范围和精神的情况下,许多修改和变化将对所属领域的技术人员显而易见。选择本文中所使用的术语以最佳地解释一个或多个实施例的原理、实际应用或相对于常规技术的技术改进,或使本领域普通技术人员能够理解本文中所公开的实施例。如所描述的,众所周知的特征和技术的细节可以被概括或省略,以便于描述或避免不必要地模糊本发明的实施例。
除非本文明确或以其他方式定义,否则所有术语将被给予其最广泛的合理解释,包括隐含的含义、本领域技术人员将理解的含义、或如词典、论文等中定义的含义。进一步地,如在此所使用的,“一个”、“一种”、“该”等的单数形式还包括其复数形式,如适当的或以其他方式指定的。进一步地,如在此所使用的术语“包括(comprises)”和/或“包括(comprising)”指定所陈述的特征、整合、步骤、操作、元件和/或组件的存在,并且不排除一个或多个其他特征、整合、步骤、操作、元件、组件和/或其组的存在或添加。
说明书中对“一个实施例”、“实施例”、“示例实施例”等的引用指示所描述的实施例可以包括一个或多个具体特征、结构或特性,但是应当理解,此类具体特征、结构或特性可以是或可以不是在此的本发明的每个和所有披露的实施例共有的。此外,这样的短语不一定指任何一个特定实施例本身。照此,当结合实施例来描述一个或多个特定特征、结构或特性时,认为在适用的情况下,无论是否明确描述,结合其他实施例来影响这样的一个或多个特征、结构或特性在本领域技术人员的知识范围内。
不同存储系统可实施HSM,以努力降低成本和改进性能,例如关于数据完整性、冗余性等。这种系统的上层可包括昂贵的存储介质,诸如SSD、HDD等形式的存储介质,以提供高数据检索速度和可用性。下层可以包括诸如磁带驱动器等形式的廉价存储介质,以降低成本。
如在下文中的说明书中所描述的,上层可以被称为“主存储”、“主存储级”等。进一步,下层可以被称为“辅助存储”、“辅助存储级”等。应当理解,如本领域技术人员可以理解的,这样的引用包括根据本发明的实施例的其他类型的设备。此外,应当理解,在本发明的不同实施例中可包含两个以上存储级,且此类实施例可单独地或以不同组合应用于不同存储级中的一个或多个上。
在本发明的不同实施例中,主存储级可以包括可以经由一个或多个节点多路复用和支持的存储设备和计算平台的“网格”配置。如在下文中的说明书中所描述的,每个节点可以被称为“集群”。进一步地,以网格配置安排的集群组可以被称为“域(domain)”。
在本发明的不同实施例中,辅助存储可以是、包括或以其他方式实现云数据存储(在下文中,“云存储”)。通常,云存储可包括云计算环境,通过该云计算环境可提供数据存储功能。云计算环境可包括例如可通过云层抽象的虚拟或逻辑计算资源,使得异构计算设备表现为单个无缝资源池,诸如单个存储器池、处理池等。根据本发明的实施例,资源可以包括例如不同类型的物理或逻辑处理资源、数据或存储器资源、服务器、网络或存储设备。换言之,云存储可看起来是单个目标、对象或实体,如由例如连接的用户计算平台等可观察的或以其他方式可感知的。
在本发明的实施例中,计算平台或设备(诸如连接到HSM系统的主机计算平台)可做出、提交或以其他方式传送将数据写入到主存储级的集群中的至少一个的请求。该请求可以包括一个或多个写数据指令。在实施例中,请求可包括存储的数据卷、数据单元等。在实施例中,可根据一个或多个预定义的拷贝策略,拷贝所存储的数据卷以存储在主存储级的域中的集群中的至少一个上。如本文所述,假设主机以数据卷或按照数据卷写入数据;然而,本发明的实施例不限于任何特定单元或数据测量或计量的类型。因而,本发明的实施例可以实现任何类型的数据单元或测量,诸如固定大小数据单元、可变大小数据单元、卷、文件、块、对象、段、记录等。
在本发明的实施例中,拷贝策略可由用户预定义。在实施例中,拷贝策略可定义、识别、指定、授权或以其他方式指定可存储数据卷的一个或多个副本的HSM系统的特定集群。进一步,拷贝策略可指定特定时间段,诸如与相应条件或事件相关联,在该特定时间段期间,特定集群可存储副本。卷的副本可以与用户相关联。有利地,通过拷贝策略,这使得能够控制可存储在主存储的域中的卷的多个副本,进而使得能够控制关于副本在HSM系统中的存储的冗余水平。在示例中,如根据每个分别关联的拷贝策略指定的,诸如卷-A的卷可以存储在集群-2、集群-4和集群-6中,诸如卷-B的卷可以存储在集群-2和集群-4中,并且诸如卷-C的卷可以仅存储在集群-2中。
在本发明的不同实施例中,可根据预定义的迁移算法将数据卷迁移到HSM系统中的云存储。在不同实施例中,存储在主存储中的目标数据卷可被拷贝(即,预迁移)到辅助存储,并且可稍后在例如由主机计算机等对目标数据卷的访问的次数下降到低于预定阈值达某一时间段时从主存储移除(即,迁移)。
在不同实施例中,目标数据卷可替代地被延迟,并且在例如需要确保主存储级中的空闲盘空间用于新的写入请求时被移除。在完成对应数据卷的迁移操作之后,数据卷可仅存储在辅助存储中。在根据本发明的实施例的HSM系统中可以使用不同迁移算法。
在上述示例中,如果集群-2分别并且依次对卷-A、卷-B和卷-C执行迁移操作,以便转移到云存储,则集群-4和集群-6可能不对卷执行拷贝操作。在示例中,这将导致集群-2上的负载(即,工作负荷)的集中,这是由于每个卷的拷贝操作的执行,从而导致完成所需的时间量增加。因而,需要这样的诸如与在这样的情形中的数据迁移有关的任务的优化性能。
为了实现这一点,根据本发明的实施例的HSM系统的每个集群可利用分层存储控制器来关于数据卷调度拷贝操作(即,预迁移操作),其中每个数据卷可存储在一个或多个集群中。控制器的使用使得能够在域中的集群之间分配由拷贝操作的执行导致的负载。因此,可根据第一存储级的集群的调度向第二存储级的云存储执行拷贝操作。在上述示例中,这允许将卷A从集群-6迁移到云存储、将卷B从集群-4迁移到云存储以及将卷C从集群-2迁移到云存储。随后,如上所述,可以移除存储在主存储中的每个卷。照此,通过由拷贝操作的执行以及在数据的迁移中执行的其他相关操作引起的负载的有效分布来实现优化的性能。
现在将参考附图描述本发明的实施例。
图1示出根据本发明的实施例的HSM系统。在实施例中,主机计算机115经由网络125连接到HSM系统100。网络125可以是适合于数据交换或通信的任何类型的数据网络,包括但不限于局域网(LAN)或广域网(WAN)、SCSI(小型计算机系统接口)、光纤通道、ESCON、FICON、USB(通用串行总线)。例如,HSM系统可经由FISCON通信信道连接到主机计算机。如图1所示,诸如主机计算机115a和115b的主机计算机可以分别经由网络125a和125b连接到HSM系统。每个主机计算机115可以是单个且不同的计算设备,诸如大型计算机、服务器计算机、膝上型计算机、平板计算机、笔记本计算机、个人计算机(PC)、台式计算机、个人数字助理(PDA)、智能电话、瘦客户端或能够经由网络125与HSM系统100通信的任何其他可编程电子设备。每一主机计算机115可传送将数据写入到HSM系统100和从HSM系统100读取数据的请求以便完成不同数据处理任务。如上所述,每个主机计算机115可以传送写入和读取关于卷的数据的请求。每个主机计算机115可包括内部和外部硬件组件,诸如关于图8详细显示和描述的。
在本发明的实施例中,HSM系统100可包括主存储级105和第二存储级110。在本公开中,第二存储级110可以另外称为辅助存储110和云存储110。在实施例中,主存储级105和第二存储级110可以分别表示例如HSM系统100的上层和下层。在实施例中,主存储级105可包括网格配置,其中存储设备和服务器可通过一个或多个存储节点或集群的方式多路复用。HSM系统100的域对于计算装置(诸如主机计算机115)可看起来是单个节点。在实施例中,域可以利用六个存储集群120a-f,每个存储集群由网格网络5互连。在实施例中,每个集群可以通过例如
Figure BDA0002614614580000081
TS7700虚拟磁带系统来实现。
在本发明的实施例中,集群120a-f中的一个或多个可经由网络125连接到主机计算机115,用于例如关于对应数据卷的读取/写入请求的通信。例如,集群120a(集群-1)和120f(集群-6)可以经由网络125a连接到主机115a,而集群120c(集群-3)和120d(集群-4)可以经由网络125b连接到主机115b,如图1中所描绘的。进一步,集群120a-120f可以经由网格网络130连接用于在网格配置中通信。
集群120a-120f可以经由网络135连接到第二存储级110以用于数据卷的通信、预迁移、迁移和/或再调用。第二存储级110可以是或者以其他方式包括例如云存储系统。类似于HSM系统100的域,第二存储级110对于计算装置(例如主机计算机115)可看起来为单个节点。第二存储级110可包括例如存储子系统、互连结构(光纤通道、InfiniBand、以太网等)、存储节点、接口节点、文件系统等。第二存储级110可以用于提供存储资源作为云存储服务的一部分。HSM系统100可以另外包括根据本发明的实施例的其他组件和配置。
图2示出根据本发明的实施例的构成HSM系统的主存储网格的存储集群120的框图。
参见图2,存储集群120可以包括用于仿真磁带驱动器、磁带库等的虚拟化节点205和盘存储220。每个集群120可以包括分层存储控制器225,用于管理盘存储220和辅助存储110之间的数据移动或传送,以及用于在盘存储220和远程存储集群的盘存储之间移动或拷贝数据。远程存储集群的盘存储可以包括例如一个或多个盘驱动器,诸如独立磁盘冗余阵列(RAID)、磁盘簇(just a bunch of disks,JBOD)、固态驱动器(SSD)等。
在本发明的实施例中,盘存储220可用于提供包含可基于传统磁带卷仿真的逻辑卷的虚拟卷高速缓存。盘存储220可以存储逻辑卷以用于本地和远程访问。在实施例中,虚拟化节点205可以包括磁带守护进程(daemon),例如磁带守护进程210和215,用于对虚拟卷文件进行操作,这样虚拟卷文件可以驻留在盘存储220上或远程高速缓存盘存储上。盘存储220可以是例如本地高速缓存盘存储。虚拟化节点205可包含用于并行处理虚拟磁带装置的任何数目的磁带守护进程,例如在
Figure BDA0002614614580000091
TS7700系统中,其可一次支持多达496个磁带守护进程实例。
如图2所示,分层存储控制器225可以包括网格管理器230、远程文件访问服务器235、数据移动器240、盘存储管理器245、再调用管理器250、数据库255和管理接口260。
网格管理器230可以用于基于存储在每个集群120的数据库255中的数据来协调集群120之间的操作,以确定在特定时间点哪个集群120存储、包括或以其他方式拥有域中所有数据卷的当前副本。网格管理器230还可以用于根据一个或多个拷贝策略协调集群之间的数据拷贝,该拷贝策略可以存储在例如每个集群的数据库255中。远程文件访问服务器235可以用于提供到诸如远程集群的盘存储220的高速缓存的链接。数据移动器240可用于控制在集群120之间执行的拷贝的数据传输操作以及在盘存储220与辅助存储110之间的数据卷的传输。
盘存储管理器245可用于控制盘存储220与辅助存储110之间的数据卷的拷贝,并且可进一步控制盘存储220中的数据的冗余副本的后续移除。盘存储管理器245可进一步用于通信控制信号,以用于在盘存储220与数据库255的其他组件之间平衡负载和数据流。再调用管理器250可以用于代表虚拟化节点205和网格管理器230对盘存储器220和辅助存储器110的数据进行排队和控制再调用。
数据库255可用于存储在关于主存储级105的域中的所有数据卷识别存储数据卷的一个或多个副本的一个或多个集群时使用的数据。数据库255可进一步用于存储在识别存储对应于数据卷中的每一个的拷贝策略的一个或多个集群时使用的数据。每个拷贝策略可以与唯一标识符相关联。管理接口260可以用于提供关于每个存储集群120的信息以启用用户控制和其配置。
存储集群120可为例如
Figure BDA0002614614580000101
TS7700系统,其可经实施以在不同类型的HSM系统中提供虚拟磁带存储功能。根据本发明的实施例,可以其他方式实现不同类型的存储系统。
图3示出根据本发明的实施例的表示用于为要存储在HSM系统中的数据卷设置拷贝策略的操作的流程图300。
在步骤S305中,过程开始。
在步骤S310,可在诸如主机计算机115之一的主机计算机处创建新的数据卷。
在步骤S315,可将拷贝策略数据附加到数据卷。在本发明的实施例中,拷贝策略数据可以是或者以其他方式包括与拷贝策略相关联的标识符,从而可以被存储在存储集群120的数据库255中。拷贝策略数据的附加可包括诸如通过计算机程序执行相关联的归档操作,其可确定数据卷是否满足关于相关联的拷贝策略的预定义条件。这些归档操作可以另外由用户执行。预定义条件可涉及与个别数据卷相关联的一个或多个属性,且可包含例如数据卷的文件类型(例如,电影文件、图像文件、文本文件、应用程序文件等)、例如相对于重要性的分类或等级、大小、作者/创建者、安全等级、卷名称、内容、元标签、附加评论、版本、创建时间、修改时间等附加到数据卷的标签。
在步骤S320,主机计算机115可随后将对应于创建的数据卷的写入请求连同卷数据本身经由网络125发送到HSM系统100。
在步骤S325,由HSM系统100的一个或多个存储集群120继续该过程。
在本发明的实施例中,主机计算机115a可以向集群-6(120f)发送与卷-A相关联的写入请求,如图6A所示。图6A示出根据本发明的实施例的用于描述响应于从连接到HSM系统的主机计算机接收到写入请求而将数据卷存储在主存储级中的操作的示意图。
图4示出根据本发明的实施例的代表与响应于从主机计算机115接收到写入请求而在主存储级中存储和拷贝数据卷相关联的操作的流程图。
在步骤S405,过程400开始。在步骤S410,域115中的存储集群120中的一个接收包括对应的数据卷的写入请求,如从主机计算机115发送的。写入请求可由存储集群(诸如集群-6 120f)接收,如图6A所示。在步骤S415,存储集群120检查与对应于接收到的写入请求的数据卷有关的拷贝策略。通过使用附加到数据卷的拷贝策略标识符,从存储在数据库255中的拷贝策略中识别拷贝策略。在步骤S420,如果识别到与写入请求对应的拷贝策略,那么确定是否将数据卷写入这个集群中。在识别到对应的拷贝策略的情况下,处理进行到步骤S425。在没有识别到对应的拷贝策略的情况下,处理进行到步骤S435。在步骤S425,根据所识别的拷贝策略将数据卷存储在存储集群的本地盘存储装置220中。在步骤S430,将表示数据卷已被写入存储集群的信息存储在本地盘存储装置220中,并且记录在本地数据库255中。该信息也被发送或广播到主存储级105的域中的所有其他存储集群120,以相应地更新每个集群的数据库。在步骤435,可做出关于卷是否将被写入主存储级105的域中的一个或多个其他集群的确定。在本发明的实施例中,可基于在步骤S415识别的适用于数据卷的拷贝策略以及指示主存储级105的域中的哪个集群当前存储数据卷的副本的信息进行确定,该信息可存储在每个集群的数据库255中。在步骤S445,根据在步骤435做出的确定来转发写入请求。在步骤S450,过程结束。
在本发明的实施例中,拷贝策略可以是或者以其他方式包括表示立即拷贝、推迟拷贝、时间延迟拷贝或同步拷贝的指令。如果拷贝策略是立即拷贝,那么当卷在接收写入请求的当前存储集群中被关闭时,确定卷被写入其他存储集群中。如果拷贝策略是推迟拷贝,则当在当前存储集群中卷被关闭之后已经经过特定时间段时,确定卷被写入其他存储集群中。如果拷贝策略是时间延迟拷贝,则当程序自动指定或用户指定的时间到来时,确定卷被写入其他存储集群中。如果所述拷贝策略是同步拷贝,则确定在当前存储集群中所述卷关闭之前所述卷被写入其他存储集群中,使得所述卷被同时写入所述当前存储集群和所述其他存储集群中。
在本发明的实施例中,如图6B所示,根据所识别的拷贝策略将存储在集群-6(120f)中的卷A拷贝到集群-2(120b)和集群-4(120d)。图6B示出用于描述根据本发明的实施例的响应于从连接到HSM系统的主机计算机接收写入请求而拷贝主存储级中的数据卷的操作的图。
图5显示了根据本发明的实施例的表示将存储在主存储级中的多个集群中的数据文件迁移到HSM系统中的云存储的操作的流程图。迁移操作可作为数据卷迁移过程500的一部分来执行。
在步骤S505,数据卷迁移过程500开始。在本发明的不同实施例中,过程500可以定期触发,或者响应于特定事件或条件的发生而触发。例如,当存储集群120中的一个存储集群的盘存储的空闲空间的量变得小于预定阈值时,可以触发过程500。
在步骤S510,每个相应存储集群然后根据创建时间、最后访问时间或如可与每个数据卷相关联的其他属性对本地存储的数据卷进行排序。数据卷可在排序时被存储在每个相应存储集群的本地盘存储220中,并且可包括被确定为迁移到辅助存储110的那些数据卷。如果数据卷在某一时间段内未被使用或访问,则可确定将其迁移到云存储110。
在步骤S515,每个集群对存储在每个对应集群中的每个数据卷的主存储级105的域中的副本的最小数量(“N”)进行计数。每个集群可基于广播数据对副本的数量进行计数,以确定哪个集群在主存储级105的域中具有或存储每个相应数据卷的当前副本,如先前所述。
在步骤S520处,每个集群识别域中尚未处理的一个或多个数据卷(S520)。
在步骤S525中,对于在步骤S520中每个识别的数据卷,每个集群确定该卷是否比预定阈值旧。在本发明的实施例中,其中步骤S525处的确定产生真或“是”结果,那么过程进行到步骤535,在此可将所识别的数据卷添加到辅助存储110的迁移队列。有利地,步骤S525和S535用作以下情形的“安全网”:例如,存储所识别的数据卷的副本的另一个集群由于影响另一个集群的局部化错误而无法迁移该卷。在步骤S525处的确定产生假或“否”结果的实施例中,过程替代地进行到步骤S530,在此存储集群120确定所识别数据卷的副本数量是否等于“N”。在步骤S530处的确定产生真或“是”结果的情况下,可将数据卷添加到辅助存储110的迁移队列中,用于调度相关联的迁移操作。当在步骤S530的确定产生假或“否”结果时,过程继续回到步骤S520,以对另一个未处理的数据量重复该过程。
在步骤S540,由每个存储集群分别确定是否仍有任何未处理的数据卷剩余。在本发明的实施例中,在确定产生真或“是”结果的情况下,该过程相应地继续回到步骤S510以处理未处理的数据卷。在该确定产生假或“否”结果的情况下,该过程在步骤S545结束。应当注意,如果连接到HSM系统的主机计算机在拷贝操作之后的某个时间段内不使用它们(图5中未示出),则在过程500期间拷贝的卷将从主存储移除。
现在将参见图7描述根据本发明实施例的示例拷贝操作。图7示出了用于描述根据本发明的实施例的将存储在主存储层或级中的多个集群中的数据卷迁移到HSM系统中的云存储的操作的图。
需要说明的是,本示例基于本公开的前一示例,其中在主存储级105的域中存在六个(6)存储集群120a-120f,并且集群-2(120b)存储卷-A、卷-B和卷-C,集群-4存储卷-A和卷-B,集群-6仅存储卷-A,并且进一步地,其中数据卷被确定和选择迁移到云存储110,这可能是由于在某一时间段内缺少用户请求的对各个卷中的每一个的访问。另外,在以下示例中还假设,卷-A具有最少最老(即,最新)的创建时间,卷-B具有第二老的创建时间,并且卷-C相对于卷-A和卷-B具有最老的创建时间。因此,在该示例中,集群-6(120f)对卷-C、卷-B、然后卷-A进行排序,并且进一步地,集群-4(120d)对卷-B和卷-A进行排序,其中例如在步骤S510中,通过每个相应的集群按照上述顺序对每组卷进行排序。集群-2不执行这样的排序操作,因为它仅具有卷-A。
在该示例中,这导致主存储级105的域中的卷-A的三个副本、卷-B的两个副本和卷-C的一个副本。因此,在步骤S515,存储集群-2识别出集群-2中存储的卷的副本的数量“N”中的最小数量是一,因为对于卷-A“N”是“3”,对于卷-B“N”是“2”,并且对于卷C“N”是“1”。类似地,在步骤S515,存储集群-4识别出卷的副本的数量“N”中的最小数量是2,并且集群-6识别出卷的副本的数量“N”中的最小数量是1。
在该示例中,在步骤S520至S535,集群-2将卷-C添加到其迁移队列中,因为主存储级105的域中的卷-C的副本数量等于集群-2所识别出的最小数量(即一(1))。集群-4将卷-B添加到其迁移队列,因为主存储级105的域中的卷-B的副本的数量等于集群-4识别出的最小数量(即二(2))。最后,集群-6将卷-A添加到其迁移队列中,因为主存储级105的域中的卷-A的副本数量等于集群-6所识别出的最小数量(即三(3))。
在该示例中,卷-A从集群-6被拷贝,卷-B从集群-4被拷贝,并且卷-C从集群-2被拷贝到辅助存储110(即,云存储)。作为本发明实施例的实现的结果,由迁移操作引起的负载被有效地分布在域中的存储集群之间,并且迁移性能被最大化。再次,应当注意,在一个实施例中,如果连接至HSM系统的主机计算机在拷贝操作之后的某个时间段内不使用卷-A、B和C,则卷-A、B和C将从主存储移除。
在本发明的不同实施例中,如上所述,可以假设辅助存储是云中的单个目标。在本发明的其他实施例中,辅助存储可以提供具有两个或更多个云存储节点的云服务,每个云存储节点可以是具有唯一统一资源定位符(URL)的单个目标。在此类实施例中,例如,存储云节点可分别建立在日本和美国,并且云服务的供应商可负责在存储云节点之间拷贝数据。在这样的多个云存储节点场景中,一旦卷被写入存储云节点中的一个中,云服务就可将其拷贝到云服务的存储云节点中的其他存储云节点。如果辅助存储涉及多个云服务,则主存储的存储集群可以将要被迁移的卷拷贝到每个云服务的辅助存储。
图8示出根据本发明的实施例的示出如可由主机计算机115、存储集群120和/或诸如辅助存储级110的计算平台体现的数据处理设备10的优选硬件配置的示例的图。数据处理设备10可以是例如计算平台,诸如通用计算设备、服务器或如参见图1描述的任何其他类型的计算平台。如图8所示,数据处理设备10可以是、包括、或以其他方式由例如计算机系统/服务器12支持。计算机系统/服务器12的组件可以包括例如一个或多个处理器或处理单元16、系统存储器28和用于将包括系统存储器28的不同系统组件耦合到处理器16的总线18。
总线18表示任何类型的总线结构或设备,诸如包括存储器总线、存储器控制器、外围总线、加速图形端口、使用多种总线架构中的任一种的处理器或局部总线等。例如,总线结构可以是或包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线、外围组件互连(PCI)总线等。
计算机系统/服务器12通常可以包括例如各种计算机系统可读介质。这样的介质可以是可由计算机系统/服务器12访问的任何可用类型的介质,并且可以包括例如易失性和非易失性介质以及可移动和不可移动介质。
系统存储器28可包含易失性计算机系统可读媒体,例如随机存取存储器(RAM)30和/或高速缓冲存储器32。计算机系统/服务器12还可以包括其他可移动/不可移动和易失性/非易失性计算机系统存储介质。仅通过示例的方式,可以提供存储系统34用于从不可移动、非易失性磁介质(未示出,并且通常被称为“硬盘驱动器”)读取和向其写入。尽管未示出,可以提供用于从可移除的非易失性磁盘(例如,“软盘”)读取和向其写入的磁盘驱动器以及用于从可移除的非易失性光盘(如CD-ROM、DVD-ROM或其他光学介质)读取或向其写入的光盘驱动器。在这样的实例中,每一个都可以通过一个或多个数据介质接口连接到总线18。如下面进一步描绘和描述的,存储器28可以包括具有一组(即,至少一组)程序模块或指令的至少一个程序产品,用于执行的程序模块或指令可以被配置为执行本发明的各种功能,如这里所述。
计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储媒质可以是例如电子、磁性、电磁、光学、红外或半导体系统、装置或设备,或其任何合适的组合。例如,计算机可读存储介质可以是或包括具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储设备、磁存储设备、或其任何合适的组合。在本发明的上下文中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序由指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用。
计算机可读信号介质可包括其中体现有计算机可读程序代码的传播数据信号(例如,在基带中或者作为载波的一部分)。这种传播信号可采取不同形式,诸如电磁、光学、其任何合适的组合等。计算机可读信号介质可为并非计算机可读存储介质的任何计算机可读介质,其可用以传送、传播或传输用于由指令执行系统、设备或装置使用或结合指令执行系统、设备或装置执行的程序或程序指令。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括,例如,无线、有线、光缆、射频(RF)等,或其任意适当的组合。
具有一组(即,至少一组)程序模块42的程序/实用工具40可以诸如借助于例如操作系统、一个或多个应用程序、程序模块或任何其他形式的程序数据存储在存储器28中,并且可以单独地或以不同组合用在联网环境的实现中。通常,程序模块42可用于实施本文所述的本发明的各种功能或方法。
计算机系统/服务器12可以与显示器24和/或一个或多个外部设备14(例如键盘、定点设备和/或任何其他类型的用户接口或输入/输出(I/O)设备)通信。显示器24可用于(例如)提供用于向用户显示数据或信息的接口或机制,且可为(例如)显示器、监视器、电视屏幕等。
通常,计算机系统/服务器12可以与用于实现与其的用户交互的任何类型的设备进行通信。进一步,计算机系统/服务器12可以与任何类型的设备通信,诸如包括网卡、调制解调器等,这些设备可以用于实现计算机系统/服务器12与一个或多个其他计算设备或平台之间的通信。这种通信可以例如通过I/O接口22进行。进一步,计算机系统/服务器12可以例如通过网络适配器20与一个或多个网络(例如局域网(LAN)、通用广域网(WAN)、公共网络(例如互联网)等)通信。如图8所示,网络适配器20可以通过总线18与计算机系统/服务器12的其他组件通信。应当理解,尽管未示出,其他硬件和/或软件组件可由计算机系统/服务器12使用或结合计算机系统/服务器12使用。这样的硬件和/或软件组件可以包括例如一个或多个微代码、设备驱动器、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器、数据归档存储系统等等。
本发明可以是任何可能的集成技术细节水平的系统、方法和/或计算机程序产品。所述计算机程序产品可包含上面具有计算机可读程序指令的计算机可读存储介质,所述计算机可读程序指令用于致使处理器执行本发明的方面。
计算机可读存储介质可以是可以保留和存储指令以供指令执行设备使用的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述各项的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、诸如穿孔卡或具有记录在其上的指令的凹槽中的凸起结构的机械编码设备、以及前述的任意合适组合。如本文中所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输媒质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。
本文所述的计算机可读程序指令可从计算机可读存储介质下载到相应的计算/处理设备,或经由网络(例如,互联网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编器指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据、或以一种或多种编程语言(包括面向对象的编程语言,诸如Smalltalk、C++等)和过程编程语言(诸如“C”编程语言或类似的编程语言)。计算机可读程序指令可完全在用户”的计算机上执行、部分在用户”的计算机上执行、作为独立软件包执行、部分在用户”的计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后一种情形中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以便执行本发明的方面。
本文中参考根据本发明的实施例的方法、设备(系统)和计算机程序产品的流程图说明和/或框图描述本发明的方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令来实现。
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的一个或多个块中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储媒质中,所述计算机可读存储媒质可以指引计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得具有存储在其中的指令的计算机可读存储媒质包括制品,所述制品包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各方面的指令。
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得一系列操作步骤在计算机、其他可编程装置或其他设备上执行以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现在流程图和/或框图的一个或多个框中指定的功能/动作。
附图中的流程图和框图图示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。对此,流程图或框图中的每个方框可以代表模块、段或指令的一部分,其包括用于实现规定的逻辑功能的一个或多个可执行指令。在一些替代实施例中,框中所标注的功能可以不以图中所标注的次序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还将注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合可以由基于专用硬件的系统来实现,所述基于专用硬件的系统执行指定的功能或动作或执行专用硬件与计算机指令的组合。
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
现在参见图9,描绘了说明性云计算环境50。如图所示,云计算环境50包括一个或多个云计算节点12,云消费者使用的本地计算设备(诸如个人数字助理(PDA)或移动电话54A、台式计算机54B、膝上型计算机54C和/或汽车计算机系统54N)可与云计算节点12进行通信。节点12可彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中,诸如上文描述的私有云、社区云、公共云或混合云或其组合。这允许云计算环境50提供基础结构、平台和/或软件作为服务,云消费者不需要为其维护本地计算设备上的资源。应当理解,图9中所示的计算设备54A-N的类型仅旨在是说明性的,并且计算节点12和云计算环境50可通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算机化设备通信。
现在参见图10,示出了由云计算环境50(图9)提供的一组功能抽象层。应预先理解,图10中所示的部件、层和功能旨在仅是说明性的,并且本发明的实施例不限于此。如所描绘的,提供了以下层和相应的功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机61;基于RISC(精简指令集计算机)体系结构的服务器62;服务器63;刀片服务器64;存储设备65;网络和网络组件66。软件组件的例子包括:网络应用服务器软件67以及数据库软件68。
虚拟层70提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器71、虚拟存储72、虚拟网络73(包括虚拟私有网络)、虚拟应用和操作系统74,以及虚拟客户端75。
在一个示例中,管理层80可以提供下述功能:资源供应功能81:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能82:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能83:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能84:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能85:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层90提供可以利用云计算环境的功能的示例。可以从该层提供的工作负荷和功能的示例包括:地图和导航91;软件开发和生命周期管理92;虚拟课堂教育交付93;数据分析处理94;交易处理95;以及分级存储管理96。根据本发明的实施例,分层存储管理96可包括使云计算环境能够用于分层存储管理系统中的数据迁移管理的功能。
虽然已经参照本发明的某些示范性实施例示出和描述了本发明,但是本领域技术人员将理解,在不脱离由所附权利要求及其等同物限定的本发明的范围的情况下,可以在其中进行形式和细节上的各种改变。因此,出于说明而非限制的目的,已经通过示例的方式披露了本发明。

Claims (25)

1.一种用于在分层存储管理系统中管理对数据单元的拷贝操作的计算机实现的方法,所述管理系统包括上层和下层,其中所述上层包括其中存储节点被布置用于以多路复用网格配置通信的域,其中每个数据单元被存储在所述存储节点中的一个或多个中,所述方法包括:
确定针对每个所述数据单元的一个N值,所述N值表示存储在所述域中的所述数据单元的副本总数,其中所述确定是基于通过所述多路复用网格从分别存储所述副本的一个或多个所述存储节点接收的数据而作出的;
基于所确定的所述N值的比较来调度针对每个数据单元的拷贝操作,其中调度所述拷贝操作包括:在从另一节点选择另一数据单元之前,从具有所确定的所述N值小于任意其他多个N值的数据单元的所述存储节点中选择所述数据单元;并且
根据针对每个数据单元的所述调度来执行所述拷贝操作,以用于每个数据单元到所述下层的相应迁移。
2.根据权利要求1所述的方法,进一步包括:
从连接到所述管理系统的计算装置接收对应于存储在所述存储节点中的一个或多个中的数据单元的写入请求,所述数据单元包括指定其中可存储所述数据单元的副本的一个或多个授权的存储节点的关联的拷贝策略,其中所述拷贝策略还指定其间所述副本可存储在所述一个或多个授权的存储节点中的时间段;并且
根据所述拷贝策略并针对所述一个或多个授权的存储节点执行所述写入请求以对所述数据单元执行相应的写入操作。
3.根据权利要求1所述的方法,其中,根据针对每个数据单元的调度执行所述拷贝操作包括将每个数据单元从各自对应的存储节点拷贝的次数限制为1。
4.根据权利要求1所述的方法,其中,所述下层包括存储节点,所述存储节点中的每一个具有低于所述上层中的所述一个或多个存储节点中任一个的数据检索速度和可用性水平的数据检索速度和可用性水平。
5.根据权利要求1所述的方法,其中,所述下层包括被抽象以提供存储器池的虚拟存储器资源。
6.根据权利要求5所述的方法,其中,所述虚拟存储器资源由云计算层抽象。
7.根据权利要求1所述的方法,其中,每个存储节点包括连接到多路复用网格的数据库,用于与所述存储节点中的每一个的单独数据库通信,以识别其中存储对应的数据单元的存储节点中的一个或多个。
8.根据权利要求1所述的方法,其中,调度所述拷贝操作包括:
由所述域中的存储节点选择所述域中的所述存储节点中的一个或多个,用于针对待拷贝的对应数据单元执行所述拷贝操作,其中基于确定所述待拷贝的数据单元的副本存储在所述存储节点中的一个或多个中来选择所述存储节点,其中在超过预定阈值的时间量内还未对所述数据单元执行拷贝操作。
9.根据权利要求1所述的方法,其中,调度所述拷贝操作包括:
由所述域中的存储节点选择所述域中的所述存储节点中的一个或多个,用于针对待拷贝的对应数据单元执行所述拷贝操作,其中基于确定所述存储节点自身存储所述待拷贝的数据单元的副本来选择所述存储节点,其中存储在所述存储节点自身中的所述数据单元的副本的数目小于存储在所述域中的任何其他存储节点中的数目。
10.一种用于在分级存储管理系统中管理对数据单元的拷贝操作的计算机系统,所述管理系统包括上层和下层,其中所述上层包括其中存储节点被布置用于以多路复用网格配置通信的域,其中每个数据单元被存储在所述存储节点中的一个或多个中,所述计算机系统包括:
一个或多个计算机处理器、一个或多个计算机可读存储介质、以及存储在所述计算机可读存储介质中的一个或多个上的用于由所述一个或多个计算机处理器中的至少一个执行的程序指令,所述程序指令在被所述一个或多个计算机处理器中的所述至少一个执行时,使得所述计算机系统执行一种方法,所述方法包括:
确定针对每个所述数据单元的一个N值,所述N值表示存储在所述域中的所述数据单元的副本总数,其中所述确定是基于通过所述多路复用网格从分别存储所述副本的一个或多个所述存储节点接收的数据而作出的;
基于所确定的所述N值的比较来调度针对每个数据单元的拷贝操作,其中调度所述拷贝操作包括:在从另一节点选择另一数据单元之前,从具有所确定的所述N值小于任意其他多个N值的数据单元的所述存储节点中选择所述数据单元;并且
根据针对每个数据单元的所述调度来执行所述拷贝操作,以用于每个数据单元到所述下层的相应迁移。
11.根据权利要求10所述的计算机系统,其特征在于,所述方法还包括:
从连接到所述管理系统的计算装置接收对应于存储在所述存储节点中的一个或多个中的数据单元的写入请求,所述数据单元包括指定其中可存储所述数据单元的副本的一个或多个授权的存储节点的关联的拷贝策略,其中所述拷贝策略还指定其间所述副本可存储在所述一个或多个授权的存储节点中的时间段;并且
根据所述拷贝策略并针对所述一个或多个授权的存储节点执行所述写入请求以对所述数据单元执行相应的写入操作。
12.根据权利要求10所述的计算机系统,其中,根据针对每个数据单元的调度执行所述拷贝操作包括:将每个数据单元从各自对应的存储节点拷贝的次数限制为1。
13.根据权利要求10所述的计算机系统,其中,所述下层包括存储节点,所述存储节点中的每一个具有低于所述上层中的所述一个或多个存储节点中的任一个的数据检索速度和可用性水平的数据检索速度和可用性水平。
14.根据权利要求10所述的计算机系统,其中,所述下层包括被抽象以提供存储器池的虚拟存储器资源。
15.根据权利要求14所述的计算机系统,其中,所述虚拟存储器资源由云计算层抽象。
16.根据权利要求10所述的计算机系统,其中,每个存储节点包括连接到多路复用网格的数据库,用于与所述存储节点中的每一个的单独数据库通信,以识别其中存储对应的数据单元的存储节点中的一个或多个。
17.根据权利要求10所述的计算机系统,其中,调度所述拷贝操作包括:
由所述域中的存储节点选择所述域中的所述存储节点中的一个或多个,用于针对待拷贝的对应数据单元执行所述拷贝操作,其中基于确定所述待拷贝的数据单元的副本存储在所述存储节点中的一个或多个中来选择所述存储节点,其中在超过预定阈值的时间量内还未对所述数据单元执行拷贝操作。
18.根据权利要求10所述的计算机系统,其特征在于,调度所述拷贝操作包括:
由所述域中的存储节点选择所述域中的所述存储节点中的一个或多个,用于针对待拷贝的对应数据单元执行所述拷贝操作,其中基于确定所述存储节点自身存储所述待拷贝的数据单元的副本来选择所述存储节点,其中存储在所述存储节点自身中的所述数据单元的副本的数目小于存储在所述域中的任何其他存储节点中的数目。
19.一种用于在分级存储管理系统中管理对数据单元的拷贝操作的计算机设备,所述管理系统包括上层和下层,其中所述上层包括其中存储节点被布置用于以多路复用网格配置通信的域,其中每个数据单元被存储在所述存储节点中的一个或多个中,所述计算机设备包括:
一个或多个计算机可读存储介质以及存储在所述一个或多个计算机可读存储介质中的至少一个上的用于由计算机系统的至少一个或多个计算机处理器执行的程序指令,所述程序指令在由所述一个或多个计算机处理器中的所述至少一个执行时使得所述计算机系统执行指令以执行方法,所述方法包括:
确定针对每个所述数据单元的一个N值,所述N值表示分别在所述域中的所述数据单元的副本总数,其中所述确定是基于通过所述多路复用网格从分别存储所述副本的一个或多个所述存储节点接收的数据而作出的;
基于所确定的所述N值的比较来调度针对每个数据单元的拷贝操作,其中调度所述拷贝操作包括:在从另一节点选择另一数据单元之前,从具有所确定的所述N值小于任意其他多个N值的数据单元的所述存储节点中选择所述数据单元;并且
根据针对每个数据单元的所述调度来执行所述拷贝操作,以用于每个数据单元到所述下层的相应迁移。
20.根据权利要求19所述的计算机设备,所述方法进一步包括:
从连接到所述管理系统的计算装置接收对应于存储在所述存储节点中的一个或多个中的数据单元的写入请求,所述数据单元包括指定其中可存储所述数据单元的副本的一个或多个授权的存储节点的关联的拷贝策略,其中所述拷贝策略还指定其间所述副本可存储在所述一个或多个授权的存储节点中的时间段;并且
根据所述拷贝策略并针对所述一个或多个授权的存储节点执行所述写入请求以对所述数据单元执行相应的写入操作。
21.根据权利要求19所述的计算机设备,其中,根据针对每个数据单元的调度执行所述拷贝操作包括将每个数据单元从各自对应的存储节点拷贝的次数限制为1。
22.根据权利要求19所述的计算机设备,其中,所述下层包括存储节点,所述存储节点中的每一个具有低于所述上层中的所述一个或多个存储节点中任一个的数据检索速度和可用性水平的数据检索速度和可用性水平。
23.根据权利要求19所述的计算机设备,其中所述下层包括被抽象以提供存储器池的虚拟存储器资源。
24.根据权利要求23所述的计算机设备,其中所述虚拟存储器资源由云计算层抽象。
25.根据权利要求19所述的计算机设备,其中每个存储节点包括连接到所述多路复用网格的数据库,用于与所述存储节点中的每一个的单独数据库通信,以识别其中存储对应的数据单元的存储节点中的一个或多个。
CN201980011413.0A 2018-02-12 2019-01-18 分层存储管理系统中的数据迁移 Active CN111684779B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/894,131 2018-02-12
US15/894,131 US10705752B2 (en) 2018-02-12 2018-02-12 Efficient data migration in hierarchical storage management system
PCT/IB2019/050421 WO2019155308A1 (en) 2018-02-12 2019-01-18 Data migration in a hierarchical storage management system

Publications (2)

Publication Number Publication Date
CN111684779A CN111684779A (zh) 2020-09-18
CN111684779B true CN111684779B (zh) 2023-02-03

Family

ID=67541599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980011413.0A Active CN111684779B (zh) 2018-02-12 2019-01-18 分层存储管理系统中的数据迁移

Country Status (6)

Country Link
US (1) US10705752B2 (zh)
JP (1) JP7431490B2 (zh)
CN (1) CN111684779B (zh)
DE (1) DE112019000756T5 (zh)
GB (1) GB2585543B (zh)
WO (1) WO2019155308A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11068188B2 (en) * 2019-09-19 2021-07-20 International Business Machines Corporation Monitored migration of copies of volumes of data between clusters of a virtual tape library system
US11188235B2 (en) * 2019-11-26 2021-11-30 International Business Machines Corporation Reducing data replications among storage locations

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794208A (zh) * 2004-12-21 2006-06-28 国际商业机器公司 大容量存储设备和用于动态管理大容量存储设备的方法
CN1912873A (zh) * 2005-08-08 2007-02-14 国际商业机器公司 为数据对象提供预期存储管理的分级存储管理系统与方法
US8392370B1 (en) * 2008-03-28 2013-03-05 Emc Corporation Managing data on data storage systems
CN103150263A (zh) * 2012-12-13 2013-06-12 深圳先进技术研究院 分级存储方法
CN104272386A (zh) * 2012-04-25 2015-01-07 国际商业机器公司 通过分层存储系统内的数据迁移减少功耗
CN107291889A (zh) * 2017-06-20 2017-10-24 郑州云海信息技术有限公司 一种数据存储方法及系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194492B2 (en) 2001-10-29 2007-03-20 Emc Corporation Method and apparatus for efficiently copying distributed data files
US7441096B2 (en) * 2004-07-07 2008-10-21 Hitachi, Ltd. Hierarchical storage management system
JP2006350599A (ja) 2005-06-15 2006-12-28 Hitachi Ltd ストレージシステム及びストレージシステムのデータマイグレーション方法
US7831566B2 (en) 2006-12-22 2010-11-09 Commvault Systems, Inc. Systems and methods of hierarchical storage management, such as global management of storage operations
WO2009032712A2 (en) * 2007-08-29 2009-03-12 Nirvanix, Inc. Method and system for moving requested files from one storage location to another
JP5136162B2 (ja) 2008-03-31 2013-02-06 日本電気株式会社 バックアップ管理システム、方法、及び、プログラム
US8645660B2 (en) * 2009-12-10 2014-02-04 Microsoft Corporation Automatic allocation of data replicas
US8452932B2 (en) 2010-01-06 2013-05-28 Storsimple, Inc. System and method for efficiently creating off-site data volume back-ups
US8954669B2 (en) 2010-07-07 2015-02-10 Nexenta System, Inc Method and system for heterogeneous data volume
US8965856B2 (en) 2011-08-29 2015-02-24 Hitachi, Ltd. Increase in deduplication efficiency for hierarchical storage system
CN102546782B (zh) 2011-12-28 2015-04-29 北京奇虎科技有限公司 一种分布式系统及其数据操作方法
US9542466B2 (en) 2012-05-10 2017-01-10 Aetherstore Inc. Systems and methods for distributed storage
CN102880531B (zh) 2012-09-27 2014-04-16 新浪网技术(中国)有限公司 数据库备份系统及其备份方法和从数据库服务器
EP2743821A1 (en) * 2012-12-11 2014-06-18 Alcatel Lucent User data duplication
EP2821913A1 (en) * 2013-07-01 2015-01-07 Open Text S.A. A method and system for storing documents
KR101593012B1 (ko) 2013-12-24 2016-02-18 주식회사 케이티 계층형 스토리지 제어 장치 및 방법
JP5991701B2 (ja) 2014-10-28 2016-09-14 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ストレージ管理方法、ストレージ管理システム、コンピュータ・システムおよびプログラム
US9830091B2 (en) 2015-02-20 2017-11-28 Netapp, Inc. Policy-based data tiering using a cloud architecture
US9626245B2 (en) * 2015-02-20 2017-04-18 Netapp, Inc. Policy based hierarchical data protection

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1794208A (zh) * 2004-12-21 2006-06-28 国际商业机器公司 大容量存储设备和用于动态管理大容量存储设备的方法
CN1912873A (zh) * 2005-08-08 2007-02-14 国际商业机器公司 为数据对象提供预期存储管理的分级存储管理系统与方法
US8392370B1 (en) * 2008-03-28 2013-03-05 Emc Corporation Managing data on data storage systems
CN104272386A (zh) * 2012-04-25 2015-01-07 国际商业机器公司 通过分层存储系统内的数据迁移减少功耗
CN103150263A (zh) * 2012-12-13 2013-06-12 深圳先进技术研究院 分级存储方法
CN107291889A (zh) * 2017-06-20 2017-10-24 郑州云海信息技术有限公司 一种数据存储方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Optimized management of large-scale data sets stored on tertiary storage systems;B. Reiner and K. Hahn;《 IEEE Distributed Systems Online》;20040621;第5卷(第5期);全文 *
大数据存储系统中负载均衡的数据迁移算法;李甜甜,王智,宋杰.;《中兴通讯技术》;20160430;第22卷(第2期);全文 *
高性能计算中并行文件系统可扩展元数据服务的研究;陈起;《中国优秀硕士学位论文全文数据库 信息科技辑》;20140615(第06期);全文 *

Also Published As

Publication number Publication date
GB2585543B (en) 2022-07-20
JP7431490B2 (ja) 2024-02-15
GB2585543A (en) 2021-01-13
JP2021513137A (ja) 2021-05-20
WO2019155308A1 (en) 2019-08-15
CN111684779A (zh) 2020-09-18
US20190250844A1 (en) 2019-08-15
GB202013512D0 (en) 2020-10-14
US10705752B2 (en) 2020-07-07
DE112019000756T5 (de) 2020-10-29

Similar Documents

Publication Publication Date Title
US9460147B1 (en) Partition-based index management in hadoop-like data stores
US11163728B2 (en) Sharing container images utilizing a shared storage system
US20180329647A1 (en) Distributed storage system virtual and storage data migration
US10572386B1 (en) Increased parallelization efficiency in tiering environments
US11762850B2 (en) Content-aware node selection for container creation
US10642809B2 (en) Import, export, and copy management for tiered object storage
US20190377809A1 (en) Resolving versions in an append-only large-scale data store in distributed data management systems
US11768740B2 (en) Restoring operation of data storage systems at disaster recovery sites
US20230055511A1 (en) Optimizing clustered filesystem lock ordering in multi-gateway supported hybrid cloud environment
CN111684779B (zh) 分层存储管理系统中的数据迁移
US10606495B2 (en) Creating a structurally aware block storage system
US11467735B2 (en) I/O operations in log structured arrays
CN115336237A (zh) 远程存储的文件的预测性供应
US10884649B2 (en) Tape drive data reclamation
US10732843B2 (en) Tape drive data reclamation
US10795575B2 (en) Dynamically reacting to events within a data storage system
US11030100B1 (en) Expansion of HBA write cache using NVDIMM
US11416468B2 (en) Active-active system index management
US11188235B2 (en) Reducing data replications among storage locations
US11121981B1 (en) Optimistically granting permission to host computing resources
US10698862B2 (en) Enhanced snapshot performance, storage efficiency improvement, dynamic snapshot policy in erasure code supported object storage environment
WO2022247513A1 (en) Data storage beyond threshold tape position
US20230359592A1 (en) Data migration in a distributed file system
JP2024505161A (ja) ログ・パイプラインの競合に基づくデータベース・ログの書き込み

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant