CN103562879B - 透明文件系统迁移到新物理位置的方法和系统 - Google Patents

透明文件系统迁移到新物理位置的方法和系统 Download PDF

Info

Publication number
CN103562879B
CN103562879B CN201280025510.3A CN201280025510A CN103562879B CN 103562879 B CN103562879 B CN 103562879B CN 201280025510 A CN201280025510 A CN 201280025510A CN 103562879 B CN103562879 B CN 103562879B
Authority
CN
China
Prior art keywords
physical storage
migration
magnetic track
storage locations
bitmap
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.)
Expired - Fee Related
Application number
CN201280025510.3A
Other languages
English (en)
Other versions
CN103562879A (zh
Inventor
T·瓦西克
A·L·皮尔特
K·J·卡特曼
S·J·西蒙森
B·塔尔伯特
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 CN103562879A publication Critical patent/CN103562879A/zh
Application granted granted Critical
Publication of CN103562879B publication Critical patent/CN103562879B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • 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
    • 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/0689Disk arrays, e.g. RAID, JBOD

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

透明文件系统迁移到新物理位置的方法和系统
技术领域
本发明涉及文件系统,更具体地说,涉及透明文件系统迁移到新物理位置。
背景技术
大多数现代操作系统提供一种方式,以便将打印就绪对象存储在其文件系统中,并且将这些对象异步地发送到打印机。这允许在打印机实际打印输出之前,创建打印对象的应用继续处理。此过程称为SPOOLing(同时联机外围操作),并且存储的数据称为SPOOL。SPOOL还可以用于存储从诸如网络设备之类的输入外围设备到达系统的信息。
在多映像操作系统环境(例如,耦合环境中的多个操作系统)中,在所有操作系统映像之间共享单个SPOOL具有优点。一个优点是它允许一个映像上的进程访问其它映像上的外围设备。在共享环境中,从多个独立操作系统映像上的多个进程(线程)同时访问(写入或读取)SPOOL。
SPOOL可以实现为操作系统的本机文件系统中的一系列文件。但是,它还可以实现为映射到操作系统的本机文件系统的新逻辑文件系统。通常执行该操作以便克服本机文件系统的局限性、限制和/或性能问题。SPOOL文件系统中的文件通常具有临时性,写入和读取一次,并且它们可以非常大。在大型操作系统中,SPOOL可以跨越多个物理/逻辑存储设备以便不仅适应放置在SPOOL中的对象的大小,而且还适应所需的性能特性。
实现为映射到操作系统的本机文件系统中的对象的文件系统的SPOOL可以被视为逻辑文件系统(LFS)。与任何文件系统相同,存在扩展和收缩可用于SPOOL文件的空间的要求。可以通过向SPOOL添加新
本机文件系统对象来实现增加空间。收缩SPOOL则需要从SPOOL移除本机文件系统对象。但是,在可以移除本机文件系统对象之前,必须从该对象移除驻留在该对象上的所有SPOOL文件。用于执行该操作的传统方式是将本机文件系统对象标记为不可用于新SPOOL数据集,然后因为SPOOL文件是临时的,所以等待删除位于该对象上的SPOOL文件。一旦删除使用对象的所有SPOOL文件,就可以从SPOOL移除本机文件系统对象并将其删除。
发明内容
一个实施例是一种方法,所述方法包括标识文件系统中支持由多个独立进程同时访问的源物理存储位置。标识所述文件系统中的目标物理存储位置并将所述源物理存储位置的内容迁移到所述目标物理存储位置。所述迁移包括不允许对所述源物理存储位置进行新分配,并将内容从所述源物理存储位置复制到所述目标物理存储位置。在所述迁移之前或在所述迁移期间,接收将数据写入到所述源物理存储位置的写入请求。与所述迁移同时地服务于所述写入请求。将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置。所述重定向响应于所述迁移完成。所述请求来自所述多个独立进程并且包括逻辑输入/输出(I/O)和物理I/O两者。
另一个实施例是一种系统,所述系统包括被配置为执行一种方法的处理器。所述方法包括标识文件系统中支持由多个独立进程同时访问的源物理存储位置。标识所述文件系统中的目标物理存储位置并将所述源物理存储位置的内容迁移到所述目标物理存储位置。所述迁移包括不允许对所述源物理存储位置进行新分配,并将内容从所述源物理存储位置复制到所述目标物理存储位置。在所述迁移之前或在所述迁移期间,接收将数据写入到所述源物理存储位置的写入请求。与所述迁移同时地服务于所述写入请求。将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置。所述重定向响应于所述迁移完成。所述请求来自所述多个独 立进程并且包括逻辑输入/输出(I/O)和物理I/O两者。
另一实施例是一种计算机程序产品,所述计算机程序产品包括有形存储介质,所述有形存储介质可由处理电路读取并存储指令以便由所述处理电路执行以执行一种方法。所述方法包括标识文件系统中支持由多个独立进程同时访问的源物理存储位置。标识所述文件系统中的目标物理存储位置并将所述源物理存储位置的内容迁移到所述目标物理存储位置。所述迁移包括不允许对所述源物理存储位置进行新分配,并将内容从所述源物理存储位置复制到所述目标物理存储位置。在所述迁移之前或在所述迁移期间,接收将数据写入到所述源物理存储位置的写入请求。与所述迁移同时地服务于所述写入请求。将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置。所述重定向响应于所述迁移完成。所述请求来自所述多个独立进程并且包括逻辑输入/输出(I/O)和物理I/O两者。
通过本发明的技术实现其它特性和优点。在此详细描述了本发明的其它实施例和方面,并且这些实施例和方面被视为要求保护的本发明的一部分。为了更好地理解本发明以及优点和特性,参考说明书和附图。
从第一方面看,本发明提供一种方法,所述方法包括:标识文件系统中支持由多个独立进程同时访问的源物理存储位置;标识所述文件系统中的目标物理存储位置;将所述源物理存储位置的内容迁移到所述目标物理存储位置,所述迁移包括:不允许对所述源物理存储位置进行新分配;将内容从所述源物理存储位置复制到所述目标物理存储位置;接收将数据写入到所述源物理存储位置的写入请求,所述接收在所述迁移之前或在所述迁移期间;与所述迁移同时地服务于所述写入请求;以及响应于所述迁移完成,将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置,所述请求来自所述多个独立进程并且包括逻辑输入/输出(I/O)和物理I/O两者。
优选地,本发明提供一种方法,所述方法还包括从所述文件系统移除所述源物理存储位置。
优选地,本发明提供一种方法,其中所述文件系统是同时联机外围操作(SPOOL)文件系统。
优选地,本发明提供一种方法,其中在不对所述多个独立进程进行任何更改的情况下执行所述迁移和重定向。
优选地,本发明提供一种方法,其中所述多个独立进程在多个计算机系统上执行。
优选地,本发明提供一种方法,其中使用虚拟化对象执行所述重定向。
优选地,本发明提供一种方法,其中使用逻辑文件系统执行所述重定向。
从另一个方面看,本发明提供一种系统,所述系统包括被配置为执行一种方法的处理器,所述方法包括:用于标识文件系统中支持由多个独立进程同时访问的源物理存储位置的部件;用于标识所述文件系统中的目标物理存储位置的部件;用于将所述源物理存储位置的内容迁移到所述目标物理存储位置的部件,所述迁移包括:用于不允许对所述源物理存储位置进行新分配的部件;用于将内容从所述源物理存储位置复制到所述目标物理存储位置的部件;用于接收将数据写入到所述源物理存储位置的写入请求的部件,所述接收在所述迁移之前或在所述迁移期间;用于与所述迁移同时地服务于所述写入请求的部件;以及用于响应于所述迁移完成,将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置的部件,所述请求来自所述多个独立进程并且包括逻辑输入/输出(I/O)和物理I/O两者。
优选地,本发明提供一种系统,其中所述方法还包括用于从所述文件系统移除所述源物理存储位置的部件。
优选地,本发明提供一种系统,其中所述文件系统是同时联机外围操作(SPOOL)文件系统。
优选地,本发明提供一种系统,其中在不对所述多个独立进程进行任何更改的情况下执行所述用于迁移的部件和用于重定向的部件。
优选地,本发明提供一种系统,其中所述多个独立进程在多个不同计 算机系统上执行。
优选地,本发明提供一种系统,其中使用虚拟化对象执行所述用于重定向的部件。
优选地,本发明提供一种系统,其中使用逻辑文件系统执行所述用于重定向的部件。
从另一个方面看,本发明提供一种计算机程序产品,所述计算机程序产品包括:有形存储介质,所述有形存储介质可由处理电路读取并存储指令以便由所述处理电路执行以执行一种方法,所述方法包括:标识文件系统中支持由多个独立进程同时访问的源物理存储位置;标识所述文件系统中的目标物理存储位置;将所述源物理存储位置的内容迁移到所述目标物理存储位置,所述迁移包括:不允许对所述源物理存储位置进行新分配;将内容从所述源物理存储位置复制到所述目标物理存储位置;接收将数据写入到所述源物理存储位置的写入请求,所述接收在所述迁移之前或在所述迁移期间;与所述迁移同时地服务于所述写入请求;以及响应于所述迁移完成,将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置,所述请求来自所述多个独立进程并且包括逻辑输入/输出(I/O)和物理I/O两者。
优选地,本发明提供一种计算机程序产品,其中所述方法还包括从所述文件系统移除所述源物理存储位置。
优选地,本发明提供一种计算机程序产品,其中所述文件系统是同时联机外围操作(SPOOL)文件系统。
优选地,本发明提供一种计算机程序产品,其中在不对所述多个独立进程进行任何更改的情况下执行所述迁移和重定向。
优选地,本发明提供一种计算机程序产品,其中所述多个独立进程在多个计算机系统上执行。
优选地,本发明提供一种计算机程序产品,其中使用虚拟化对象执行所述重定向。
优选地,本发明提供一种计算机程序产品,其中使用逻辑文件系统执 行所述重定向。
附图说明
现在仅通过实例的方式参考附图描述本发明的优选实施例,这些附图是:
图1示出根据本发明的一个优选实施例实现的系统;
图2示出根据本发明的一个优选实施例的在迁移之前的spool文件系统;
图3示出根据本发明的一个优选实施例实现的整体过程流;
图4是根据本发明的一个优选实施例的迁移设置阶段的过程流;
图5示出根据本发明的一个优选实施例的迁移中的第一阶段的过程流;
图6示出根据本发明的一个优选实施例的在从一个物理卷到另一个物理卷的迁移期间的图2的SPOOL文件系统;
图7示出根据本发明的一个优选实施例的迁移的第二阶段的过程流;以及
图8示出根据本发明的一个优选实施例的在从一个物理卷到另一个物理卷的迁移完成之后的图2和6的SPOOL文件系统。
具体实施方式
一个实施例包括一种方法,以便将数据从SPOOL文件系统中的现有本机文件系统对象复制到定义到SPOOL文件系统的另一个对象上的可用空间。复制在无需知晓正在运行的应用的情况下发生,并且使用将SPOOL数据地址从源对象映射到目标对象的重定向方案(例如,换位器(transposer))。在完成复制过程时,将位于SPOOL中的原始本机文件系统对象上的数据虚拟化到与SPOOL关联的另一个现有对象,并且删除源本机文件系统对象。虚拟化对象继续存在,直到删除对象的所有用户。可通过非虚拟化目标对象提供虚拟化(映射)对象中的空闲空间。
这允许收缩SPOOL使用的物理空间(删除本机文件系统对象),而不必等待删除逻辑(虚拟化)SPOOL对象内部的所有SPOOL文件。处理活动SPOOL文件(活动线程或进程读取或写入的那些文件)而不影响正在使用SPOOL文件的应用。此外,一个实施例处理知晓SPOOL中的数据位置(具有SPOOL逻辑文件系统中的SPOOL数据地址)的应用,并且允许这些应用在收缩SPOOL之后对数据进行寻址。应用继续使用对“旧”SPOOL对象进行寻址的逻辑地址。该“旧”SPOOL对象仍然作为映射到另一个物理SPOOL对象内部的虚拟化对象存在,并且应用使用“旧”地址执行I/O。集成到SPOOL I/O功能中的映射特性能够识别虚拟化环境,并且将物理I/O定向到OS的正确物理本机对象。此外,在所有使用“旧”SPOOL卷的应用完成处理之后,“旧”SPOOL对象将不复存在。
对两种类型应用的支持防止在SPOOL逻辑文件系统(LFS)中重定位SPOOL文件的简单过程,因为活动进程无法继续处理被重定位的数据,并且如果重定位数据,则应用已知的SPOOL数据地址将不再有效。
在一种环境中使用一个实施例,该环境包括多个耦合操作系统以及从这些操作系统上的多个进程(线程)访问的SPOOL数据。
在此描述的一个实施例允许直接处理用于容纳spool对象的本机OS对象。这允许更换磁盘驱动器设备而不影响存储在SPOOL中的数据。此外,应用不受影响,因为当移除磁盘驱动器设备时,不需要对应用中的SPOOL“指针”和其它SPOOL数据进行更改。
一个实施例支持映射到本机文件系统(例如SPOOL)的LFS,以及映射到遍布多个物理设备的物理文件系统(PFS)的LFS。
一个实施例涉及以透明并且非破坏性的方式,将基于一组物理卷的逻辑文件系统(LFS)迁移到新的一组物理卷。在迁移过程期间和之后,保持LFS的多个关键特性。例如,保留应用用于对LFS中的数据进行访问的数据寻址方案。在迁移过程期间和之后,自动并且透明地转换数据地址以便访问正确的物理卷。此外,可以使用不同的几何结构定义源和目标物 理卷,并且当生成物理数据地址时,转换过程自动考虑这些差异。此外,不需要对应用数据或应用代码进行更改,因为将I/O操作自动重定向到正确的目标物理卷。当必要时,在将数据从源物理卷迁移到目标物理卷时,透明地重试I/O操作。此外,在整个迁移过程中,支持从在多个紧密耦合的计算机系统上运行的多个进程并发访问LFS中的数据。更进一步,可以将多个物理卷合并到单个物理卷而不对数据或应用进行更改,因此可能简化卷管理任务。
如在此使用的,术语“SPOOL文件系统”或简称“SPOOL”指逻辑容器,其用于在分布式计算机系统中运行的系统和应用进程产生的SPOOL数据。SPOOL文件系统管理来自多个进程的空间分配/取消分配请求。此外,SPOOL文件系统提供从在多个紧密耦合的计算机系统上运行的多个进程并发访问spool数据。这种对SPOOL数据的多重访问是SPOOL文件系统的一个重要特性。如在此使用的,术语“紧密耦合的计算机系统”指包含多个物理上分离的OS映像的分布式计算机系统,这些OS映像具有对共享数据的对称访问并且向应用(例如,在IBM System上运行的Sysplex)呈现单个系统映像。
SPOOL文件系统包括可以单独管理(操作管理)的一个或多个SPOOL卷。如在此使用的,术语“SPOOL卷”指以某种方式映射到底层操作系统的数据管理组件的逻辑实体。在现代操作系统中,以一对一关系将单个逻辑SPOOL卷映射到物理磁盘卷上的单个物理数据集。在此处描述的实施例中,作为迁移的结果,可以以多对一关系将多个逻辑SPOOL卷映射到单个物理数据集。
如在此使用的,术语“迁移”指将数据从一个SPOOL卷移动到另一个SPOOL卷。“来自”SPOOL卷在此称为“源卷”,“去往”SPOOL卷在此称为“目标卷”。在此描述的实施例透明地处理用于迁移SPOOL卷的运行时输入/输出(I/O)。应该注意,在此描述的实施例可以扩展到任何类型的文件系统。
如在此使用的,术语“运行时”指运行用户应用并且可能向SPOOL 卷执行I/O的单线程或多线程用户执行上下文。运行时包括实现与迁移器执行上下文通信的低级接口。如在此描述的,SPOOL文件系统提供SPOOL空间的集中管理,但运行时I/O是分散的。SPOOL文件系统定向和协调对SPOOL的访问,但对于对物理设备的实际访问,使用底层操作系统的数据管理工具。运行时I/O使用平面寻址方案访问SPOOL文件系统中的个体数据记录。针对应用透明地执行将记录的逻辑地址映射到物理位置,包括当迁移正在进行时以及当在物理卷之间移动逻辑记录时。
如在此使用的,术语“迁移器”指协调迁移的所有阶段的单线程或多线程执行上下文。如上面提及的,在运行时中存在钩子以便在针对迁移卷执行任何I/O之前向迁移器报告。迁移器向运行时返回指令,且实际I/O停留在运行时执行上下文中。在一个实施例中,每个迁移器表示一个迁移。
如在此使用的,术语“助理”指与迁移器协同工作以便在紧密耦合的计算机系统之间扩展迁移能力的单线程或多线程执行上下文。在一个实施例中,紧密耦合的计算机系统中的每个映像托管一个助理,并且一个助理可以处理多个迁移。助理通过来自迁移器的指导,协调迁移阶段转变。
如在此使用的,术语“磁道位图”指以下位图:在设置阶段创建并且表示必须从源SPOOL卷迁移到目标SPOOL卷的源磁道。应该注意,一个实施例使用磁道作为最小存储单位,但实施例可以支持任何存储单位类型(例如记录)。
如在此使用的,术语“运行时位图”指用于判定在执行到源SPOOL卷的I/O之前,是否需要与迁移器通信的位图。在一个实施例中,运行时位图的粒度是磁道。
如在此使用的,术语“重新迁移位图”指用于确定哪些磁道可能需要在第二阶段期间重新迁移的位图。在一个实施例中,迁移器与运行时协作,计算哪个(哪些)磁道可能需要被重新迁移并且将该信息存储在重新迁移位图中。在一个实施例中,还使用重新迁移位图针对紧密耦合复合体中的任何系统提供重新启动和接管能力。
图1示出根据一个实施例实现的系统。如图1中所示,多个操作系统 102同时使用一个SPOOL子系统104。图1中所示的SPOOL子系统104还通过接口连接到I/O设备106。在一个实施例中,操作系统102在作为多处理器计算机系统的一部分的处理器上执行。I/O设备106包括任何外围设备(多个)(例如,打印机、硬盘驱动器、个人计算机等)以及任何网络(因特网、局域网等),或者是到它们的接口。图1中所示的SPOOL子系统104可以以所属技术领域已知的任何方式使用,并且通常用于存储大型数据集。SPOOL子系统104中的数据包括从操作系统102传输到I/O设备106的数据,以及操作系统102从I/O设备106接收的数据。
图2示出根据一个实施例的在迁移之前的spool文件系统。具有“M”个执行图2中所示的应用和系统进程的系统202、“N”个物理SPOOL卷206(例如,本机文件系统对象)以及SPOOL子系统映射204管理的“N”个逻辑SPOOL卷。如图2中所示,SPOOL子系统映射204中的一个逻辑SPOOL卷对应于每个物理SPOOL卷206。图2示出系统202到SPOOL的逻辑I/O208以及系统到物理SPOOL卷的物理I/O210。图2还示出逻辑I/O208的spool子系统映射204到物理SPOOL卷206的映射212。
如图2中所示,具有到物理SPOOL卷206b的两个物理I/O210a和210b。此外,具有到物理SPOOL卷206b的两个逻辑I/O208b。将两个逻辑I/O208b转换为位于物理SPOOL卷206b上的物理地址,如映射212b所示。如在此使用的,术语“物理I/O”指访问数据物理上驻留在其上的物理介质的I/O操作。因此,对于物理I/O,应用直接向本机OS文件系统对象执行I/O。如在此使用的,术语“逻辑I/O”指以下I/O操作:通过使用映射204将逻辑地址转换为位于物理spool卷206上的物理地址,访问存储在SPOOL子系统中的数据。为了满足请求,SPOOL子系统代表请求方执行到实际物理介质的物理I/O。
如图3中所示,一个实施例包括四阶段迁移过程。首先,在方框302执行迁移设置,其包括标识源/目标物理SPOOL卷并初始化数据和系统以便迁移。在方框304,发生迁移的第一阶段,并且它包括执行其中将磁道从源复制到目标的第一迁移传递以及标识需要重新迁移的磁道。在方框 306,执行迁移的第二阶段,并且它包括其中将标识为需要重新迁移的任何磁道从源复制到目标的第二迁移传递。在方框308,执行迁移清理以便完成迁移。
图4是根据一个实施例的迁移设置的过程流,其用于从源物理SPOOL卷迁移到目标物理SPOOL卷。在方框402,在单个系统上创建控制迁移的迁移器执行上下文,并且在每个系统上创建助理执行上下文。在方框404,确定需要迁移什么磁道,并且生成(或准备好)迁移器磁道位图。此外,在方框406,在复合体中访问SPOOL的每个系统上创建运行时位图。创建运行时位图时开启所有位,以便在针对源卷执行任何I/O之前,通知运行时向迁移器报告。在方框408,不允许源卷上的新分配。
如在此使用的,术语“转变计数”指迁移器为了在迁移器上下文和运行时上下文之间管理第一阶段和第二阶段转变而进行的计数。转变计数与源卷关联,并且存在于紧密耦合复合体中的所有系统上。在适当时候,迁移器通知助理将转变计数增加1(或某个其它固定值)。适当时候的一个实例是将迁移卷从一种状态转变为另一种状态。在各实施例中,当迁移过程进行可以影响I/O操作的更改时,更新转变计数。如果给出I/O,则运行时上下文在每个I/O之前捕获转变计数的副本,执行I/O,然后将当前转变计数的副本与原始转变计数相比较以便查看是否需要重做(redo)。在一个实施例中,每当转变计数更改时需要重做。转变计数的用途是发信号通知运行时某个进行中的I/O需要重做。例如,如果用于针对源卷执行物理I/O的先前运行时I/O决策不再有效并且该同一逻辑I/O现在应对目标物理卷进行寻址,则可能需要重做。重做时,运行时上下文向迁移器上下文发送另一个消息以获得指令。这允许迁移器通知运行时I/O何时从源切换到目标。使用转变计数可以避免通过迁移器过程来串行化每个运行时I/O操作,该串行化可能是成本高昂的。运行时使用转变计数检测卷的状态更改,并且如果在I/O操作期间检测到更改,则重做I/O操作。
在迁移期间,将数据从源物理卷移动到目标物理卷上的特定位置。如果给出源磁道地址,则可以将映射值应用于源地址以便获得数据在目标物 理卷上的确切位置。因此,在迁移期间应用不需要担心寻址差异。
图5示出根据一个实施例的迁移的第一阶段的过程流。在该阶段内,尽可能快地将数据从源卷复制到目标卷,而不中断到源卷或目标卷的运行时I/O。在写入到源卷之前,运行时上下文向迁移器上下文通知即将发生的写入。迁移器将写入记录在重新迁移位图中,以便可以在第二阶段重新迁移这些磁道。在方框502,迁移器通知助理设置源卷状态,以便在将磁道读取或写入到关联的源卷之前,运行时将询问运行时位图。在方框504,助理递增源卷转变计数。在方框506,迁移器继续到使用磁道级别位图作为指南,将磁道从源卷写入到目标卷。磁道级别位图在设置阶段创建,并且表示需要迁移的源磁道。
当执行方框506中的复制时,执行方框508以便监视到源卷的I/O。因此,同时执行迁移和为写入请求服务。在读取或写入源磁道之前,运行时询问运行时位图。在设置阶段创建运行时位图,并且开启所有位。如果给出磁道和设置为开启的对应位,则运行时向迁移器发送请求/响应消息。在消息中,运行时表示待处理I/O是读取还是写入。如果消息是写入,则执行方框510,并且迁移器将该事实记录在重新迁移位图中以便为第二阶段做准备。响应于该消息,迁移器通知运行时向源卷中写入,并且将运行时位图中的关联位保持开启状态。
在此处描述的实施例中,物理I/O在运行时执行上下文中发生,并且与迁移器的通信相对快速,因为进行非常少的处理。
当方框506中的处理完成时,第一阶段完成,并且迁移器准备转变到第二阶段处理。应该注意,在方框506中的处理期间,可以取消迁移而没有任何数据丢失。
图6示出根据一个实施例的在第一阶段期间(或完成时)从物理卷206b到物理卷206d的迁移期间的图2的SPOOL文件系统。如图6中所示,通过逻辑I/O208访问的物理卷206b上的某些文件已移动到物理卷206d并且通过映射204访问,而其它文件(例如,必须在第二阶段重新迁移的那些文件、尚未迁移的那些文件)仍然位于物理卷206b上并且通过映射212b 访问。此外,添加到物理卷206d的物理I/O602,从而替换到物理卷206b的物理I/O210b。
在迁移之前,将映射204中的卷2映射到物理卷206d,将映射204中的卷1映射到物理卷206b。在迁移期间,映射204中的卷1具有两个同时映射—一个到物理卷206b,另一个到物理卷206d的子集。通过针对映射中的卷1维护的控制信息来实现该映射。当发出物理I/O以便向映射204中的卷1进行逻辑I/O时,取决于迁移的状态,运行时I/O将使用这两个映射中的一个或另一个。在迁移之后,移除从映射204中的卷1到物理卷206b的映射,并仅保留从映射204中的卷1到物理卷206d的子集的映射。现在已虚拟化映射204中的卷1,因为它现在没有自己的物理spool卷206。
图7示出根据一个实施例的迁移的第二阶段的过程流。第二阶段用于重新迁移所需的任何磁道以便完成迁移。在一个实施例中,出于恢复以及性能目的,将重新迁移位图写入到目标卷。在第二阶段期间,如此处理表示重新迁移的任何磁道,并且迁移器定向运行时以便针对目标卷执行物理I/O。处理重新迁移位图之后,第二阶段完成。在一个实施例中,采取操作以便确保如果迁移器上下文出现故障,则可以重新启动迁移。
在第二阶段期间,响应于运行时请求/响应消息,迁移器将进行转变。所述转变将通知运行时使用目标卷而不是源卷。在启动到目标的任何I/O之前,必须完成到源数据集的任何“进行中的I/O”,或者至少确定必须通过向迁移器发出的另一个请求/响应消息来重做I/O。为了确保这点,使用与源卷关联的转变计数。在启动迁移时,将转变计数设置为任意值。在迁移期间,在向迁移器发送请求/响应之前,运行时捕获该计数并将其与唯一I/O关联。在I/O完成时,运行时使用与源卷关联的当前计数,重新检查存储的计数。如果值不同,则必须通过向迁移器发出的另一个请求/响应消息来重做I/O。在消息的响应部分中,迁移器通知运行时必须对源卷还是对目标卷执行I/O。在第一阶段,对源卷执行所有I/O。在第二阶段,重定向I/O以便对目标卷执行。
如图7的方框702中所示,在启动第二阶段时,迁移器向所有助理发 出启动第二阶段请求。助理在每个系统的基础上递增转变计数(例如,递增1)。此外,助理还确保设置了源卷映射值。将映射值应用于源地址,从而产生关联的目标地址。所有助理表示完成之后,执行方框704,并且迁移器将重新迁移位图写出到目标卷。在一个实施例中,在设置阶段提前保留用于该位图的空间。
将重新迁移位图固定到目标卷允许在迁移器系统出现故障的情况下,进行恢复和迁移器接管。可以读取重新迁移位图并无缝地恢复第二阶段。此外,当第二阶段进行时,每个系统上的每个助理从目标卷读取重新迁移位图,并且以原子方式将其应用于系统的存储器运行时位图。如前所述,运行时位图引导将请求/响应消息发送到迁移器。重新迁移磁道之后,运行时不需要向迁移器报告。相反,I/O将使用映射值并执行到目标卷的I/O。读取重新迁移位图并将其应用于运行时位图的操作大大减少了与迁移器的请求/响应通信。
在启动第二阶段期间,不处理运行时请求/响应消息,直到所有助理已递增转变计数并确认(例如,通过ACK消息)递增完成。通常,这是即时的,但算法必须考虑过多的时间,并且在需要时取消迁移。应该注意,直到此时可以取消迁移,因为已经对源卷执行所有I/O。在一个实施例中,为了检测过多的等待时间,迁移器使用心跳计时器检测迁移,并且如果超过指定的时间段,则取消迁移。启动图7中的方框706之后,无法取消迁移,因为数据现在跨越源卷和目标卷两者。这意味着必须具备恢复机制以便如果发生故障,则恢复迁移。
在方框710,迁移器采取操作,并且以不同于在迁移的第一阶段使用的方式,响应运行时请求/响应消息。给出运行时消息中的磁道(多个),迁移器询问重新迁移位图。如果必须重新迁移磁道,则在响应运行时消息之前,读取源磁道(多个)并将其写入到关联的目标磁道。此外,迁移器关闭重新迁移位图中的关联位,并将位图更改写入到目标卷。在此,重新迁移的磁道与位图之间的I/O排序很重要,以便如果迁移器系统出现故障,则确保可以在恢复模式中使用目标卷上的重新迁移位图。首先发生源磁道 到目标磁道的写入,然后将位图写入到目标卷。如果在写入磁道之后但在写入位图之前发生崩溃,则恢复代码仅重新迁移磁道。这确保不会遗漏重新迁移操作。
迁移器在方框706处理任何重新迁移之后,执行方框708,并且返回到运行时的响应将更新目标卷并关闭运行时位图中的关联位。通过更新运行时位图,将不断地减少运行时请求/响应消息数量。当然,这仅减少来自这一个系统的业务。为了减少来自所有系统的运行时业务,助理定期从目标卷读入重新迁移位图,并且以原子方式将其应用于运行时位图。
当运行时更新源卷中的数据时,使用映射值透明地将源地址转换为目标卷位置。使用此独有的机制,用户应用能够在迁移期间使用现有寻址。在某一时刻,已处理所有重新迁移操作并且第二阶段完成。
图8示出根据一个实施例的在从物理卷206b到物理卷206d的迁移完成之后的图2和6的SPOOL文件系统。如图8中所示,从SPOOL配置中移除物理卷206b。如图8中所示,将先前位于物理卷206b上并通过逻辑I/O208访问的所有数据移动到物理卷206d并通过映射604访问。此外,添加到物理卷206d的物理I/O802,从而替换到物理卷206b的物理I/O210a。将从逻辑卷到物理卷的映射存储在SPOOL卷的控制信息中。始终针对映射204中的卷1执行逻辑I/O,但物理I/O可以转到不同位置,具体取决于该控制信息指示的内容。尽管未在图8中示出,但指定映射204中的逻辑卷1的任何新的读取或写入(逻辑I/O)都将转到物理卷206d。
在一个实施例中,如果执行迁移器上下文的系统出现故障,则其它系统之一变成迁移器。这种实现使用有保证的消息传送系统,其中将所有运行时请求/响应消息重新路由到接管系统。对此,接管迁移器必须决定是否应该取消迁移或者是否应该恢复迁移并完成。在一个实施例中,这种决定基于是否在第二阶段将重新迁移位图成功写入到目标卷。如果是,则迁移器重新读取重新迁移位图,并且以第二阶段模式恢复迁移。另一方面,如果未写入重新迁移位图,则取消迁移并且退出到预迁移状态。重新迁移位图提供了独有的恢复和执行能力。
技术效果和益处包括能够将数据从SPOOL文件系统中的现有本机文件系统对象复制到定义到SPOOL文件系统的另一个对象上的可用空间而无需知晓正在运行的应用。
在此使用的术语只是为了描述特定的实施例并且并非旨在作为本发明的限制。如在此使用的,单数形式“一”、“一个”和“该”旨在同样包括复数形式,除非上下文明确地另有所指。还将理解,当在此说明书中使用时,术语“包括”和/或“包含”指定了声明的特性、整数、步骤、操作、元素和/或组件的存在,但是并不排除一个或多个其它特性、整数、步骤、操作、元素、组件和/或其组的存在或增加。
下面权利要求中的对应结构、材料、操作以及所有功能性限定的装置或步骤的等同替换,旨在包括任何用于与在权利要求中具体指出的其它元件相组合地执行该功能的结构、材料或操作。出于示例和说明目的给出了对本发明的描述,但所述描述并非旨在是穷举的或是将本发明限于所公开的形式。在不偏离本发明的范围和精神的情况下,对于所属技术领域的普通技术人员来说许多修改和变化都将是显而易见的。实施例的选择和描述是为了最佳地解释本发明的原理和实际应用,并且当适合于所构想的特定使用时,使得所属技术领域的其它普通技术人员能够理解本发明的具有各种修改的各种实施例。
此外,所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是—但不限于—电、磁、光、电磁、红外线、或半导体的系统、 装置或器件,或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括例如在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括—但不限于—电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括—但不限于—无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的各个方面的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序 指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其它设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。
也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令提供实现流程图和/或框图中的一个或多个方框中规定的功能/动作的过程。
附图中的流程图和框图显示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

Claims (10)

1.一种在包括多个进程的、运行在多个紧密耦合的计算机系统上迁移数据的方法,所述多个紧密耦合的计算机系统对包含多个物理存储卷的文件系统能够同时访问,所述方法包括:
标识文件系统中要从源物理存储位置迁移的磁道;
标识所述文件系统中要接收迁移的磁道的目标物理存储位置;
创建磁道位图,所述磁道位图包括从该源物理存储位置迁移到该目标物理存储位置的迁移的磁道;
创建运行时位图,以判定在执行到源物理存储位置的I/O之前,是否需要与迁移器通信;
迁移发生时,创建用于确定哪些磁道需要在第二迁移传递期间重新迁移的的重新迁移位图;
迁移发生时,将所述源物理存储位置的该迁移数据迁移到所述目标物理存储位置,并将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置,所述迁移包括:
不允许对所述源物理存储位置进行新分配;
执行第一迁移传递,其中迁移的磁道根据磁道位图从该源物理存储位置复制到该目标物理存储位置,并且其中该第一迁移传递发生时,接收对源物理存储位置的运行时写入请求,通过参考运行时位图确定运行时写入请求影响的磁道,使用存储在该源物理存储位置的磁道服务于运行时的输入和输出,并在该重新迁移位图中记录受运行时写请求影响的磁道;以及
执行第二迁移传递,其中在重新迁移位图中识别的受运行时写请求影响的磁道,根据磁道位图的映射被从该源物理存储位置复制到该目标物理存储位置。
2.根据权利要求1的方法,还包括从所述文件系统移除所述源物理存储位置。
3.根据权利要求1的方法,其中所述文件系统是同时联机外围操作SPOOL文件系统。
4.根据权利要求1的方法,其中在不对所述多个进程进行任何更改的情况下执行所述迁移。
5.根据权利要求1的方法,其中所述多个进程在多个计算机系统上执行。
6.一种在包括多个进程的、运行在多个紧密耦合的计算机系统上迁移数据的系统,所述多个紧密耦合的计算机系统对包含多个物理存储卷的文件系统能够同时访问,所述系统包括:
用于标识文件系统中要从源物理存储位置迁移的磁道的部件;
用于标识所述文件系统中要接收迁移的磁道的目标物理存储位置的部件;
用于创建磁道位图的部件,所述磁道位图包括从该源物理存储位置迁移到该目标物理存储位置的迁移的磁道;
用于创建运行时位图,以判定在执行到源物理存储位置的I/O之前,是否需要与迁移器通信的部件;
用于迁移发生时,创建用于确定哪些磁道需要在第二迁移传递期间重新迁移的的重新迁移位图的部件;
用于迁移发生时,将所述源物理存储位置的该迁移数据迁移到所述目标物理存储位置的部件,并将定向到所述源物理存储位置的读取和写入请求重定向到所述目标物理存储位置的部件,该部件包括:
用于不允许对所述源物理存储位置进行新分配的部件;
用于执行第一迁移传递的部件,其中迁移的磁道根据磁道位图从该源物理存储位置复制到该目标物理存储位置,并且其中该第一迁移传递发生时,接收对源物理存储位置的运行时写入请求,通过参考运行时位图确定运行时写入请求影响的磁道,使用存储在该源物理存储位置的磁道服务于运行时的输入和输出,并在该重新迁移位图中记录受运行时写请求影响的磁道;以及
用于执行第二迁移传递的部件,其中在重新迁移位图中识别的受运行时写请求影响的磁道,根据磁道位图的映射被从该源物理存储位置复制到该目标物理存储位置。
7.根据权利要求6的系统,其中所述系统还包括用于从所述文件系统移除所述源物理存储位置的部件。
8.根据权利要求6的系统,其中所述文件系统是同时联机外围操作SPOOL文件系统。
9.根据权利要求8的系统,其中在不对所述多个进程进行任何更改的情况下执行所述用于迁移的部件。
10.根据权利要求6的系统,其中所述多个进程在多个不同计算机系统上执行。
CN201280025510.3A 2011-05-26 2012-05-24 透明文件系统迁移到新物理位置的方法和系统 Expired - Fee Related CN103562879B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/116,847 2011-05-26
US13/116,847 US9003149B2 (en) 2011-05-26 2011-05-26 Transparent file system migration to a new physical location
PCT/IB2012/052598 WO2012160533A1 (en) 2011-05-26 2012-05-24 Transparent file system migration to a new physical location

Publications (2)

Publication Number Publication Date
CN103562879A CN103562879A (zh) 2014-02-05
CN103562879B true CN103562879B (zh) 2016-09-07

Family

ID=47216682

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280025510.3A Expired - Fee Related CN103562879B (zh) 2011-05-26 2012-05-24 透明文件系统迁移到新物理位置的方法和系统

Country Status (5)

Country Link
US (1) US9003149B2 (zh)
CN (1) CN103562879B (zh)
DE (1) DE112012002241T5 (zh)
GB (1) GB2506045B (zh)
WO (1) WO2012160533A1 (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011142762A1 (en) * 2010-05-13 2011-11-17 Hewlett-Packard Development Company, L.P. File system migration
US9122689B1 (en) 2013-03-15 2015-09-01 Emc Corporation Recovering performance of a file system post-migration
US9026502B2 (en) * 2013-06-25 2015-05-05 Sap Se Feedback optimized checks for database migration
US9710187B1 (en) * 2013-06-27 2017-07-18 EMC IP Holding Company LLC Managing data relocation in storage systems
US10235053B1 (en) * 2014-03-31 2019-03-19 Emc Corporation Method and system for using host driver for flexible allocation fast-sideways data movements
US9569322B2 (en) 2014-03-31 2017-02-14 Oracle International Corporation Memory migration in presence of live memory traffic
US9959203B2 (en) * 2014-06-23 2018-05-01 Google Llc Managing storage devices
US11099763B1 (en) * 2014-06-30 2021-08-24 Pure Storage, Inc. Migrating generational storage to a decentralized agreement protocol paradigm
US9836419B2 (en) * 2014-09-15 2017-12-05 Microsoft Technology Licensing, Llc Efficient data movement within file system volumes
US20160154649A1 (en) * 2014-12-01 2016-06-02 Mediatek Inc. Switching methods for context migration and systems thereof
US10255336B2 (en) 2015-05-07 2019-04-09 Datometry, Inc. Method and system for transparent interoperability between applications and data management systems
US10594779B2 (en) 2015-08-27 2020-03-17 Datometry, Inc. Method and system for workload management for data management systems
US10409787B1 (en) * 2015-12-22 2019-09-10 EMC IP Holding Company LLC Database migration
CN105635276B (zh) * 2015-12-28 2019-05-21 国云科技股份有限公司 云平台分布式物理卷对象迁移到非分布式存储的方法
US9936019B2 (en) * 2016-03-16 2018-04-03 Google Llc Efficient live-migration of remotely accessed data
JP2018010507A (ja) * 2016-07-14 2018-01-18 富士通株式会社 メモリ管理プログラム、メモリ管理方法及びメモリ管理装置
US11726979B2 (en) 2016-09-13 2023-08-15 Oracle International Corporation Determining a chronological order of transactions executed in relation to an object stored in a storage system
US10860534B2 (en) 2016-10-27 2020-12-08 Oracle International Corporation Executing a conditional command on an object stored in a storage system
US10275177B2 (en) * 2016-10-31 2019-04-30 Oracle International Corporation Data layout schemas for seamless data migration
CN106572163B (zh) * 2016-11-02 2019-08-27 Oppo广东移动通信有限公司 一种数据迁移的方法及终端
US10353640B2 (en) * 2016-12-06 2019-07-16 Dell Products L.P. Seamless data migration in a clustered environment
US10540111B2 (en) 2017-06-28 2020-01-21 International Business Machines Corporation Managing data container instances in a dispersed storage network
CN110413213B (zh) * 2018-04-28 2023-06-27 伊姆西Ip控股有限责任公司 存储卷在存储阵列之间的无缝迁移
US11294869B1 (en) * 2018-12-19 2022-04-05 Datometry, Inc. Expressing complexity of migration to a database candidate
US11204898B1 (en) 2018-12-19 2021-12-21 Datometry, Inc. Reconstructing database sessions from a query log
US11269824B1 (en) 2018-12-20 2022-03-08 Datometry, Inc. Emulation of database updateable views for migration to a different database
US10489344B1 (en) 2018-12-28 2019-11-26 Nasuni Corporation Cloud-native global file system with direct-to-cloud migration
CN113448740B (zh) * 2021-09-01 2021-11-30 北京鲸鲮信息系统技术有限公司 操作系统的电源管理方法及装置
CN113835902B (zh) * 2021-09-22 2023-12-05 抖音视界有限公司 一种数据处理方法、装置、计算机设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101198937A (zh) * 2005-06-17 2008-06-11 麦克罗维西恩公司 安全存储管理系统和方法
US7415591B1 (en) * 2003-04-23 2008-08-19 Emc Corporation Method and apparatus for migrating data and automatically provisioning a target for the migration
CN101799742A (zh) * 2009-02-11 2010-08-11 株式会社日立制作所 用于在存储系统之间转移精简配置卷的方法和装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6466328B1 (en) * 1997-01-03 2002-10-15 Ncr Corporation System and method for remote printing in a distributed network environment
US7539828B2 (en) * 2000-08-08 2009-05-26 Faronics Corporation Method and system for automatically preserving persistent storage
JP3757847B2 (ja) 2001-10-24 2006-03-22 ブラザー工業株式会社 スプールファイル加工装置、プログラム及び記録媒体
US7546482B2 (en) * 2002-10-28 2009-06-09 Emc Corporation Method and apparatus for monitoring the storage of data in a computer system
US20060149889A1 (en) * 2003-02-05 2006-07-06 Sridhar Sikha Method and system for backup data access through standard network file sharing protocols
US20050172072A1 (en) 2004-01-30 2005-08-04 Cochran Robert A. Multiple site data replication
US8243317B2 (en) 2004-05-03 2012-08-14 Microsoft Corporation Hierarchical arrangement for spooling job data
US7058731B2 (en) * 2004-08-03 2006-06-06 Hitachi, Ltd. Failover and data migration using data replication
JP4168991B2 (ja) 2004-08-10 2008-10-22 ブラザー工業株式会社 印刷制御装置、印刷システム、プログラム及び印刷制御方法
US7171532B2 (en) 2004-08-30 2007-01-30 Hitachi, Ltd. Method and system for data lifecycle management in an external storage linkage environment
US7577693B2 (en) 2004-09-03 2009-08-18 Infoprint Solutions Company Llc Performing multiple actions on a spool file by assigning a particular action to be performed on each segment of the spool file
JP4640702B2 (ja) 2005-10-07 2011-03-02 富士ゼロックス株式会社 ネットワーク・プリント・システムおよびネットワーク・プリント制御方法
US7685382B2 (en) 2006-12-20 2010-03-23 International Business Machines Corporation Dynamic media format conversion of physical volumes
US20090138530A1 (en) 2007-11-26 2009-05-28 Inventec Corporation Data management method for logical volume manager
US7953945B2 (en) 2008-03-27 2011-05-31 International Business Machines Corporation System and method for providing a backup/restore interface for third party HSM clients
US8261254B2 (en) * 2008-03-31 2012-09-04 Symantec Corporation Dynamic insertion and removal of virtual software sub-layers
JP2010097533A (ja) 2008-10-20 2010-04-30 Hitachi Ltd パーティションで区切られた計算機システムにおけるアプリケーション移動及び消費電力の最適化
US8601213B2 (en) 2008-11-03 2013-12-03 Teradata Us, Inc. System, method, and computer-readable medium for spool cache management
JP2010123055A (ja) 2008-11-21 2010-06-03 Fujitsu Ltd データ移行プログラム,データ移行方法及びデータ移行装置
US20100174878A1 (en) * 2009-01-06 2010-07-08 Crawford Communications Systems and Methods for Monitoring Archive Storage Condition and Preventing the Loss of Archived Data
US8510280B2 (en) 2009-06-30 2013-08-13 Teradata Us, Inc. System, method, and computer-readable medium for dynamic detection and management of data skew in parallel join operations
JP5124551B2 (ja) 2009-09-30 2013-01-23 株式会社日立製作所 ボリューム割り当てを管理する計算機システム及びボリューム割り当て管理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7415591B1 (en) * 2003-04-23 2008-08-19 Emc Corporation Method and apparatus for migrating data and automatically provisioning a target for the migration
CN101198937A (zh) * 2005-06-17 2008-06-11 麦克罗维西恩公司 安全存储管理系统和方法
CN101799742A (zh) * 2009-02-11 2010-08-11 株式会社日立制作所 用于在存储系统之间转移精简配置卷的方法和装置

Also Published As

Publication number Publication date
US9003149B2 (en) 2015-04-07
US20120303913A1 (en) 2012-11-29
GB2506045B (en) 2016-09-28
DE112012002241T5 (de) 2014-04-10
GB2506045A (en) 2014-03-19
CN103562879A (zh) 2014-02-05
GB201322043D0 (en) 2014-01-29
WO2012160533A1 (en) 2012-11-29

Similar Documents

Publication Publication Date Title
CN103562879B (zh) 透明文件系统迁移到新物理位置的方法和系统
US11734035B2 (en) Virtual machine load balancing
US11748332B2 (en) Organically managing storage of a data object based on an expiry timeframe supplied by a user of the data object
US11157171B2 (en) Migrating data to disk without interrupting running operations
US10061663B2 (en) Rebuilding deduplication data in a distributed deduplication data storage system
CN106687911B (zh) 不损害数据完整性的在线数据移动
CN106055431B (zh) 基于快照在线回滚的数据备份与恢复的方法及装置
US11695831B2 (en) Geo-location-based data replication
CN106446159B (zh) 一种存储文件的方法、第一虚拟机及名称节点
JP2007279845A (ja) ストレージシステム
CN102667720A (zh) 没有排序依赖的一致性
JP2017033113A (ja) システム、情報処理装置、および情報処理方法
CN104484354B (zh) 保证数据一致性的快照方法和存储设备
WO2015132946A1 (ja) ストレージシステム及びストレージシステムの制御方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for 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: 20160907

Termination date: 20200524