CN1776649A - 存储系统中元数据道的原子更新的管理方法和系统 - Google Patents
存储系统中元数据道的原子更新的管理方法和系统 Download PDFInfo
- Publication number
- CN1776649A CN1776649A CNA2005101193233A CN200510119323A CN1776649A CN 1776649 A CN1776649 A CN 1776649A CN A2005101193233 A CNA2005101193233 A CN A2005101193233A CN 200510119323 A CN200510119323 A CN 200510119323A CN 1776649 A CN1776649 A CN 1776649A
- Authority
- CN
- China
- Prior art keywords
- metadata tracks
- journal entries
- metadata
- cache memory
- tracks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (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
本发明提供了一种方法、系统、计算机程序产品和配置计算基础结构的方法,用于管理在存储子系统中的元数据。在将日志条目存储在非易失存储器(NVS)中之后,将第一元数据道从盘存储器送入高速缓存存储器。日志条目包括元数据道的更新数据和操作码。该操作码标识将被执行的更新的类型和将在操作中被更新的道的数目。送入其他元数据道的每一个并且存储对应的日志条目。然后将所日志记录的更新应用于在高速缓存存储器中的各个元数据道,并且将道从高速缓存存储器送回盘存储器。
Description
技术领字段
本发明涉及一种企业存储系统,具体地,涉及有效和安全地管理全局元数据。
背景技术
企业计算系统通常包括:一个或多个主机系统,用于处理客户数据和运行的应用程序;直接存取存储设备(DASD),用于存储数据;和一个或多个存储控制器,用于指挥在主机和DASD之间数据的存储和检索。除用户数据之外,存储控制器通常还保持元数据,其在存储控制器中提供关于在DASD或高速缓存存储器中的数据道或数据块的信息。在对由元数据表示的用户数据进行某些操作期间,存储控制器处理元数据以提高所请求的操作执行的速度和效率。在DASD初始化期间,将元数据从盘送入(stage)高速缓存存储器(易失类型存储器)。电源故障或某些其他类型的错误可以导致高速缓存内容的丢失。
可以用拷贝服务函数来配置某种存储控制器,如IBMTM Enterprise StorageServerTM(ESS),拷贝服务函数包括(但不限于)有助于数据备份和灾难恢复的闪速拷贝、对等远程拷贝、扩展远程拷贝、和并发拷贝。在拷贝服务(CS)操作期间,产生多字段(multi-field)CS元数据并且由存储控制器来保持该多字段CS元数据。CS元数据包括关于在任何时间点上的拷贝服务操作状态的信息,如内部设置、源和目标地址、以及关于被拷贝的数据的状态的其他数据。因此,如果控制器掉电或遇到某种其他中断事件,则可能要重新启动控制器,读出元数据,将CS操作恢复到中断点,然后重新继续和完成操作。
在IBM ESS的早期版本中,在26KB的存储器内(in-memory)结构中保持CS元数据,该存储器内结构由客户直接更新。在更新期间,即使只更新了少数几个字段,也将整个结构写入盘,并且不保留关于改变了元数据的哪些字段的记录。在随后的版本中,将CS控制数据的26KB结构映射到七个8KB元数据道(metadata track)。在更新期间,只将包括所更新字段的元数据道写入盘。
已经实施日志(journaling)来允许在非易失存储器(NVS)中存储更新,提高更新性能和在掉电或其他重大事件的情况下保持元数据。每个元数据道在NVS中具有对应的页面,其包括包含一系列日志条目的一连串的块,这些日志条目标识被执行的操作和在高速缓存中被修改的数据。在恢复操作期间,可以将元数据从盘送入高速缓存,并且使用在日志条目中之前所记录的修改,从而恢复元数据以得到最新版本的数据。因为一些CS函数在多个元数据道存储控制数据,所以应该以带有保护的适当顺序对所有道(“原子地”)执行对道的更新,如果在完成更新所有道之前发生错误,所述保护可以防止元数据毁坏。
因此,还需要对多个全局元数据道进行原子更新的更有效的管理。
发明内容
本发明提供了用于管理在存储子系统中的元数据的方法。在将其日志条目存储于非易失存储器(NVS)之后,将第一元数据道从盘存储器送入高速缓存存储器。日志条目包括道的更新数据和操作码。操作码标识将要执行的更新类型和将在操作中更新的道数目。送入其他元数据道的每一个并且存储对应的日志条目。然后将被日志记录的更新应用于在高速缓存存储器中的各个元数据道,以及从高速缓存送回(destage)盘存储器的道。
在一个实施例中,如果正在执行原子更新的同时遇到了中断,则确定是否已经为所有元数据道生成了日志条目。如果是,则将每个被日志记录的更新应用于在高速缓存中的各个道以完成更新处理。如果生成比所有日志条目少的日志条目,则丢弃已经生成的日志条目。操作码还可以包括对将被更新的道来说是相同的生成号(generation number)。在送入第一元数据道之前,确定并且随后递增在道中最大的生成号,其变成新的生成号。如果有中断事件,则确定是否已经为所有元数据道生成了日志条目,该确定包括搜索具有新的(递增的)生成号的所有日志条目。
在另一个实施例中,在为除最后的道之外的每个元数据道的NVS生成日志条目后,将日志条目应用于高速运行(in-flight)的存储区域。在为最后的元数据道的NVS生成日志条目后,将为最后的元数据道所日志记录的更新应用于在高速缓存存储器中的、随后被从高速缓存送回盘存储器的各个元数据道。然后,以与存储日志条目的顺序相反的顺序:将元数据送入高速缓存,将第二日志条目存储在NVS中,高速运行区域中存储的更新数据被应用于高速缓存存储器中的元数据道,并且将元数据道从高速缓存存储器送回盘存储器。第二日志条目包括生成号和操作码。最好,高速运行区域为盘存储器的部分,该部分包括客户数据和元数据。
本发明还提供系统、计算机程序产品和方法,用于为管理存储子系统中的全局元数据而配置计算基础结构。
附图说明
图1示出了本发明元数据管理系统的方框图;
图2示出了本发明元数据更新的示意图;
图3A-3E示出了本发明元数据更新的实施例的顺序表示示意图;
图4A-4M示出了本发明的另一个实施例的一系列元数据更新的顺序表示示意图;
具体实施方式
图1是实施本发明的元数据管理的存储控制器100的方框图。通过网络10,控制器100附连到至少一个客户端系统12,如主机设备。控制器100还附连到至少一个存储设备14,如直接存取存储设备(DASD)。
控制器100包括处理器102、普通存储器104(用于存储计算机可读代码,该计算机可读代码具有可由处理器102执行的指令)、高速缓存存储器106和非易失存储器(NVS)108。NVS 108包括日志区域110;控制器100还包括存储管理软件120,实际上可以在存储器104中存储该软件。存储管理软件120可包括拷贝服务(CS)代码122和元数据管理代码124。拷贝服务代码122可以包括(但不限于):对等远程拷贝(PPRC)函数124、扩展的远程拷贝(XRC)函数126、并发拷贝(CC)函数和/或闪速拷贝或时间点拷贝函数130。这些服务帮助备份数据、拷贝数据和灾难恢复。
存储管理软件120还包括任务控制块112、被配置成一个或多个逻辑卷136的一个或多个逻辑子系统(LSS)134、和存储设备驱动器142。在一些存储控制器中,高速缓存106和NVS 108可以是存储器104内的微代码构造,存储器104是由设备驱动器142配置的并作为其一部分。
还可以将存储设备14配置为具有客户数据16和元数据18两者的道。如前所述,元数据可以是全局的,并与对应的客户数据(如图1所示)分开存储;或者是分段的,与对应的客户数据一同存储。
图2示出了本发明的元数据更新的示意图。将第一元数据道18从盘存储器14送入(步骤200)到存储控制器100的高速缓存106。在NVS日志区域110中存储(步骤202)日志条目210。日志条目210包括操作码212和更新数据214。操作码212标识将要执行的更新的类型和将在操作中被更新的道的数目。日志条目210和操作码212可以还包括其他信息。将更新处理(步骤210)施加(步骤204)于在高速缓存106中的元数据,在此之后将所更新的元数据送回(步骤206)到盘存储14。
图3A-3E示出了本发明元数据更新实施例的顺序表示示意图。将生成号分派给元数据道,并且生成号用于标识参加具体的多道更新操作的所有道。最好,在道和日志条目中存储生成号。在多道更新操作的开始,扫描元数据道以标识最大的生成号,该生成号是从道提取而来的并且将其递增以用作更新操作的生成号(应该理解,替代地,还可以在更新操作结束时递增该生成号)。此外,使用操作码标识多道操作的类型(如拷贝服务、高速缓存和固定块)、在每个操作中所涉及的道的数目、和说明如何将更新映射到元数据道的指示。在日志条目中将操作码与生成号一起存储。因此,可以使用日志条目中的生成号和操作码来标识参加多道操作的所有道。
在操作中,为处理参加更新操作的N个元数据道而确定顺序。随后,在存储有元数据道的NVS中的页面上获得相同顺序的锁定。现在参照图3A,在获得锁定之后,在NVS日志区域110中存储日志条目300。日志条目300包括操作码312、更新数据314和生成号316。以确定的顺序,为余下N个元数据道的每一个存储日志条目(图3B)。在于NVS 110中已经存储了所有日志条目之后,通过将第一元数据道从盘存储14送入高速缓存106,将更新应用于盘存储器上的元数据道(图3C)。然后,将从第一日志条目300来的更新314应用于所高速缓存的道(图3D),并且将所更新的道送回盘存储器14(图3E)。以确定的顺序,对其他元数据道的每一个重复该过程。
有时,由于掉电或系统失效,更新操作可能被中断。如果在NVS 110中已经存储了所有的日志条目,则可以在恢复供电或系统恢复后,以“前卷进行”(“roll-forward”)操作恢复和完成该更新操作。如果当中断发生时,没有在NVS110存储所有的日志条目,则将在“转返”(“roll-back”)操作中丢弃那些由他们的共同生成号标识、已经被存储在NVS 110中的日志条目。然后从起始处,重新开始更新。
比如,假设操作码Y指示类型A的一个道和类型B的第二道将参加多道更新。道A1是类型A,而道B1为类型B。在更新期间,已经为道A1生成日志条目。道的日志条目具有操作码Y和生成号M。如果中断发生,则NVS日志110将用生成号M来扫描类型B的道的条目。如果发现这样的条目(即,如果已经完成了道B1的日志条目),则通过将日志记录的更新应用于对应的元数据道,来恢复和完成更新操作。在另一方面,如果没有发现这样的条目,将丢弃带有生成号M和操作码Y的、道A1的被日志记录的条目;而且将需要重新开始更新操作。
图4A-4M示出了本发明原数据更新的另一个实施例的顺序表示示意图。最好,将生成号分派给元数据道,并且生成号用于标识参加具体多道更新操作的所有道。在道中和日志条目中存储生成号。在多道更新操作的开始,扫描元数据道以标识从道中提取的最大的生成号,而且将该最大的生成号递增以用作更新操作的生成号(虽然,替代地,还可以在更新操作结束时递增生成号)。此外,使用操作码来标识多道操作的类型和参加每个操作的道的数目。与生成号一起,将操作码存储在日志条目中。因此,可以使用日志条目中的操作码和生成号来标识参加多道操作的所有道。
在操作中,为参加更新操作的N个元数据道的处理确定顺序。随后,在存储有元数据道的NVS中的页面上获得相同顺序的锁定。现在参照图4A,在获得锁定之后,将第一元数据道从盘存储器送入高速缓存106。然后,在NVS日志区域110中存储日志条目400(图4B)。日志条目400包括操作码412、更新数据414,和生成号316(如果使用的话)。日志条目400还可以包括参加更新操作的下个伙伴道的标识符。因此,可以将日志条目与每个链接并指向下一个。在存储第一元数据道的日志条目400后,释放日志锁定并且将日志条目400(包括生成号416和更新数据414)应用于在存储设备14的物理道中的暂时保持区域(图4C)。该暂时保持区域称为道的“高速运行区域”40,并且被配置得足够大以保持所述更新。如果在道的高速运行区域40中的生成号大于在道自身中的生成号,则指示有效的更新数据。在将日志条目400应用于高速运行区域400后,将道从高速缓存106送回该道(图4D)。对第二到第N-1个元数据道重复该过程(图4E)。
当达到第N元数据道时,首先将其送入高速缓存106(图4F),再将日志条目410存储在NVS日志区域110中并且释放日志锁定(图4G)。然后,将从日志条目410来的更新应用到该高速缓存的元数据道而不在高速运行区域中进行存储(图4H),并且将其送回盘存储器(图4I)。
然后,在被送入高速缓存的第N-1道上获得日志锁定,并且对NVS日志生成日志条目(图4J)。该日志条目包括操作码412和生成号416,但不包括更新数据414。将日志锁定释放并且将在高速运行区域中的更新数据应用于所高速缓存的元数据道(图4K)。还将在高速运行区域中的生成号应用于道,并且将高速运行区域中的内容标记为“无效”。然后将道从高速缓存送回盘存储器(图4L)。在已经更新了第N-1个道后,例程以与所确定的顺序相反的顺序进行,直到已经更新第一元数据道为止(图4M)。
如前面说明的实施例,由于掉电或系统失效,更新操作可能被中断,并且可能需要转返或前卷进行操作作为恢复操作的一部分。直到将道N的更新输入到日志110,任何对更新操作的中断都将需要转返操作,而在已经输入了道N的更新之后的任何中断都将使用前卷进行操作。
比如,假设操作码Y指示类型A的第一道、类型B的第二道和类型C的第三道将会参加多道更新。道A1为类型A,道B1为类型B,道C1为类型C。在更新期间,已经为道A1生成了日志条目并且该日志条目具有效的高速运行条目。该高速运行条目将道B1标识为伙伴道。在道B1被送入后,如果需要,则检查道B1。如果没有道B1的高速运行数据,则将道B1的生成号与道A1的高速运行生成号进行比较。如果有道B1的高速运行数据,则检查随后的道并且重复该过程直到发现不具备高速运行数据的道,如道C1。当发现这样的道时,将该道(如C1)的生成号与前面道(如B1和A1)的高速运行生成号进行比较。如果生成号相同,则前卷高速运行区域以将高速运行数据应用于具有有效的高速运行区域的道。另一方面,如果生成号不相等,则将高速运行区域标识为‘无效’,丢弃未完成的更新并且执行转返操作。
重要的是注意虽然结合完全功效数据处理系统的情况来说明了本发明,本领域的一般技术人员应该理解,可以用指令的计算机可读介质形式和各种形式来发布本发明的处理过程,并且无论实际用于进行发布的信号承载媒介的具体类型如何,都可以应用本发明。计算机可读介质的例子包括可记录型介质如软盘、硬盘、RAM和CD-ROM,以及传输类型介质如数字和模拟通信链路。
只针对于图解和说明的目的对本发明进行了描述,其并不是穷举本发明或以所公开形式对本发明进行限制。对于本领域的技术人员各种改进和变化都很明显。为了最好地解释本发明的原理和实际应用而选择和说明了实施例,并且使得本领域的其他一般技术人员能够理解带有各种改变的各种实施例的本发明,这些改变适应于所认真考虑的具体使用。而且,虽然就方法和系统在上面进行了说明,仍然可以用计算机程序产品(其包括指令,用于管理全局元数据),或配置计算基础结构的方法(其包括将计算机可读代码集成到用于管理全局元数据的计算系统中)来满足本领域技术的需要。
Claims (40)
1、一种方法,用于在存储子系统中对元数据道执行原子更新,该方法包括:
把将被更新的多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道在非易失存储器,即NVS,中存储第一日志条目,该第一日志条目包括针对元数据道的更新数据和操作码,该操作码标识元数据更新的类型和将被更新的元数据道的数目;
为将要更新的其他元数据道的每一个重复该送入和日志记录步骤;
将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道的每一个从高速缓存存储器送回盘存储器。
2、根据权利要求1所述的方法,其中,如果正在执行原子更新的同时遇到了中断:
确定是否已经为所有将被更新的元数据道生成了日志条目;
如果已经为所有将被更新的元数据道生成了日志条目,则将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果生成了比所有将被更新的元数据道少的日志条目,则丢弃日志条目。
3、根据权利要求2所述的方法,其中:
操作码还包括生成号;
在送入第一元数据道之前:
确定在多个将被更新的元数据道的每一个中最大的生成号;以及
在元数据道的每一个中递增生成号;以及
确定是否已经为所有将被更新的元数据道生成了第一日志条目包括搜索具有递增的生成号的所有第一日志条目。
4、根据权利要求1所述的方法,还包括:
在将除最后之外的所有元数据道的每个日志条目都存储在NVS后,将第一日志条目应用于高速运行区域;
在将最后的元数据道的第一日志条目存储在NVS中后,将为最后的元数据道所日志记录的更新应用于在高速缓存存储器中的各个元数据道;
将最后的元数据道从高速缓存送回盘存储器;和
以与在NVS中存储元数据道的日志条目的顺序相反的顺序:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,该第二日志条目包括生成号和操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的各个元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
5、根据权利要求4所述的方法,其中高速运行区域包括盘存储区域。
6、一种方法,用于在存储子系统中对元数据道执行原子更新,该方法包括:确定对将被更新的多个N-1元数据道进行的处理的顺序;以确定的顺序对第一到第N-1个元数据道:
将多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道将第一日志条目存储在非易失存储器中,即NVS中,
第一日志条目包括用于元数据道的更新数据和操作码,操作码标识元数据更新的类型和将被更新的元数据道的数目;
将第一日志条目应用于高速运行区域;以及
将元数据道从高速缓存存储器送回盘存储器;对第N个元数据道:
将第N个元数据道从盘存储器送入高速缓存存储器;
为第N个元数据道在NVS中存储第一日志条目,该第一日志条目包括用于第一元数据道的更新数据和操作码;
将所日志记录的第N个元数据道的更新应用于在高速缓存存储器中的各个元数据道;以及
将第N个元数据道从高速缓存存储器送回盘存储器;以及以与确定的顺序相反的顺序,对第一到第N-1元数据道:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,第二日志条目包括操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
7、根据权利要求6所述的方法,如果在执行原子更新时遇到中断:确定是否已经为将要被更新的所有元数据道生成日志条目;
如果已经为将要被更新的所有元数据道生成日志条目,将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
8、根据权利要求6所述的方法,其中高速运行区域包括盘存储区域。
9、一种方法,用于对在存储子系统中的元数据道执行原子更新,该方法包括:
确定对将被更新的多个元数据道进行处理的顺序;
确定在每个元数据道中最大的生成号;
在每个元数据道中递增生成号;
以确定的顺序在非易失存储器,即NVS,中为每个元数据道存储日志条目,第一日志条目包括用于元数据道的更新数据、操作码和生成号,该操作码标识元数据更新的类型和将被更新的元数据道的数目;并且
以确定的顺序,对每个元数据道:
将元数据道的第一个从盘存储器送入高速缓存存储器;
将所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道从高速缓存存储器送回盘存储器。
10、根据权利要求9所述的方法,如果在执行原子更新时遇到中断:
确定是否已经为将要被更新的所有元数据道生成日志条目;
如果已经为将要被更新的所有元数据道生成日志条目,将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
11、一种系统,用于在存储子系统中对元数据道执行原子更新,该系统包括:
高速缓存存储器;
非易失存储器,即NVS;
一装置,用于把将被更新的多个元数据道的第一个从盘存储器送入高速缓存存储器;
一装置,用于为元数据道在NVS存储第一日志条目,该第一日志条目包括元数据道的更新数据和操作码,该操作码标识元数据更新的类型和将被更新的元数据道的数目;
一装置,用于送入将要更新的其他元数据道的每一个;
一装置,用于日志记录将要更新的其他元数据道的每一个;
一装置,用于将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
一装置,用于将元数据道的每一个从高速缓存存储器送回盘存储器。
12、根据权利要求11所述的系统,还包括:
一装置,用于在执行原子更新时遇到了中断后,确定是否已经为所有将被更新的元数据道生成了日志条目;
一装置,用于如果已经为所有将被更新的元数据道生成了日志条目,则将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
一装置,用于如果生成了比所有将被更新的元数据道少的日志条目,则丢弃日志条目。
13、根据权利要求12所述的系统,其中操作码还包括生成号,该系统还包括:
一装置,用于在送入第一元数据道之前,确定在多个将被更新的元数据道的每一个中最大的生成号;
一装置,用于在元数据道的每一个中递增生成号;和
一装置,用于确定是否已经为所有将被更新的元数据道生成了第一日志条目,其中该确定包括搜索具有递增的生成号的所有第一日志条目。
14、根据权利要求11所述的系统,还包括:
一装置,用于在将除最后之外的所有元数据道的每个日志条目都存储在NVS后,将第一日志条目应用于高速运行区域;
一装置,用于在将最后的元数据道的第一日志条目存储在NVS中后,将为最后的元数据道所日志记录的更新应用于在高速缓存存储器中的各个元数据道;
一装置,用于将最后的元数据道从高速缓存存储器送回盘存储器;和
以与在NVS中存储元数据道的日志条目的顺序相反的顺序:
一装置,用于将元数据道送入高速缓存存储器;
一装置,用于为元数据道将第二日志条目存储在NVS中,该第二日志条目包括生成号和操作码;
一装置,用于将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的各个元数据道;和
一装置,用于将元数据道从高速缓存存储器送回盘存储器。
15、根据权利要求14所述的系统,其中高速运行区域包括盘存储区域。
16、一种系统,用于在存储子系统中对元数据道执行原子更新,该系统包括:
高速缓存存储器;
非易失存储器,即NVS;
一装置,用于确定对将被更新的多个N-1元数据道进行处理的顺序;
一装置,用于通过下列操作以确定的顺序对第一到第N-1元数据道进行处理:
将多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道将第一日志条目存储在NVS中,第一日志条目包括用于元数据道的更新数据和操作码,操作码标识元数据更新的类型和将被更新的元数据道的数目;
将第一日志条目应用于高速运行区域;以及
将元数据道从高速缓存存储器送回盘存储器;
一装置,用于通过下列操作处理第N个元数据道:
将第N个元数据道从盘存储器送入高速缓存存储器;
为第N个元数据道在NVS中存储第一日志条目,该第一日志条目包括用于第一元数据道的更新数据和操作码;
将所日志记录的第N个元数据道的更新应用于在高速缓存存储器中的各个元数据道;以及
将第N个元数据道从高速缓存存储器送回盘存储器;和一装置,用于通过下列操作以与确定的顺序相反的顺序,对第一到第N-1元数据道进行处理:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,第二日志条目包括操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
17、根据权利要求16所述的系统,还包括
一装置,用于在执行原于更新时遇到中断后,确定是否已经为将要被更新的所有元数据道生成日志条目;
一装置,用于如果已经为将要被更新的所有元数据道生成日志条目,将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
一装置,用于如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
18、根据权利要求16所述的系统,其中高速运行区域包括盘存储区域。
19、一种系统,用于对在存储子系统中的元数据道执行原子更新,该系统包括:
高速缓存存储器;
非易失存储器,即NVS;
一装置,用于确定对将被更新的多个元数据道进行的处理的顺序;
一装置,用于确定在每个元数据道中最大的生成号;
一装置,用于在每个元数据道中递增生成号;
一装置,用于以确定的顺序在NVS中为每个元数据道存储日志条目,第一日志条目包括用于元数据道的更新数据、操作码和生成号,该操作码标识元数据更新的类型和将被更新的元数据道的数目;和
一装置,用于已经在NVS中存储了所有元数据道的日志条目后,通过下列操作以确定的顺序完成元数据道的原子更新:
将一元数据道从盘存储器送入高速缓存存储器;
将所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道从高速缓存存储器送回盘存储器。
20、根据权利要求19所述的系统,还包括:
一装置,用于在执行原子更新时遇到中断后,确定是否已经为将要被更新的所有元数据道生成日志条目;
一装置,用于如果已经为将要被更新的所有元数据道生成日志条目,将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
一装置,用于如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
21、一种可编程计算机可以使用的计算机可读介质的计算机程序产品,该计算机程序产品具有包含于其上的计算机可读代码,该计算机可读代码用于在存储子系统中对全局元数据道执行原子更新,该计算机可读代码包括用于下列的指令:
把将被更新的多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道在非易失存储器,即NVS,中存储第一日志条目,该第一日志条目包括元数据道的更新数据和操作码,该操作码标识元数据更新的类型和将被更新的元数据道的数目;
为将要更新的其他元数据道的每一个重复该送入和日志记录步骤;
将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道的每一个从高速缓存存储器送回盘存储器。
22、根据权利要求21所述的计算机程序产品,所述指令包括用于下列的指令:
如果正在执行原子更新的同时遇到了中断:
确定是否已经为所有将被更新的元数据道生成了日志条目;
如果已经为所有将被更新的元数据道生成了日志条目,则将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果生成了比所有将被更新的元数据道少的日志条目,则丢弃日志条目。
23、根据权利要求22所述的计算机程序产品,其中操作码还包括生成号,所述指令还包括用于下列的指令:
在送入第一元数据道之前:
确定在多个将被更新的元数据道的每一个中最大的生成号;以及
在元数据道的每一个中递增生成号;以及
确定是否已经为所有将被更新的元数据道生成了第一日志条目包括搜索具有递增的生成号的所有第一日志条目。
24、根据权利要求21所述的计算机程序产品,还包括用于下列的指令:
在将除最后之外的所有元数据道的每个日志条目都存储在NVS后,将第一日志条目应用于高速运行区域;
在将最后的元数据道的第一日志条目存储在NVS中后,将为最后的元数据道所日志记录的更新应用于在高速缓存存储器中的各个元数据道;
将最后的元数据道从高速缓存存储器送回盘存储器;和
以与在NVS中存储元数据道的日志条目的顺序相反的顺序:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,该第二日志条目包括生成号和操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的各个元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
25、根据权利要求24所述的计算机程序产品,其中高速运行区域包括盘存储区域。
26、一种可编程计算机可以使用的计算机可读介质的计算机程序产品,该计算机程序产品具有包含于其上的计算机可读代码,该计算机可读代码用于在存储子系统中对元数据道执行原子更新,该计算机可读代码包括用于下列的指令:
确定对将被更新的多个N-1元数据道进行处理的顺序;
以确定的顺序对第一到第N-1个元数据道:
将多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道将第一日志条目存储在非易失存储器中,即NVS中,第一日志条目包括用于元数据道的更新数据和操作码,操作码标识元数据更新的类型和将被更新的元数据道的数目;
将第一日志条目应用于高速运行区域;以及
将元数据道从高速缓存存储器送回盘存储器;
对第N个元数据道:
将第N个元数据道从盘存储器送入高速缓存存储器;
为第N个元数据道在NVS中存储第一日志条目,该第一日志条目包括用于第一元数据道的更新数据和操作码;
将所日志记录的第N个元数据道的更新应用于在高速缓存存储器中的各个元数据道;以及
将第N个元数据道从高速缓存存储器送回盘存储器;以及以与确定的顺序相反的顺序,对第一到第N-1元数据道:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,第二日志条目包括操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
27、根据权利要求26所述的计算机程序产品,所述指令还包括用于下列的指令:
用于如果在执行原子更新时遇到中断:
确定是否已经为将要被更新的所有元数据道生成日志条目;
如果已经为将要被更新的所有元数据道生成日志条目,将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
28、根据权利要求26所述的计算机程序产品,其中高速运行区域包括盘存储区域。
29、一种可编程计算机可以使用的计算机可读介质的计算机程序产品,该计算机程序产品具有包含于其上的计算机可读代码,该计算机可读代码用于在存储子系统中对元数据道执行原子更新,该计算机可读代码包括用于下列的指令:
确定对将被更新的多个元数据道进行处理的顺序;
确定在每个元数据道中最大的生成号;
在每个元数据道中递增生成号;
以确定的顺序在非易失存储器,即NVS,中为每个元数据道存储日志条目,第一日志条目包括用于元数据道的更新数据、操作码和生成号,该操作码标识元数据更新的类型和将被更新的元数据道的数目;以及
以确定的顺序,对每个元数据道:
将元数据道的第一个从盘存储器送入高速缓存存储器;
将所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道从高速缓存存储器送回盘存储器。
30、根据权利要求29所述的计算机程序产品,还包括用于下列的指令:
如果在执行原子更新时遇到中断:
确定是否已经为将要被更新的所有元数据道生成日志条目;
如果已经为将要被更新的所有元数据道生成日志条目,将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
31、一种用于配置计算基础结构的方法,包括将计算机可读代码集成到计算系统,其中结合计算系统所述代码可以执行下列:
把将被更新的多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道在非易失存储器,即NVS,中存储第一日志条目,该第一日志条目包括元数据道的更新数据和操作码,该操作码标识元数据更新的类型和将被更新的元数据道的数目;
为将要更新的其他元数据道的每一个重复该送入和日志记录步骤;
将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道的每一个从高速缓存存储器送回盘存储器。
32、根据权利要求31所述的方法,其中,如果正在执行原子更新的同时遇到了中断,结合计算系统所述代码可以执行下列:
确定是否已经为所有将被更新的元数据道生成了日志条目;
如果已经为所有将被更新的元数据道生成了日志条目,则将每个被日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果生成了比所有将被更新的元数据道少的日志条目,则丢弃日志条目。
33、根据权利要求32所述的方法,其中操作码还包括生成号,结合计算系统所述代码还可以执行下列;
在送入第一元数据道之前:
确定在多个将被更新的元数据道的每一个中最大的生成号;以及
在元数据道的每一个中递增生成号;以及
确定是否已经为所有将被更新的元数据道生成了第一日志条目包括搜索具有递增的生成号的所有第一日志条目。
34、根据权利要求31所述的方法,结合计算系统所述代码还可以执行下列:
在将除最后之外的所有元数据道的每个日志条目都存储在NVS后,将第一日志条目应用于高速运行区域;
在将最后的元数据道的第一日志条目存储在NVS中后,将为最后的元数据道所日志记录的更新应用于在高速缓存存储器中的各个元数据道;
将最后的元数据道从高速缓存存储器送回盘存储器;和
以与在NVS中存储元数据道的日志条目的顺序相反的顺序:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,该第二日志条目包括生成号和操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的各个元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
35、根据权利要求34所述的方法,其中高速运行区域包括盘存储区域。
36、一种用于配置计算基础结构的方法,包括将计算机可读代码集成到计算系统,其中结合计算系统所述代码可以执行下列:
确定对将被更新的多个N-1元数据道进行处理的顺序;
以确定的顺序对第一到第N-1元数据道:
将多个元数据道的第一个从盘存储器送入高速缓存存储器;
为元数据道将第一日志条目存储在非易失存储器中,即NVS中,
第一日志条目包括用于元数据道的更新数据和操作码,操作码标识元数据更新的类型和将被更新的元数据道的数目;
将第一日志条目应用于高速运行区域;以及
将元数据道从高速缓存存储器送回盘存储器;对第N元数据道:
将第N个元数据道从盘存储器送入高速缓存存储器;
为第N个元数据道在NVS中存储第一日志条目,该第一日志条目包括用于第一元数据道的更新数据和操作码;
将所日志记录的第N个元数据道的更新应用于在高速缓存存储器中的各个元数据道;以及
将第N个元数据道从高速缓存存储器送回盘存储器;以及以与确定的顺序相反的顺序,对第一到第N-1元数据道:
将元数据道送入高速缓存存储器;
为元数据道将第二日志条目存储在NVS中,第二日志条目包括操作码;
将存储在高速运行区域中的更新数据应用于在高速缓存存储器中的元数据道;以及
将元数据道从高速缓存存储器送回盘存储器。
37、根据权利要求36所述的方法,其中如果在执行原子更新时遇到中断,结合计算系统所述代码还可以执行下列:
确定是否已经为将要被更新的所有元数据道生成日志条目;
如果已经为将要被更新的所有元数据道生成日志条目,将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
38、根据权利要求36所述的方法,其中高速运行区域包括盘存储区域。
39、一种用于配置计算基础结构的方法,包括将计算机可读代码集成到计算系统,其中结合计算系统所述代码可以执行下列:
确定对将被更新的多个元数据道进行处理的顺序;
确定在每个元数据道中最大的生成号;
在每个元数据道中递增生成号;
以确定的顺序在非易失存储器,即NVS,中为每个元数据道存储日志条目,第一日志条目包括用于元数据道的更新数据、操作码和生成号,该操作码标识元数据更新的类型和将被更新的元数据道的数目;以及
以确定的顺序,对每个元数据道:
将元数据道的第一个从盘存储器送入高速缓存存储器;
将所日志记录的更新应用于在高速缓存存储器中的各个元数据道;和
将元数据道从高速缓存存储器送回盘存储器。
40、根据权利要求39所述的方法,如果在执行原子更新时遇到中断,结合计算系统所述代码还可以执行下列:
确定是否已经为将要被更新的所有元数据道生成日志条目;
如果已经为将要被更新的所有元数据道生成日志条目,将每个所日志记录的更新应用于在高速缓存存储器中的各个元数据道;以及
如果已经生成比将要被更新的所有元数据道少的日志条目,则丢弃日志条目。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/993,087 US7885921B2 (en) | 2004-11-18 | 2004-11-18 | Managing atomic updates on metadata tracks in a storage system |
US10/993,087 | 2004-11-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1776649A true CN1776649A (zh) | 2006-05-24 |
CN100412823C CN100412823C (zh) | 2008-08-20 |
Family
ID=36387723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101193233A Expired - Fee Related CN100412823C (zh) | 2004-11-18 | 2005-11-03 | 存储系统中元数据道的原子更新的管理方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7885921B2 (zh) |
CN (1) | CN100412823C (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101430705B (zh) * | 2008-11-29 | 2011-01-19 | 中兴通讯股份有限公司 | 基于嵌入式数据库的存储方法和装置 |
CN102576332A (zh) * | 2009-10-01 | 2012-07-11 | 美光科技公司 | 电力中断管理 |
CN101689123B (zh) * | 2007-06-27 | 2013-06-12 | 微软公司 | 利用事务存储器硬件来加速虚拟化和仿真 |
CN103542855A (zh) * | 2012-07-12 | 2014-01-29 | 北京四维图新科技股份有限公司 | 修改警告点信息的方法、装置与导航设备 |
CN104169981A (zh) * | 2012-03-09 | 2014-11-26 | 日本电气英富醍株式会社 | Pos设备 |
CN106897230A (zh) * | 2015-11-27 | 2017-06-27 | Arm 有限公司 | 用于处理原子更新操作的装置和方法 |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070067427A1 (en) * | 2005-08-26 | 2007-03-22 | Harris Corporation | System, methods, and program product to trace content genealogy |
WO2007027488A2 (en) | 2005-08-29 | 2007-03-08 | Harris Corporation | System, methods, and program product to trace content genealogy |
US7809778B2 (en) * | 2006-03-08 | 2010-10-05 | Omneon Video Networks | Idempotent journal mechanism for file system |
US8055613B1 (en) * | 2008-04-29 | 2011-11-08 | Netapp, Inc. | Method and apparatus for efficiently detecting and logging file system changes |
US8438332B2 (en) * | 2009-06-22 | 2013-05-07 | International Business Machines Corporation | Apparatus and method to maintain write operation atomicity where a data transfer operation crosses a data storage medium track boundary |
CN102053923B (zh) * | 2009-11-05 | 2013-06-12 | 北京金山软件有限公司 | 一种日志数据的存储方法及存储装置 |
US8639876B2 (en) * | 2010-01-27 | 2014-01-28 | International Business Machines Corporation | Extent allocation in thinly provisioned storage environment |
US20110191522A1 (en) * | 2010-02-02 | 2011-08-04 | Condict Michael N | Managing Metadata and Page Replacement in a Persistent Cache in Flash Memory |
US8699185B1 (en) | 2012-12-10 | 2014-04-15 | Western Digital Technologies, Inc. | Disk drive defining guard bands to support zone sequentiality when butterfly writing shingled data tracks |
US8856438B1 (en) | 2011-12-09 | 2014-10-07 | Western Digital Technologies, Inc. | Disk drive with reduced-size translation table |
US9330715B1 (en) | 2010-03-22 | 2016-05-03 | Western Digital Technologies, Inc. | Mapping of shingled magnetic recording media |
US8693133B1 (en) | 2010-03-22 | 2014-04-08 | Western Digital Technologies, Inc. | Systems and methods for improving sequential data rate performance using sorted data zones for butterfly format |
US8687306B1 (en) | 2010-03-22 | 2014-04-01 | Western Digital Technologies, Inc. | Systems and methods for improving sequential data rate performance using sorted data zones |
US9275678B2 (en) * | 2010-03-25 | 2016-03-01 | International Business Machines Corporation | Primary storage media with associated secondary storage media for efficient data management |
US9063666B2 (en) | 2010-03-25 | 2015-06-23 | International Business Machines Corporation | File index, metadata storage, and file system management for magnetic tape |
US9430155B2 (en) | 2010-03-25 | 2016-08-30 | International Business Machines Corporation | File index, metadata storage, and file system management for magnetic tape |
US8392653B2 (en) | 2010-08-18 | 2013-03-05 | International Business Machines Corporation | Methods and systems for releasing and re-allocating storage segments in a storage volume |
US8380961B2 (en) | 2010-08-18 | 2013-02-19 | International Business Machines Corporation | Methods and systems for formatting storage volumes |
US8850114B2 (en) | 2010-09-07 | 2014-09-30 | Daniel L Rosenband | Storage array controller for flash-based storage devices |
US8954664B1 (en) | 2010-10-01 | 2015-02-10 | Western Digital Technologies, Inc. | Writing metadata files on a disk |
US8756361B1 (en) | 2010-10-01 | 2014-06-17 | Western Digital Technologies, Inc. | Disk drive modifying metadata cached in a circular buffer when a write operation is aborted |
US8966184B2 (en) | 2011-01-31 | 2015-02-24 | Intelligent Intellectual Property Holdings 2, LLC. | Apparatus, system, and method for managing eviction of data |
US8799578B2 (en) | 2011-05-23 | 2014-08-05 | International Business Machines Corporation | Managing unmodified tracks maintained in both a first cache and a second cache |
US8996789B2 (en) | 2011-05-23 | 2015-03-31 | International Business Machines Corporation | Handling high priority requests in a sequential access storage device having a non-volatile storage cache |
US8806122B2 (en) | 2011-05-23 | 2014-08-12 | International Business Machines Corporation | Caching data in a storage system having multiple caches including non-volatile storage cache in a sequential access storage device |
US8793436B2 (en) | 2011-05-23 | 2014-07-29 | International Business Machines Corporation | Cache management of tracks in a first cache and a second cache for a storage |
US8432632B2 (en) | 2011-05-23 | 2013-04-30 | International Business Machines Corporation | Magnetic disk drive using a non-volatile storage device as cache for modified tracks |
US8788742B2 (en) | 2011-05-23 | 2014-07-22 | International Business Machines Corporation | Using an attribute of a write request to determine where to cache data in a storage system having multiple caches including non-volatile storage cache in a sequential access storage device |
US8825944B2 (en) | 2011-05-23 | 2014-09-02 | International Business Machines Corporation | Populating strides of tracks to demote from a first cache to a second cache |
US8825952B2 (en) | 2011-05-23 | 2014-09-02 | International Business Machines Corporation | Handling high priority requests in a sequential access storage device having a non-volatile storage cache |
US8756382B1 (en) | 2011-06-30 | 2014-06-17 | Western Digital Technologies, Inc. | Method for file based shingled data storage utilizing multiple media types |
US9069468B2 (en) | 2011-09-11 | 2015-06-30 | Microsoft Technology Licensing, Llc | Pooled partition layout and representation |
CN103138964A (zh) * | 2011-11-25 | 2013-06-05 | 上海晨兴希姆通电子科技有限公司 | 日志信息记录装置及其记录方法 |
US9213493B1 (en) | 2011-12-16 | 2015-12-15 | Western Digital Technologies, Inc. | Sorted serpentine mapping for storage drives |
US8612706B1 (en) | 2011-12-21 | 2013-12-17 | Western Digital Technologies, Inc. | Metadata recovery in a disk drive |
US9251052B2 (en) | 2012-01-12 | 2016-02-02 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer |
WO2013105960A1 (en) * | 2012-01-12 | 2013-07-18 | Fusion-Io, Inc. | Systems and methods for managing cache admission |
US9767032B2 (en) | 2012-01-12 | 2017-09-19 | Sandisk Technologies Llc | Systems and methods for cache endurance |
US10102117B2 (en) | 2012-01-12 | 2018-10-16 | Sandisk Technologies Llc | Systems and methods for cache and storage device coordination |
US8825953B2 (en) | 2012-01-17 | 2014-09-02 | International Business Machines Corporation | Demoting tracks from a first cache to a second cache by using a stride number ordering of strides in the second cache to consolidate strides in the second cache |
US9021201B2 (en) | 2012-01-17 | 2015-04-28 | International Business Machines Corporation | Demoting partial tracks from a first cache to a second cache |
US8966178B2 (en) | 2012-01-17 | 2015-02-24 | International Business Machines Corporation | Populating a first stride of tracks from a first cache to write to a second stride in a second cache |
US8825957B2 (en) | 2012-01-17 | 2014-09-02 | International Business Machines Corporation | Demoting tracks from a first cache to a second cache by using an occupancy of valid tracks in strides in the second cache to consolidate strides in the second cache |
US9401180B2 (en) | 2012-10-12 | 2016-07-26 | International Business Machines Corporation | High resolution tape directory (HRTD) stored at end of data in an index partition |
US9471499B2 (en) * | 2013-05-20 | 2016-10-18 | Globalfoundries Inc. | Metadata management |
US9542331B2 (en) | 2014-09-22 | 2017-01-10 | International Business Machines Corporation | Concurrent update of data in cache with destage to disk |
JP5954751B2 (ja) * | 2014-09-29 | 2016-07-20 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | テープ上のデータをロールバックする方法及びファイルシステム |
WO2016120884A1 (en) * | 2015-01-30 | 2016-08-04 | Hewlett-Packard Development Company, L.P. | Failure atomic update of a single application data file |
CN106033322B (zh) * | 2015-03-17 | 2019-11-01 | 北京元心科技有限公司 | 一种数据存储方法及装置 |
US10031763B1 (en) * | 2015-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Network switch recovery after reboot |
CN106557264B (zh) | 2015-09-25 | 2019-11-08 | 伊姆西公司 | 针对固态硬盘的存储方法及设备 |
US10387321B2 (en) * | 2017-08-01 | 2019-08-20 | International Business Machines Corporation | Securing exclusive access to a copy of a metadata track via a process while the metadata track is held in a shared mode by another process |
US11604590B2 (en) | 2018-09-06 | 2023-03-14 | International Business Machines Corporation | Metadata track entry sorting in a data storage system |
US10740203B2 (en) | 2018-09-06 | 2020-08-11 | International Business Machines Corporation | Aggregation of updated tracks to be copied to a backup volume for physically contiguous storage on a RAID stride |
US11175999B2 (en) | 2018-09-06 | 2021-11-16 | International Business Machines Corporation | Management of backup volume extents via a tiered storage mechanism |
US11221955B2 (en) | 2018-09-06 | 2022-01-11 | International Business Machines Corporation | Metadata track selection switching in a data storage system |
US10789132B2 (en) | 2018-09-06 | 2020-09-29 | International Business Machines Corporation | Performing a recovery copy command to create a recovery volume for a consistency group |
US10783047B2 (en) | 2018-09-06 | 2020-09-22 | International Business Machines Corporation | Forming a consistency group comprised of volumes maintained by one or more storage controllers |
US11182081B2 (en) | 2018-09-06 | 2021-11-23 | International Business Machines Corporation | Performing a recovery copy command to restore a safeguarded copy backup to a production volume |
US10754730B2 (en) | 2018-09-06 | 2020-08-25 | International Business Machines Corporation | Copying point-in-time data in a storage to a point-in-time copy data location in advance of destaging data to the storage |
US11182094B2 (en) | 2018-09-06 | 2021-11-23 | International Business Machines Corporation | Performing a recovery copy command using a recovery copy data structure for a backup volume lookup |
US11573937B2 (en) | 2020-10-09 | 2023-02-07 | Bank Of America Corporation | System and method for automatically resolving metadata structure discrepancies |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8613068D0 (en) * | 1986-05-29 | 1986-07-02 | Univ Manchester | Delay management |
US5410667A (en) * | 1992-04-17 | 1995-04-25 | Storage Technology Corporation | Data record copy system for a disk drive array data storage subsystem |
US5873097A (en) * | 1993-05-12 | 1999-02-16 | Apple Computer, Inc. | Update mechanism for computer storage container manager |
US5590318A (en) * | 1993-11-18 | 1996-12-31 | Microsoft Corporation | Method and system for tracking files pending processing |
US5875456A (en) * | 1995-08-17 | 1999-02-23 | Nstor Corporation | Storage device array and methods for striping and unstriping data and for adding and removing disks online to/from a raid storage array |
US5778168A (en) * | 1995-09-11 | 1998-07-07 | Sun Microsystems, Inc. | Transaction device driver technique for a journaling file system to ensure atomicity of write operations to a computer mass storage device |
US5721903A (en) * | 1995-10-12 | 1998-02-24 | Ncr Corporation | System and method for generating reports from a computer database |
US5710900A (en) * | 1995-10-12 | 1998-01-20 | Ncr Corporation | System and method for generating reports from a computer database |
US5692181A (en) * | 1995-10-12 | 1997-11-25 | Ncr Corporation | System and method for generating reports from a computer database |
US5870753A (en) * | 1996-03-20 | 1999-02-09 | International Business Machines Corporation | Method and apparatus for enabling a persistent metastate for objects in an object oriented environment |
US5897661A (en) * | 1997-02-25 | 1999-04-27 | International Business Machines Corporation | Logical volume manager and method having enhanced update capability with dynamic allocation of storage and minimal storage of metadata information |
JPH10320205A (ja) * | 1997-05-20 | 1998-12-04 | Fujitsu Ltd | 情報処理装置 |
JPH1153235A (ja) * | 1997-08-08 | 1999-02-26 | Toshiba Corp | ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム |
US6697846B1 (en) * | 1998-03-20 | 2004-02-24 | Dataplow, Inc. | Shared file system |
US6769124B1 (en) * | 1998-07-22 | 2004-07-27 | Cisco Technology, Inc. | Persistent storage of information objects |
US6292869B1 (en) * | 1998-08-31 | 2001-09-18 | International Business Machines Corporation | System and method for memory scrub during self timed refresh |
US6298425B1 (en) * | 1999-01-12 | 2001-10-02 | Compaq Computer Corp. | Computer disk management system using doublet A-B logging |
US6725392B1 (en) * | 1999-03-03 | 2004-04-20 | Adaptec, Inc. | Controller fault recovery system for a distributed file system |
US6438661B1 (en) * | 1999-03-03 | 2002-08-20 | International Business Machines Corporation | Method, system, and program for managing meta data in a storage system and rebuilding lost meta data in cache |
US6502174B1 (en) * | 1999-03-03 | 2002-12-31 | International Business Machines Corporation | Method and system for managing meta data |
US6339793B1 (en) * | 1999-04-06 | 2002-01-15 | International Business Machines Corporation | Read/write data sharing of DASD data, including byte file system data, in a cluster of multiple data processing systems |
WO2001006688A1 (en) | 1999-07-14 | 2001-01-25 | Matsushita Electric Industrial Co., Ltd. | Apparatus for providing information, information receiver and storage medium |
US6425050B1 (en) * | 1999-09-17 | 2002-07-23 | International Business Machines Corporation | Method, system, and program for performing read operations during a destage operation |
US6714930B1 (en) * | 2000-05-31 | 2004-03-30 | International Business Machines Corporation | Lightweight directory access protocol, (LDAP) trusted processing of unique identifiers |
US6751705B1 (en) * | 2000-08-25 | 2004-06-15 | Silicon Graphics, Inc. | Cache line converter |
US20020112125A1 (en) * | 2000-12-18 | 2002-08-15 | Copeland George P. | Command caching to improve network server performance |
US7054927B2 (en) * | 2001-01-29 | 2006-05-30 | Adaptec, Inc. | File system metadata describing server directory information |
JP3837736B2 (ja) * | 2001-07-02 | 2006-10-25 | ウシオ電機株式会社 | レジスト硬化装置のワークステージ |
FI20011871A (fi) | 2001-09-24 | 2003-03-25 | Nokia Corp | Multimediadatan prosessointi |
TW533354B (en) * | 2001-11-07 | 2003-05-21 | Via Tech Inc | Control chip having multi-layer defer queue and the operating method thereof |
US7509248B2 (en) * | 2001-11-14 | 2009-03-24 | Intel Corporation | Generic persistence engine |
US6832290B2 (en) | 2002-03-12 | 2004-12-14 | International Business Machines Corporation | Method, system, program, and data structures for maintaining metadata in a storage system |
US20040126750A1 (en) * | 2002-11-15 | 2004-07-01 | Wolfgang Theilmann | Versioning electronic learning objects |
CA2524794C (en) * | 2003-05-06 | 2010-03-30 | Aptare, Inc. | System to capture, transmit and persist backup and recovery meta data |
-
2004
- 2004-11-18 US US10/993,087 patent/US7885921B2/en not_active Expired - Fee Related
-
2005
- 2005-11-03 CN CNB2005101193233A patent/CN100412823C/zh not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101689123B (zh) * | 2007-06-27 | 2013-06-12 | 微软公司 | 利用事务存储器硬件来加速虚拟化和仿真 |
CN101430705B (zh) * | 2008-11-29 | 2011-01-19 | 中兴通讯股份有限公司 | 基于嵌入式数据库的存储方法和装置 |
US9874918B2 (en) | 2009-10-01 | 2018-01-23 | Micron Technology, Inc. | Power interrupt management |
CN102576332A (zh) * | 2009-10-01 | 2012-07-11 | 美光科技公司 | 电力中断管理 |
US8990476B2 (en) | 2009-10-01 | 2015-03-24 | Micron Technology, Inc. | Power interrupt management |
CN102576332B (zh) * | 2009-10-01 | 2015-04-29 | 美光科技公司 | 用于电力中断管理的方法和包含电力中断管理的存储器系统 |
US10564690B2 (en) | 2009-10-01 | 2020-02-18 | Micron Technology, Inc. | Power interrupt management |
CN104169981A (zh) * | 2012-03-09 | 2014-11-26 | 日本电气英富醍株式会社 | Pos设备 |
US9129275B2 (en) | 2012-03-09 | 2015-09-08 | Nec Platforms, Ltd. | POS device |
CN104169981B (zh) * | 2012-03-09 | 2016-08-24 | Nec平台株式会社 | Pos设备 |
CN103542855A (zh) * | 2012-07-12 | 2014-01-29 | 北京四维图新科技股份有限公司 | 修改警告点信息的方法、装置与导航设备 |
CN106897230A (zh) * | 2015-11-27 | 2017-06-27 | Arm 有限公司 | 用于处理原子更新操作的装置和方法 |
CN106897230B (zh) * | 2015-11-27 | 2021-12-14 | Arm 有限公司 | 用于处理原子更新操作的装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
US7885921B2 (en) | 2011-02-08 |
CN100412823C (zh) | 2008-08-20 |
US20060106891A1 (en) | 2006-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100412823C (zh) | 存储系统中元数据道的原子更新的管理方法和系统 | |
US7266669B2 (en) | File system with file management function and file management method | |
US6651075B1 (en) | Support for multiple temporal snapshots of same volume | |
US7246211B1 (en) | System and method for using file system snapshots for online data backup | |
Fang et al. | High performance database logging using storage class memory | |
JP6408568B2 (ja) | 複数のアクセスメソッドのためのラッチフリーのログ構造化ストレージ | |
JP2557172B2 (ja) | タイムゼロ・バックアップ・コピー・プロセスにおける副ファイル状態のポーリングのための方法およびシステム | |
US6857057B2 (en) | Virtual storage systems and virtual storage system operational methods | |
US7155586B1 (en) | Method of allowing point-in-time view of data on a disk using a map on cache disk | |
JPH0683677A (ja) | データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム | |
Graefe | A survey of B-tree logging and recovery techniques | |
KR100317691B1 (ko) | 로그 구조화 목표 저장장치를 사전에 구성하여 볼륨을 효율적으로 복사하는 방법 및 장치 | |
CN104040481A (zh) | 用于融合、存储和检索增量式备份数据的方法和系统 | |
JPH0683679A (ja) | データのバックアップ・コピー中の同時アクセスの方法及びシステム | |
JPH05210555A (ja) | ゼロ時間データ・バックアップ・コピーの方法及び装置 | |
EP2115596A2 (en) | System, method and computer program product for managing data using a write-back cache unit | |
US20040068522A1 (en) | Virtual storage systems and virtual storage system operational methods | |
Sauer et al. | Single-pass restore after a media failure | |
CN1776668A (zh) | 用于清除存储系统中元数据轨道的方法和系统 | |
US7290099B2 (en) | Using parallelism for clear status track processing during error handling behavior in a storage system | |
Do et al. | Fast peak-to-peak behavior with SSD buffer pool | |
EP4002148A1 (en) | Cloud-native object storage for page-based relational database | |
Jin et al. | SAL-hashing: a self-adaptive linear hashing index for SSDs | |
Whitaker et al. | Design of the server for the Spiralog file system | |
KR101295210B1 (ko) | 데이터베이스 관리 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080820 Termination date: 20151103 |
|
EXPY | Termination of patent right or utility model |