CN104169890B - 对在数据复制环境中的存储功能的基于策略的管理 - Google Patents

对在数据复制环境中的存储功能的基于策略的管理 Download PDF

Info

Publication number
CN104169890B
CN104169890B CN201380014291.3A CN201380014291A CN104169890B CN 104169890 B CN104169890 B CN 104169890B CN 201380014291 A CN201380014291 A CN 201380014291A CN 104169890 B CN104169890 B CN 104169890B
Authority
CN
China
Prior art keywords
place
main
storage configuration
main place
storage
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
CN201380014291.3A
Other languages
English (en)
Other versions
CN104169890A (zh
Inventor
N·M·克莱顿
L·J·冈迪
J·R·帕弗扎
B·A·彼得森
A·E·桑切斯
D·M·沙克尔福德
W·K·斯坦利
J·G·汤普森
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 CN104169890A publication Critical patent/CN104169890A/zh
Application granted granted Critical
Publication of CN104169890B publication Critical patent/CN104169890B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3034Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a storage system, e.g. DASD based or network based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/954Navigation, e.g. using categorised browsing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Data Mining & Analysis (AREA)
  • Environmental & Geological Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

公开了一种用于管理在数据复制环境中的存储功能的方法。在一个实施例中,这样的方法包括连续地监视对在次地点的存储配置的改变。在检测到对在次地点的存储配置的改变时,该方法向主地点传输描述改变的远程元数据并且在主地点存储远程元数据。该方法然后在主地点发起被镜像到次地点的存储管理功能。为了执行存储管理功能,该方法读取在主地点的远程元数据以确定在次地点的存储配置。该方法然后以考虑在次地点的存储配置的方式在主地点执行存储管理功能。这里也公开了并且要求保护一种对应的装置、系统和计算机可读介质。

Description

对在数据复制环境中的存储功能的基于策略的管理
技术领域
本发明涉及数据复制环境,并且更特别地涉及用于管理在数据复制环境中的存储功能的系统和方法。
背景技术
在数据复制环境(比如对等远程拷贝(“PPRC”)或者扩展式远程拷贝(“XRC”)环境中,数据被从主存储设备被镜像到次存储设备以维持数据的两个一致拷贝。主存储设备和次存储设备可以位于可能相互远离数百或者甚至数千英里的不同地点。在主存储设备出故障的情况下,I/O可以被重定向到次存储设备,由此实现连续操作。在主存储设备被修复时,I/O可以恢复到主存储系统。
在管理在主地点的存储时,需要仔细以保证在主地点被发起的任何操作(即,存储功能)可以被成功镜像到次地点。例如,在目标卷在主地点被分配为接收时间点拷贝(例如,使用FlashCopy(快速拷贝)功能)时,需要仔细以保证在次地点的对应目标卷可以接收时间点拷贝。例如,如果时间点拷贝功能要求源卷和目标卷二者在相同存储系统上驻留并且在主地点为满足这一要求的源卷和目标卷发起时间点拷贝操作,则需要用于验证在次地点的对应源卷和目标卷也满足这一要求的技术。为了在主地点做出这一确定,需要关于在次地点的存储配置的信息。这样的信息可能在主地点不容易可用或者可能难以从主地点访问而未降低性能。
鉴于前述,需要的是用于使远程存储配置信息在主地点可用以便有效地管理被镜像到次地点的存储功能的系统和方法。这样的系统和方法将理想地在主地点实现考虑在次地点的存储配置的基于策略的决定。
发明内容
技术问题
已经响应于当前现有技术状态并且特别地响应于在本领域中的尚未被当前可用的系统和方法完全解决的问题和需要而开发了本发明。因而,已经开发了本发明以提供用于管理在数据复制环境中的存储功能的系统和方法。本发明的特征和优点将从以下描述和所附权利要求变得更完全清楚或者可以通过实践如下文阐述的本发明而被学习。
问题的解决方案
与前文一致,这里公开了一种用于管理在数据复制环境中的存储功能的方法。在一个实施例中,这样的方法包括连续地监视对在次地点的存储配置的改变。在检测到对在次地点的存储配置的改变时,该方法向主地点传输描述改变的远程元数据并且在主地点存储远程元数据。该方法然后可以在主地点发起被镜像到次地点的存储管理功能。为了执行存储管理功能,该方法读取在主地点的远程元数据以确定在次地点的存储配置。该方法然后可以用考虑在次地点的存储配置的方式在主地点执行存储管理功能。
这里也公开了并且要求保护一种对应的装置、系统和计算机可读介质。
为了将容易地理解本发明的优点,将通过参照在附图中图示的具体实施例来呈现以上简要描述的本发明的更特定的描述。应理解这些附图仅描绘本发明的典型实施例并且因此不会被视为限制它的范围,将通过使用附图用附加特性和细节描述和说明本发明。
附图说明
[图1]图1是示出了数据复制环境(比如XRC环境)的一个示例的高级框图。
[图2]图2是示出了用于使远程元数据在主地点可用的配置更新模块和读取模块的高级框图。
[图3]图3是示出了在主地点的存储管理器如何可以使用远程元数据以做出存储管理决定的高级框图。
[图4]图4是示出了用于在分配时间验证远程卷仍然有资格参与请求的存储功能的验证模块的高级框图。
[图5]图5是示出了根据本发明的更一般的系统的高级框图。
[图6]图6是示出了用于用作主存储系统或者次存储系统的存储系统的一个示例的高级框图。
具体实施方式
将容易理解,可以在广泛多种不同配置中布置和设计如这里一般描述和在附图中图示的本发明的部件。因此,如在附图中代表的本发明的实施例的以下更具体描述并未旨在于限制如要求保护的本发明的范围,而是仅代表根据本发明的当前设想的实施例的某些示例。将通过参照附图最好地理解当前描述的实施例,其中相似部分通篇由相似标号指明。
如本领域技术人员将认识到的那样,本发明可以被体现为一种装置、系统、方法或者计算机程序产品。另外,本发明可以采用硬件实施例、配置用于操作硬件的软件实施例(包括固件、常驻软件、微代码等)或者组合这里可以被通称为“模块”或者“系统”的软件和硬件方面的实施例的形式。另外,本发明可以采用在任何有形表达介质中体现的计算机可读存储介质的形式,该有形表达介质具有在其中存储的计算机可用程序代码。
可以利用一个或者多个计算机可用或者计算机可读存储介质的任何组合以存储计算机程序产品。计算机可用或者计算机可读存储介质可以例如是但不限于电子、磁、光、电磁、红外线或者半导体系统、装置或者设备。计算机可读存储介质的更多具体示例(非穷举罗列)可以包括以下示例:具有一个或者多个接线的电连接、便携计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者闪存)、光纤、便携紧致盘只读存储器(CDROM)、光存储设备或者磁存储设备。在本文的上下文中,计算机可用或者计算机可读存储介质可以是任何可以包含、存储或者传送用于由或者结合指令执行系统、装置或者设备使用的程序的介质。
可以用一个或者多个编程语言的任何组合编写用于实现本发明的操作的计算机程序代码,该一个或者多个编程语言包括面向对象的编程语言(比如Java、Smalltalk、C++等)和常规过程编程语言(比如“C”编程语言或者相似编程语言)。也可以用低级编程语言(比如汇编语言)编写用于实施本发明的计算机程序代码。
以下可以参照根据本发明的实施例的方法、装置、系统和计算机程序产品的流程图图示和/或框图描述本发明。将理解,流程图图示和/或框图的每个块以及在流程图图示和/或框图中的块组合可以由计算机程序指令或者代码实施。可以向通用计算机、专用计算机或者其它可编程数据处理装置的处理器提供这些计算机程序指令以产生机器,从而经由计算机或者其它可编程数据处理装置的处理器执行的指令产生用于实施在流程图和/或框图的一个或者多个块中指定的功能/动作的装置。
这些计算机程序指令也可以被存储于计算机可读存储介质中,该计算机可读存储介质可以指引计算机或者其它可编程数据处理装置以特定方式工作,从而使得在计算机可读存储介质中存储的指令产生包括指令装置的制造品,这些指令装置实施在流程图和/或框图的一个或者多个块中指定的功能/动作。也可以向计算机或者其它可编程数据处理装置上加载计算机程序指令以使系列操作步骤在计算机或者其它可编程装置上被执行以产生计算机实施的过程,从而在计算机或者其它可编程装置上执行的指令提供用于实施在流程图和/或框图的一个或者多个块中指定的功能/动作的过程。
参照图1,图示了数据复制系统100的一个实施例。在某些实施例中,数据复制系统100是异步数据复制系统100(比如IBM的扩展式远程拷贝(XRC)),但是这里公开的系统和方法可以被扩展成其它类型的异步和同步数据复制系统。如所示,数据复制系统100包括位于主地点102a和次地点102b的各种部件。主地点102a可以包括用作主生产系统的部件,而次地点102b可以包括备份在主地点102a的部件的部件。在故障在主地点102a出现的情况下,I/O可以被重定向到次地点102b,由此实现连续操作。在修复了在主地点102a的故障时,I/O可以恢复到主地点102a。将I/O从主地点102a重定向到次地点102b的过程可以被称为“故障转移”。将I/O重定向到主地点102a的过程可以称为“故障恢复”。
如所示,主地点102a包括主主机系统104a和一个或者多个主存储系统106a。次地点102b包括次主机系统104b和一个或者多个次存储系统106b。在XRC环境中,数据从在主存储系统106a上的一个或者多个卷被异步地镜像到在次存储系统106b上的一个或者多个卷。在主地点102a的存储管理器110a(例如,DFSMS)可以管理在主存储系统106a上的卷。相似地,在次地点102b的存储管理器110b(例如,DFSMS)可以管理在次存储系统106b上的卷。在次地点102b的存储管理器110b可以包括用于如在XRC系统中出现的那样将数据从主卷112a、116a镜像(即,拷贝)到次卷112b、116b的功能。为了实现这一点,在次地点102b的存储管理器110b可以用它具有对主存储系统106a和次存储系统106b二者的访问这样的方式来被连接。
在一些情况下,在主地点102a被发起的某些存储功能可能需要被镜像(即重复)到次地点102b。例如,在主地点102a执行的时间点拷贝操作可能需要在次地点102b被重复以提供数据一致性。为了实现这一点,存储管理器110a可能需要验证存储功能可以在发起存储功能之前在次地点102b被成功地重复。
在某些实施例中,拷贝模块108(实施时间点拷贝功能(比如快速拷贝))可以被配置用于通过向存储管理器110a提交空间请求来在主地点102a发起时间点拷贝功能。存储管理器110a转而可以标识可以接收时间点拷贝的一个或者多个候选主目标卷116a。这些可以包括目标卷116a,这些目标卷116a在与源卷112a相同的存储系统中和/或是与源卷112a相同的镜像(即一致性组)的部分。存储管理器110a可以通过分析本地元数据114a来标识候选目标卷116a,该本地元数据114a描述主存储系统106a的软件和硬件配置。
除了发现在主地点102a的合格候选目标卷116a之外,存储管理器110a还需要验证在主地点102a被执行的任何时间点拷贝操作可以在次地点102b被重复。为了实现这一点,存储管理器110a需要验证标识的候选主目标卷116a具有可以参与时间点拷贝操作的对应次目标卷116b。例如,存储管理器110a可能需要验证参与时间点拷贝操作的任何次目标卷116a在与次源卷112b相同的存储系统中和/或是与次源卷112b相同的镜像的部分。
存储管理器110a可以通过向次地点102b查询描述远程存储配置的远程元数据114b来做出这一确定。然而,这一方式可能遭受到与在主地点102a与次地点102b之间的往返距离成比例的对于每个查询的性能惩罚。另外,可能需要针对每个请求的时间点拷贝操作为每个候选卷116a处理查询。因此,如果有N个请求的时间点拷贝操作、K个候选卷116a和往返距离d,则可能产生至少为2×d×N×K的延迟。这一方式也可能具有关于远程存储配置的一些信息可能并未通过查询而可访问这样的缺点。
备选地,远程存储配置(即,远程元数据114b)可以被存储于在主地点102a的文件中。这可以使存储管理器110a能够简单地通过读取和分析本地文件来做出考虑远程元数据114b的决定。然而,在文件中的数据可能在存储配置改变在次地点102b被做出时快速变成过期。基于过期远程元数据114b做出决定可能在次地点102b破坏数据或者产生不一致数据。例如,在主地点102b执行不能在次地点102b被重复的时间点拷贝操作将产生不一致数据。
参照图2,在根据本发明的某些实施例中,配置更新模块200可以在次地点102b被提供为使远程元数据114b在主地点102a可用。在某些实施例中,配置更新模块200是存储管理器110b的部件,因为存储管理器110b可以被配置用于访问主存储系统106a和次存储系统106b二者。备选地,配置更新模块200可以被实施为分离模块。配置更新模块200可以被配置用于连续地监视对在次地点102b的存储配置的改变。在检测到对存储配置的改变时,配置更新模块200可以从次存储系统106b读取远程元数据114b并且向主存储系统106a写入远程元数据114b。
在某些实施例中,空间在主存储系统106a的存储器中被保留用于存储远程元数据114b。在某些实施例中,空间在主存储系统106a的易失性存储器(例如,高速缓存)和持久存储器(非易失性存储或者“NVS”)二者中被保留。将与图6关联地更具体地描述高速缓存和NVS。在主存储系统106a中的存储器也可以存储描述主存储系统106a的存储配置的本地元数据114a。在检测到对远程元数据114b的改变时,配置更新模块200可以例如使用特殊更新命令向在主存储系统106a上的保留的空间写入远程元数据114b。以这一方式,描述远程存储配置的远程元数据114b在主地点102a被连续地保持最新。
每当本地或者远程元数据114a、114b在主存储系统106a上被更新时,消息可以被发送到主主机系统104a以向主主机系统104a通知存储配置已经改变。在主机系统104a中或者与主机系统104a关联的读取模块202然后可以读取远程元数据114b并且在主主机系统104a的公共地可访问的存储器中存储它。一旦这一元数据被读取到在主机系统104上的公共地可访问的存储器中,它就可以被在主机系统104a上运行的应用快速和高效地访问,因为这消除对于每当需要本地元数据114a或者远程元数据114b时对查询主存储系统106a的需要。本地元数据114a和远程元数据114b可以被存储管理器110a用来做出影响主地点102a和次地点102b二者的基于策略的决定。例如,在选择目标卷116a以接收时间点拷贝时,存储管理器110a可以不仅基于本地存储配置而且还基于远程存储配置选择目标卷116a。
例如,参照图3,假设在主存储系统106a上的目标卷300a、300c、300e各自是将作为时间点拷贝操作的目标的候选。这些目标卷300a、300c、300e中的每个目标卷具有与在次存储系统106b上的对应的目标卷300b、300d、300f的镜像关系。在次存储系统106b上的目标卷中的一些目标卷300b、300f可能没有资格从源卷112b接收时间点拷贝。例如,目标卷中的一些目标卷300b、300f可以在与次源卷112b不同的存储系统106b上驻留和/或属于与源卷112b不同的一致性组。
通过使远程元数据114b可用于在主地点102a的存储管理器110a,存储管理器110a将能够确定在主地点102a和次地点102b的目标卷116b的哪些对有资格参与时间点拷贝操作。例如,如在图3中所示,通过检查本地元数据114a和远程元数据114b,存储管理器110a可以确定仅在主地点102a的目标卷300c和在次地点102b的对应的目标卷300d是用于与对应的源卷112a、112b一起参与时间点拷贝操作的有效候选。
在图2和图3中所示的技术允许存储管理器110a具有更完整的配置信息以便做出策略决定而未遭受到与直接地查询次地点102b关联的性能退化并且没有在依赖于人工过程时固有的不准确。更具体而言,在主主机系统104a上的公共地可访问存储中合并远程元数据114b可以将访问时间从毫秒(用于查询次地点102b)减少至微秒(用于读取在主机系统104a上的公共地可访问存储)。
参照图4,在许多情况下,大量时间可能在存储管理器110a选择目标卷300c、300d的时间与目标卷300c、300d被实际分配用于接收时间点拷贝的时间之间流过。在这一时间段期间,在主地点102a或者次地点120b的存储配置可能以使目标卷300c、300d无资格参与时间点拷贝操作的方式改变。
在某些实施例中,验证模块400可以在存储控制器106a中被提供用于验证由存储管理器110a选择的一对目标卷300c、300d在执行分配时仍然有资格参与时间点拷贝操作。验证模块400可以使用在主存储系统106a上存储的本地元数据114a和远程元数据114b来执行这一验证。这可以提供用于如果存储配置自从存储管理器110a做出它的分配决定起已经改变则拒绝请求的时间点拷贝操作的最后机会机制。如果拒绝时间点拷贝操作,则存储管理器110a可以重新分析位于主地点102a的本地元数据114a和远程元数据114d以发现新的一对有资格的目标卷116a、116b。
参照图5,已经示出了在具体硬件部件(比如具体主机系统和存储系统)中实施与图1至图4关联地描述的各种特征或者功能。然而,特征或者功能不限于在所示的硬件部件中的实现方式。例如,可以在存储系统106a、106b中实施或者跨越主机系统104a、104b和存储系统106a、106b分布在主机系统104a、104b中示出的一些特征和功能(即,拷贝模块108、存储管理器110a、110b、配置更新模块200、读取模块202和验证模块400的特征或者功能)。可以在主机系统104a、104b中实施或者跨越主机系统104a、104b和存储系统106a、106b分布在存储系统106a、106b中示出的其它特征或者功能。
相似地,可以在次地点102b实施在主地点102a示出的某些特征或者功能并且反之亦然。因此,描述的特征或者功能未必需要被实施于它们被图示的位置。可以用各种不同方式设计数据复制系统100,并且可以根据设计用不同方式和在不同位置实施公开的特征和功能。图5示出了各种模块和部件而未将它们连结到具体硬件部件。
虽然这里已经特别参照了将时间点拷贝从主地点102a镜像到次地点102b,但是这里公开的系统和方法不限于时间点拷贝功能。这里公开的系统和方法适用于可能需要从主地点102a被镜像到次地点102b的广泛多种不同存储功能或者在主地点102a被执行的需要考虑在次地点102b的存储配置的存储功能。在任何这样的情况下,这里公开的系统和方法可以用来使远程元数据114b在主地点102a可用。因此,这里公开的系统和方法可以适用于广泛多种不同存储功能而不是仅时间点拷贝。
参照图6,图示了包含存储驱动604(例如,硬盘驱动和/或固态驱动)的阵列的存储系统106的一个实施例。示出了存储系统106的内部部件,因为可以在这样的存储系统106内实施根据本发明的各种特征和功能,但是特征和功能也可以适用于其它存储系统。如所示,存储系统106包括存储控制器600、一个或者多个交换机602和一个或者多个存储驱动604,比如硬盘驱动和/或固态驱动(比如基于闪存的驱动)。存储控制器600可以使一个或者多个主机104(例如,开放系统和/或大型机服务器104)能够访问在一个或者多个存储驱动604中的数据。
在选择的实施例中,存储控制器600包括一个或者多个服务器606。存储控制器600也可以包括用于将存储控制器600分别连接到主机设备104和存储驱动604的主机适配器608和设备适配器610。多个服务器606a、606b提供冗余性以保证数据总是可用于连接的主机104。因此,在一个服务器606a出故障时,另一服务器606b可以拾取出故障的服务器606a的I/O负荷以保证I/O能够在主机104与存储驱动604之间继续。这一过程可以称为“故障转移”。
在选择的实施例中,每个服务器606可以包括一个或者多个处理器612和存储器614。存储器614可以包括易失性存储器(例如,RAM)以及非易失性存储器(例如,ROM、EPROM、EEPROM、闪存等)。易失性和非易失性存储器可以在某些实施例中存储在处理器612上运行的并且用来访问在存储驱动604中的数据的软件模块。服务器606可以主控这些软件模块的至少一个实例。这些软件模块可以管理对在存储驱动604中的逻辑卷的所有读取请求和写入请求。
在选择的实施例中,存储器614包括高速缓存618,比如DRAM高速缓存618。无论主机106(例如,开放系统或者大型机服务器106)何时执行读取操作,执行读取的服务器606可以在再次需要数据的情况下从存储驱动604取读该数据并且在它的高速缓存618中保存该数据。如果主机104再次请求数据,则服务器606可以从高速缓存618取读数据而不是从存储驱动604取读数据,从而节省时间和资源二者。相似地,在主机104执行写入时,接收写入请求的服务器106可以在它的高速缓存618中存储写入,并且在以后时间将写入离台(destage)到存储驱动604。在写入在高速缓存618中被存储时,写入也可以被存储于相反服务器606的非易失性存储(NVS)620中,从而使得写入可以在第一服务器606出故障的情况下被相反服务器606恢复。
如先前提到的那样,在某些实施例中,本地元数据114a和远程元数据114b可以被存储于存储控制器600的易失性和非易失性存储器614中。例如,本地元数据114a和远程元数据114b可以被存储于高速缓存618和非易失性存储(NVS)620二者中。在(由于故障或者其它事件)而丢失在高速缓存618中的本地元数据114a和/或远程元数据114b的情况下,可以从NVS 620恢复本地元数据114a和/或远程元数据114b。
具有与在图6中所示的架构相似的架构的存储系统106的一个示例是IBM DS8000TM企业存储系统。DS8000TM是被设计为支持连续操作的提供盘和固态存储的高性能、高容量存储控制器。然而,这里公开的方法不限于IBM DS8000TM企业存储系统106,而是可以被实施于任何可比较或者类似存储系统中而无论与该系统关联的制造商、产品名称或者部件或者部件名称如何。可以从本发明的一个或者多个实施例受益的任何存储系统被视为落入本发明的范围内。因此,IBM DS8000TM仅通过示例而被呈现而未旨在于限制。
在各图中的流程图和框图图示了根据本发明的各种实施例的系统、方法和计算机可读介质的可能实现方式的架构、功能和操作。就这一点而言,在流程图和/或框图中的每个块可以代表代码模块、段或者部分,该代码模块、段或者部分包括用于实施指定的逻辑功能的一个或者多个可执行指令。也应当指出,在一些备选实现方式中,在块中指出的功能可以按照与各图中指出的顺序不同的顺序出现。例如,事实上根据涉及到的功能可以基本上并行地执行接连示出的两个块或者有时可以按照相反顺序执行块。也将指出,框图和/或流程图图示的每个块以及在框图和/或流程图图示中的块组合可以由执行指定的功能或者动作的基于专用硬件的系统实施或者由专用硬件和计算机指令的组合实施。

Claims (24)

1.一种用于管理在包括主地点和次地点的数据复制环境中的存储功能的方法,所述方法包括:
连续地监视对在所述次地点的存储配置的改变;
在检测到对在所述次地点的所述存储配置的改变时,向所述主地点传输描述所述改变的远程元数据;
在所述主地点存储所述远程元数据;
在所述主地点发起被镜像到所述次地点的存储管理功能;
读取在所述主地点的所述远程元数据以确定在所述次地点的所述存储配置;以及
以考虑在所述次地点的所述存储配置的方式在所述主地点执行所述存储管理功能。
2.根据权利要求1所述的方法,还包括读取在所述主地点的本地元数据以确定所述主地点的存储配置。
3.根据权利要求2所述的方法,其中执行所述存储管理功能包括以除了在所述次地点的所述存储配置之外还考虑在所述主地点的所述存储配置的方式执行所述存储管理功能。
4.根据权利要求1所述的方法,其中所述存储管理功能是时间点拷贝功能。
5.根据权利要求4所述的方法,其中考虑在所述次地点的所述存储配置包括验证与所述时间点拷贝功能关联的源和目标位于在所述次地点的同一存储系统中。
6.根据权利要求4所述的方法,其中考虑在所述次地点的所述存储配置包括验证在所述主地点的目标和在所述次地点的对应目标是同一一致性组的一部分。
7.根据权利要求1所述的方法,其中在所述主地点存储所述远程元数据包括在所述主地点的主机系统和存储系统中的至少一个系统上存储所述远程元数据。
8.根据权利要求7所述的方法,其中读取在所述主地点的所述远程元数据包括由在所述主地点的所述主机系统读取在所述存储系统和所述主机系统中的至少一个系统上的所述远程元数据。
9.一种计算机可读存储介质,存储用于管理在包括主地点和次地点的数据复制环境中的存储功能的计算机可用程序,所述计算机可用程序被配置为执行如下步骤:
连续地监视对在所述次地点的存储配置的改变;
在检测到对在所述次地点的所述存储配置的改变时向所述主地点传输描述所述改变的远程元数据;
在所述主地点存储所述远程元数据;
在所述主地点发起被镜像到所述次地点的存储管理功能;
读取在所述主地点的所述远程元数据以确定在所述次地点的所述存储配置;以及
以考虑在所述次地点的所述存储配置的方式在所述主地点执行所述存储管理功能。
10.根据权利要求9所述的计算机可读存储介质,其中所述计算机可用程序进一步被配置为执行如下步骤:
读取在所述主地点的本地元数据以确定所述主地点。
11.根据权利要求10所述的计算机可读存储介质,其中执行所述存储管理功能包括以除了在所述次地点的所述存储配置之外还考虑在所述主地点的所述存储配置的方式执行所述存储管理功能。
12.根据权利要求9所述的计算机可读存储介质,其中所述存储管理功能是时间点拷贝功能。
13.根据权利要求12所述的计算机可读存储介质,其中考虑在所述次地点的所述存储配置包括验证与所述时间点拷贝功能关联的源和目标位于在所述次地点的同一存储系统中。
14.根据权利要求12所述的计算机可读存储介质,其中考虑在所述次地点的所述存储配置包括验证在所述次地点的源和在所述次地点的目标是同一一致性组的一部分。
15.根据权利要求9所述的计算机可读存储介质,其中在所述主地点存储所述远程元数据包括在所述主地点的存储系统和主机系统中的至少一个系统上存储所述远程元数据。
16.根据权利要求15所述的计算机可读存储介质,其中读取在所述主地点的所述远程元数据包括由在所述主地点的所述主机系统读取在所述主地点的所述存储系统和所述主机系统中的至少一个系统上的所述远程元数据。
17.一种用于管理在包括主地点和次地点的数据复制环境中的存储功能的装置,所述装置包括:
至少一个处理器;
至少一个存储器设备,所述至少一个存储器设备耦合到所述至少一个处理器并且存储指令,所述指令可由所述至少一个处理器执行以使所述至少一个处理器:
连续地监视对在所述次地点的存储配置的改变;
在检测到对在所述次地点的所述存储配置的改变时向所述主地点传输描述所述改变的远程元数据;
在所述主地点存储所述远程元数据;
在所述主地点发起被镜像到所述次地点的存储管理功能;
读取在所述主地点的所述远程元数据以确定在所述次地点的所述存储配置;以及
以考虑在所述次地点的所述存储配置的方式在所述主地点执行所述存储管理功能。
18.根据权利要求17所述的装置,其中所述指令还使所述至少一个处理器读取在所述主地点的本地元数据以确定所述主地点的存储配置。
19.根据权利要求18所述的装置,其中执行所述存储管理功能包括以除了在所述次地点的所述存储配置之外还考虑在所述主地点的所述存储配置的方式执行所述存储管理功能。
20.根据权利要求17所述的装置,其中所述存储管理功能是时间点拷贝功能。
21.根据权利要求20所述的装置,其中考虑在所述次地点的所述存储配置包括验证与所述时间点拷贝功能关联的源和目标位于在所述次地点的同一存储系统中。
22.根据权利要求20所述的装置,其中考虑在所述次地点的所述存储配置包括验证在所述次地点的源和在所述次地点的目标是同一一致性组的一部分。
23.根据权利要求17所述的装置,其中在所述主地点存储所述远程元数据包括在所述主地点的存储系统和主机系统中的至少一个系统上存储所述远程元数据。
24.一种用于管理在包括主地点和次地点的数据复制环境中的存储功能的系统,所述系统包括:
次主机系统,用于连续地监视对在所述次地点的存储配置的改变;
所述次主机系统还被配置用于在检测到对在所述次地点的所述存储配置的改变时向所述主地点传输描述所述改变的远程元数据;
在所述主地点的存储系统,用于存储所述远程元数据;
主主机系统,用于在所述主地点发起被镜像到所述次地点的存储管理功能;
所述主主机系统还被配置用于读取在所述主地点的所述远程元数据以确定在所述次地点的所述存储配置;以及
所述主主机系统还被配置用于以考虑在所述次地点的所述存储配置的方式在所述主地点执行所述存储管理功能。
CN201380014291.3A 2012-03-15 2013-03-04 对在数据复制环境中的存储功能的基于策略的管理 Active CN104169890B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/420,621 US8990263B2 (en) 2012-03-15 2012-03-15 Policy-based management of storage functions in data replication environments
US13/420,621 2012-03-15
US13/459,942 US8990264B2 (en) 2012-03-15 2012-04-30 Policy-based management of storage functions in data replication environments
US13/459,942 2012-04-30
PCT/JP2013/001297 WO2013136710A1 (en) 2012-03-15 2013-03-04 Policy-based management of storage functions in data replication environments

Publications (2)

Publication Number Publication Date
CN104169890A CN104169890A (zh) 2014-11-26
CN104169890B true CN104169890B (zh) 2017-05-31

Family

ID=49158620

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380014291.3A Active CN104169890B (zh) 2012-03-15 2013-03-04 对在数据复制环境中的存储功能的基于策略的管理

Country Status (5)

Country Link
US (3) US8990263B2 (zh)
CN (1) CN104169890B (zh)
DE (1) DE112013001421B4 (zh)
GB (1) GB2514982B (zh)
WO (1) WO2013136710A1 (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8990263B2 (en) * 2012-03-15 2015-03-24 International Business Machines Corporation Policy-based management of storage functions in data replication environments
US20150081628A1 (en) * 2013-09-17 2015-03-19 International Business Machines Corporation Flashcopy reservation for flashcopy onto a synchronously-mirrored source
CN104881333B (zh) * 2014-02-27 2018-03-20 国际商业机器公司 一种存储系统及其使用的方法
JP6318902B2 (ja) 2014-06-20 2018-05-09 富士通株式会社 冗長システムおよび冗長化方法
JP6511739B2 (ja) * 2014-06-20 2019-05-15 富士通株式会社 冗長システムおよび冗長化方法
CN105808374B (zh) * 2014-12-31 2019-02-05 华为技术有限公司 一种快照处理方法及相关设备
US10032041B2 (en) * 2015-05-30 2018-07-24 Apple Inc. Storage volume protection using restricted resource classes
US10152527B1 (en) 2015-12-28 2018-12-11 EMC IP Holding Company LLC Increment resynchronization in hash-based replication
US10324635B1 (en) 2016-03-22 2019-06-18 EMC IP Holding Company LLC Adaptive compression for data replication in a storage system
US10310951B1 (en) 2016-03-22 2019-06-04 EMC IP Holding Company LLC Storage system asynchronous data replication cycle trigger with empty cycle detection
US10152267B1 (en) * 2016-03-30 2018-12-11 Emc Corporation Replication data pull
US10095428B1 (en) 2016-03-30 2018-10-09 EMC IP Holding Company LLC Live migration of a tree of replicas in a storage system
US9959063B1 (en) * 2016-03-30 2018-05-01 EMC IP Holding Company LLC Parallel migration of multiple consistency groups in a storage system
US10565058B1 (en) 2016-03-30 2020-02-18 EMC IP Holding Company LLC Adaptive hash-based data replication in a storage system
US10048874B1 (en) 2016-06-29 2018-08-14 EMC IP Holding Company LLC Flow control with a dynamic window in a storage system with latency guarantees
US9983937B1 (en) 2016-06-29 2018-05-29 EMC IP Holding Company LLC Smooth restart of storage clusters in a storage system
US10013200B1 (en) 2016-06-29 2018-07-03 EMC IP Holding Company LLC Early compression prediction in a storage system with granular block sizes
US10536465B2 (en) 2017-01-18 2020-01-14 Microsoft Technology Licensing, Llc Security for accessing stored resources
US12019684B2 (en) 2017-01-18 2024-06-25 Microsoft Technology Licensing, Llc Application programming interface arranged to interface with a plurality of data sources
US10838819B2 (en) 2017-01-18 2020-11-17 Microsoft Technology Licensing, Llc Including personal relationship metadata within duplicated resources shared across partitioned storage
US10542088B2 (en) * 2017-01-18 2020-01-21 Microsoft Technology Licensing, Llc Modifying data resources within party-partitioned storage areas
US10572507B2 (en) 2017-05-24 2020-02-25 International Business Machines Corporation Coordination of point-in-time copy in asynchronous mirror environment during consistency group formation
CN107153589B (zh) * 2017-06-14 2020-08-04 苏州浪潮智能科技有限公司 一种镜像数据的读写方法
US10671493B1 (en) 2017-08-29 2020-06-02 Wells Fargo Bank, N.A. Extended remote copy configurator of three-site data replication for disaster recovery
US11748418B2 (en) 2018-07-31 2023-09-05 Marvell Asia Pte, Ltd. Storage aggregator controller with metadata computation control
US11372991B1 (en) 2018-11-27 2022-06-28 Amazon Technologies, Inc. Database operational continuity
US11860743B1 (en) * 2018-11-27 2024-01-02 Amazon Technologies, Inc. Database operational compatibility safeguards
CN111488239B (zh) * 2019-01-28 2023-07-07 伊姆西Ip控股有限责任公司 存储数据的方法、装置和计算机程序产品
US11023431B2 (en) 2019-06-27 2021-06-01 International Business Machines Corporation Split data migration in a data storage system
US11204712B2 (en) 2020-02-14 2021-12-21 International Business Machines Corporation Using mirror path statistics in recalling extents to a primary storage system and a secondary storage system from a third storage system
US11093156B1 (en) 2020-02-14 2021-08-17 International Business Machines Corporation Using storage access statistics to determine mirrored extents to migrate from a primary storage system and a secondary storage system to a third storage system

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1061050A1 (en) * 1999-06-17 2000-12-20 Lucent Technologies Inc. Process for fabricating an article via sol-gel processing
US6611901B1 (en) * 1999-07-02 2003-08-26 International Business Machines Corporation Method, system, and program for maintaining electronic data as of a point-in-time
US6564307B1 (en) * 1999-08-18 2003-05-13 International Business Machines Corporation Method, system, and program for logically erasing data
US6338114B1 (en) * 1999-08-18 2002-01-08 International Business Machines Corporation Method, system, and program for using a table to determine an erase operation to perform
US6557089B1 (en) * 2000-11-28 2003-04-29 International Business Machines Corporation Backup by ID-suppressed instant virtual copy then physical backup copy with ID reintroduced
JP2002259189A (ja) 2001-03-05 2002-09-13 A I Soft Inc データ同期機能を有する情報処理装置及びデータ同期方法
US7421478B1 (en) 2002-03-07 2008-09-02 Cisco Technology, Inc. Method and apparatus for exchanging heartbeat messages and configuration information between nodes operating in a master-slave configuration
JP2004295465A (ja) 2003-03-27 2004-10-21 Hitachi Ltd 計算機システム
US7680957B1 (en) 2003-05-09 2010-03-16 Symantec Operating Corporation Computer system configuration representation and transfer
US7054960B1 (en) * 2003-11-18 2006-05-30 Veritas Operating Corporation System and method for identifying block-level write operations to be transferred to a secondary site during replication
US7774096B2 (en) * 2003-12-31 2010-08-10 Kimberly-Clark Worldwide, Inc. Apparatus for dispensing and identifying product in washrooms
US20050240928A1 (en) * 2004-04-09 2005-10-27 Brown Theresa M Resource reservation
US7409510B2 (en) * 2004-05-27 2008-08-05 International Business Machines Corporation Instant virtual copy to a primary mirroring portion of data
US20060047713A1 (en) * 2004-08-03 2006-03-02 Wisdomforce Technologies, Inc. System and method for database replication by interception of in memory transactional change records
JP4585276B2 (ja) 2004-11-01 2010-11-24 株式会社日立製作所 ストレージシステム
US7457826B2 (en) * 2004-12-20 2008-11-25 Microsoft Corporation Systems and methods for synchronization of items without snapshots
US7509325B2 (en) 2006-04-27 2009-03-24 International Business Machines Corporation Synchronization of configuration values between a data base and its input utility
US7877628B2 (en) * 2006-06-08 2011-01-25 International Business Machines Corporation Mirroring data between primary and secondary sites
TR200906768T2 (tr) 2007-03-22 2009-10-21 Telefonaktiebolaget Lm Ericsson (Publ) Çevrimiçi konfigürasyon yönetimi sistemi ve usulü.@
US8015383B2 (en) * 2007-06-27 2011-09-06 International Business Machines Corporation System, method and program to manage virtual memory allocated by a virtual machine control program
JP2009020568A (ja) 2007-07-10 2009-01-29 Hitachi Ltd ストレージシステム及びディザスタリカバリ構成の設計方法
US20090327295A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Maintenance of exo-file system metadata on removable storage device
JP5157013B2 (ja) * 2008-10-01 2013-03-06 日本発條株式会社 テンショナー
JP5471168B2 (ja) 2009-08-26 2014-04-16 日本電気株式会社 データ同期システム、データ同期装置、データ同期方法及びデータ同期用プログラム
JP2011170742A (ja) 2010-02-22 2011-09-01 Nec Aerospace Syst Ltd データベース装置、データベースシステムおよびバックアップ方法
US8990263B2 (en) * 2012-03-15 2015-03-24 International Business Machines Corporation Policy-based management of storage functions in data replication environments

Also Published As

Publication number Publication date
GB201417800D0 (en) 2014-11-19
US20130246367A1 (en) 2013-09-19
GB2514982A (en) 2014-12-10
DE112013001421B4 (de) 2022-08-11
WO2013136710A1 (en) 2013-09-19
US8990263B2 (en) 2015-03-24
GB2514982B (en) 2019-11-20
US20130246354A1 (en) 2013-09-19
CN104169890A (zh) 2014-11-26
US9344498B2 (en) 2016-05-17
US8990264B2 (en) 2015-03-24
DE112013001421T5 (de) 2014-12-11
US20150156263A1 (en) 2015-06-04

Similar Documents

Publication Publication Date Title
CN104169890B (zh) 对在数据复制环境中的存储功能的基于策略的管理
US8468133B2 (en) Workload learning in data replication environments
US10365983B1 (en) Repairing raid systems at per-stripe granularity
US20200225861A1 (en) Method and system for managing storage system
US10146646B1 (en) Synchronizing RAID configuration changes across storage processors
US10664177B2 (en) Replicating tracks from a first storage site to a second and third storage sites
JP4916714B2 (ja) ストレージ・アクセス要求を処理するための方法およびプログラム
JP5768587B2 (ja) ストレージシステム、ストレージ制御装置およびストレージ制御方法
US7251713B1 (en) System and method to transport data snapshots
US20150012699A1 (en) System and method of versioning cache for a clustering topology
AU2016203273A1 (en) A method for a source storage device sending data to a backup storage device for storage, and storage device
US11157177B2 (en) Hiccup-less failback and journal recovery in an active-active storage system
US9053027B1 (en) Techniques for maintaining and restoring dirty caches across CPU resets
US10095585B1 (en) Rebuilding data on flash memory in response to a storage device failure regardless of the type of storage device that fails
US8650435B2 (en) Enhanced storage device replacement system and method
US10776015B1 (en) Limiting bandwidth usage for an asynchronous replication session in a storage system
US10649764B2 (en) Module mirroring during non-disruptive upgrade
US11592988B2 (en) Utilizing a hybrid tier which mixes solid state device storage and hard disk drive storage
US10769020B2 (en) Sharing private space among data storage system data rebuild and data deduplication components to minimize private space overhead
US11989434B1 (en) Optimizing protection of highly deduped data for performance and availability
US20240134985A1 (en) Zero-trust remote replication
US20240232358A9 (en) Zero-trust remote replication
US11853166B2 (en) Storage system recovery without data retransmission
US11520488B2 (en) Method and apparatus for identifying a device missing from a consistency group
US20240118823A1 (en) Remote replication data efficiency optimization with host extended copy commands

Legal Events

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