CN1454349A - 主存储器事务处理***中的高度并行日志和恢复操作的方法和*** - Google Patents
主存储器事务处理***中的高度并行日志和恢复操作的方法和*** Download PDFInfo
- Publication number
- CN1454349A CN1454349A CN00819629A CN00819629A CN1454349A CN 1454349 A CN1454349 A CN 1454349A CN 00819629 A CN00819629 A CN 00819629A CN 00819629 A CN00819629 A CN 00819629A CN 1454349 A CN1454349 A CN 1454349A
- Authority
- CN
- China
- Prior art keywords
- record
- database
- log record
- daily record
- log
- 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
- G06F9/00—Arrangements for program control, e.g. control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1474—Saving, restoring, recovering or retrying in transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/964—Database arrangement
- Y10S707/966—Distributed
- Y10S707/967—Peer-to-peer
- Y10S707/968—Partitioning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
- Hardware Redundancy (AREA)
- Retry When Errors Occur (AREA)
Abstract
本发明公开了一种事务处理***中从故障中恢复的有效日志方法及***。该方法及***是根据允许进行具有交换性和结合性的恢复操作的差分日志方法。该方法包括以下步骤:在对数据库进行更新之前取得主存储器中的主要数据库的前映象;在更新后取得主要数据库的后映象;通过在该前映象和后映象之间进行按位异或(XOR)运算来生成差分日志;通过在所述一个或更多日志和前映象之间进行XOR运算来执行redo或undo操作;由于XOR运算具有交换性和结合性,无论日志记录生成的次序如何都可获得正确的恢复。本发明通过减小日志记录大小并允许恢复操作的并行执行,改善了日志***的性能。
Description
技术领域
本发明涉及主存储器事务处理***。具体涉及用于事务处理***中的主存储器数据库的恢复的日志方法和***。
背景技术
事务处理***必须以这样的方式处理事务:即使在发生诸如***故障的情况下,也保持一致性和持续性。当最小单位和一致方式执行事务时保持数据的一致性,使得数据从最初的一种一致状态转换成另一种一致状态。当通过“提交”事务(成功完成的事务)改变数据时保持数据的持续性使***免于故障。数据库通常指事务所处理的数据。
为了实现数据库的一致性和持续性,多数事务处理***执行一个所谓日志的处理(根据日志文件中日志记录来记录更新的处理)。在出现故障的情况下,这些日志记录用于撤消(Undo)由未完成事务造成的变化,从而把数据库恢复到故障前的一致状态。这些日志记录也用于重做(Redo)由提交事务造成的变化,从而维持持续的数据库。
在***出现崩溃后,仅利用日志记录来恢复一致的和持续的数据库将需要大量的日志数据,这是因为从数据库创建起所生成的所有日志记录必须被保存。因此,在把数据库定期复制到磁盘时,通常使用所谓“检查(checkpoingting)”的处理,从而仅需要存储最后检查处理以来所生成的日志记录。实际中,数据库中的每页具有一个表示由事务作的任何修改的“修改标志(dirty flag)”,从而仅把最后检查处理以来修改的页复制到磁盘。
图1示出了主存储器数据库管理***(DBMS)的常规恢复结构,其中维护两个备份(101和102)和一个日志(103)。一个单独的检查处理仅更新备份中的一个,连续的检查处理在两个备份之间交替。为了协调这种交替,每个存储器内的数据库页具有两个修改标志(dirty flag)。当检查处理修改一页时,设定两个标志表示由事务进行了修改。当检查处理用该页更新(flush)第一备份时,复位第一标志以表示针对第一备份不再需要进行检查处理。类似地,当连续检查处理用该页更新第二备份时,复位第二标志。
图2示出了一个利用主存储器DBMS中的数据库备份和日志的常规重启处理。该重启处理包括以下四个步骤:第一,把最新备份读入主存储器(用BR表示“backup read(备份读取)”)(201);第二,把数据库恢复为备份时的状态(用BR表示“backup play(备份再现)”)(202);第三,把日志记录读入主存储器(用LR表示“log read(日志读取)”)(203);第四,使用这些日志记录把数据库恢复为最新一致状态(用LP表示“log play(日志再现)”)(204)。
图3a和3b是常规的两遍日志再现处理(two-pass log-play process)的流程图。为了把数据库恢复为最新一致状态,由提交事务生成的所有日志记录需要被再现,但由所谓的“loser transactions(失败事务)”生成的日志记录(当***崩溃时是激活的)必须被跳过(当存在一个匹配事务开始日志记录但没有事务结束记录时,事务被称为一个失败事务(loser))。为此,从检查开始日志记录到日志结束对日志进行扫描所遇到的日志记录被再现(307)。然后,由失败事务作的日志记录造成的改变被回滚(roll back)(308)。
为了识别失败事务,维护一个失败事务表(LTT),该表有两个域,TID和Last LSN。用记录在检查开始日志记录中的激活事务初始化该表(301)。当遇到一个事务开始记录时(302),在LTT中生成一个匹配登录项(305)。当遇到一个事务结束(提交或异常中断)记录时(303),从LTT中删除该匹配登录项(306)。否则(304),当前日志记录的LSN被记录在匹配LTT登录项的Last LSN域中(307)。当达到该日志结尾时,仍在LTT中的具有匹配登录项的事务被看作失败事务。利用匹配LTT登录项的Last LSN域可以定位失败事务的最新记录,通过向后(backward)追踪访问日志记录的Last LSN域定位该事务的其他记录。
当使用现有技术的物理日志方法时,在LP处理期间,必须以日志记录生成顺序再现日志记录。即,必须先使用较早生成的日志来重做一些更新。由于撤消和重做的操作没有交换性和结合性,常规日志方法实行依次排序。这种依次排序要求对***设计造成很多限制。
例如,把整个数据库保存在主存储器的主存储器DBMS中,对日志的磁盘访问成为***性能上的瓶颈。为了减少这样的瓶颈,可以构想采用多个日志磁盘来分配处理。但是,使用多个日志磁盘对常规日志方法是不容易实现的,这是因为在LP步骤中存在一个以生成顺序合并日志记录的***开销。
因此,需要一种有效的日志***,该***适合于分布处理中的大量并行操作。
发明内容
本发明的一个目的是提供一种有效的日志方法,在出现故障后可以使用该方法来恢复事务处理***。
本发明的另一个目的是提供一种可以进行并行操作的日志方法。
利用差分日志方法可以实现本发明中的上述目的和其他目的,该方法允许进行具有交换性和结合性的恢复操作。该方法包括以下步骤:在数据库更新前取得主存储器中的数据库的前映象;在更新后取得数据库的后映象;通过在前映象和后映象之间进行按位异或(XOR)运算来生成日志;以及在所述一个或更多日志和数据库之间进行XOR运算来执行撤消或重做操作。
附图说明
图1是整个数据库都保存到主存储器中的主存储器数据库管理***的常规恢复结构的***图;
图2是发生***崩溃时常规的恢复结构中使用的重启处理的流程图;
图3a和3b是在***重启期间,常规的恢复结构中使用的两遍日志再现处理的流程图;
图4是本发明中用于捕捉数据库中的变化的更新日志记录的结构图;
图5是在重启过程期间,对本发明的更新日志记录进行的重做和撤消运算的演示图;
图6a至6e是本发明中差分记录方法和现有技术中物理记录方法的比较图;
图7a和7b是本发明中用来从一致检查方法制作的备份来恢复数据库的一遍记录再现处理的流程图;
图8a和8b是本发明中用来在不阻止其他事务的状态下进行备份的模糊检查处理的流程图;
图9是本发明中与模糊检查一起使用的更新处理流程图;
图10a和10b是本发明中用来从模糊检查方法制作的备份中恢复数据库的修改的两遍记录再现处理流程图;
图11a和11b是本发明中用来从模糊检查方法制作的备份中恢复数据库的修改的一遍记录再现处理流程图;
图12是本发明的日志结构的实施例图,其中使用多个日志磁盘以分布日志记录并使能进行并行日志;
图13是本发明的重启结构的实施例图,其中使用多个日志磁盘和备份磁盘以使能进行并行重启;
图14是本发明中用来利用多个日志磁盘及备份磁盘来尽可能迅速地恢复数据库的完全并行重启处理的流程图;
图15是本发明的完全并行重启处理中使用的备份载入器(BL)模块的实施例图;
图16是在磁盘传送日志记录比单个CPU处理速度快时,本发明的完全并行重启处理中使用的日志载入器(LL)模块的实施例图;
图17是在磁盘传送日志记录比单个CPU处理速度快时,本发明的完全并行重启处理中使用的日志载入器(LL)模块的另一个实施例图;
具体实施方式
图4示出了本发明中使用的更新日志记录和数据库页的结构。假设一种存储结构:数据库由多个固定大小(side)的页组成,每页具有许多槽(slot)。不同的存储结构可以有修改,但此修改应该对本领域的技术人员而言是显而易见的。本发明的优选实施例使用至少五类日志记录:事务开始,事务结束,更新,检查开始和检查结束。前两类用于记录事务的开始和结束,而后两类用于记录检查处理的开始和结束。
用于存储数据库中的改变的更新日志记录包括一个日志首部和一个日志主体。图4示出了根据优选实施例的日志首部中的不同的域。通过优先在磁盘上存储日志记录的物理地址,“LSN(日志顺序号)”域存储当前日志记录的识别符。“TID(事务ID)”域存储与当前日志记录有关的事务的识别符。“PrevLSN”域存储由同一个事务最新生成的日志记录的识别符,使得方便地利用该信息链接事务的日志记录以快速向后检索。“类型”域存储日志记录的类型。“备份ID”域存储日志记录和变化的页之间的关系。仅当使用模糊检查方法(在下面的图8a和8b中进行说明)时需要维持该域。“页ID”域存储发生更新的页的识别符。“偏移量”域存储页中发生更新的槽的识别符,“大小”域存储更新槽的大小。
日志记录的主体存储差分日志信息。特别地,其存储数据库更新前的数据映象(“前映象”)和数据库更新后的数据映象(“后映象”)之间的按位XOR运算结果。仅存储差分的差分日志方法不同于把前映象和后映象都存储的常规物理日志方法。例如,如果前映象是“0011”、后映象是“0101”,则本发明仅存储差分,即,XOR结果“0110”。
图5示出了在重启处理期间,对本发明的更新日志记录进行的重做和撤消操作。首先,参考日志首部以查找数据库中与当前日志记录有关的位置。在优选实施例中,从日志首部中找到的“页ID”和“槽ID”信息中确定该位置。通过在该位置中找到的数据和当前日志记录的日志主体之间进行XOR运算,以及把该XOR结果写入该位置的方式执行重做和撤消操作。与常规物理日志方法不同,在本发明的重做操作和撤消操作之间没有差异。
图6a至6e示出了本发明的差分日志方法和现有技术的物理日志方法之间的比较。由于常规物理日志方法中的操作不具有交换性和结合性,则必须例如,以日志记录生成的顺序执行重做操作。
考虑一种情况:在处理了3个事务(如图6a中的T1,T2和T3)之后发生***崩溃。假设这些事务以0,7,6和14的顺序改变了数据库的一个槽中的4位整数。图6b和6c分别示出了使用常规日志方法和差分日志方法时,随着槽映象改变所生成的一系列日志记录。常规日志记录的主体域中包含前映象和后映象,而差分日志记录的主体域中仅包含前映象和后映象间的差异。
当***崩溃时,如果以与原始顺序相同的顺序进行重做操作,则两种日志方法都将产生正确的恢复。图6d示出了通过以日志记录生成顺序进行重做操作,两种日志方法恢复的正确值14。注意到,常规日志方法的重做操作把后映象复制到数据库的相应槽中。
但是,如果以与原始顺序不同的顺序进行重做操作,在常规日志方法中将不可能产生正确的恢复。与此相反,不管以何顺序应用日志记录,本发明的差分日志方法都能获得正确的重建。图6e示出了进行重做操作的不同顺序的结果。通过差分日志方法,不管以何顺序进行重做操作都产生一个正确的恢复结果。在数据库主要被存储在主存储器的主存储器DBMS和数据库主要被存储在磁盘的磁盘驻留DBMS都可以应用该差分日志方法。
图7a和7b是本发明中用来从利用一致检查方法制作的备份来恢复数据库的一遍记录再现处理的流程图。存在两类一致检查方法:事务一致和动作一致。“事务一致”表示在检查期间没有正在进行的更新事务。也就是说,仅在完成了所有正在进行的更新事务之后,才可以开始事务一致检查处理,并在完成检查处理之前不能开始更新事务。“动作一致”表示在检查处理期间没有正在进行的更新动作。当利用一致检查方法时,图3a和3b中的两遍日志再现处理可以直接使用本发明的差分日志方法。
本发明的一个优点是可以通过只扫描日志一次来完成日志再现处理。在本发明的一遍日志再现处理中,以与日志记录生成次序相反的方向(即,从日志结尾起)扫描日志记录。当向后扫描日志时,在遇到该事务的任何其它日志记录前先遇到事务结束日志记录。当遇到一个异常中断事务时,不需要再现该事务的记录。也就是说,一旦识别到提交事务,仅再现该提交事务的记录,跳过该异常中断事务的记录。
由于针对失败事务不做任何处理,以与异常中断事务相同的方式处理之。如上所述,在常规方法中,针对所有的事务,必须以日志记录生成的次序执行重做操作。可以跳过失败事务的重做操作,但由于无法预先确定事务是否是失败事务,所以即使针对那些可能是失败事务的事务,也进行重做操作。因此,针对那些失败事务,在识别之后需要进行撤消操作。
图8a和8b是本发明中用来在不阻止其他事务的状态下进行备份的模糊检查处理的流程图。“模糊检查”表示可以并行进行更新事务和检查处理。通常模糊检查优于一致检查,这是因为其允许在检查期间进行其他的事务。
当与本发明的差分日志方法一起使用模糊检查时,必须解决两个同步问题以正确恢复数据库。首先,尽管只要更新事务和检查处理应用到不同页就可以并行进行两个处理,但在事务更新同一页时的检查期间,数据库页不被备份。否则,复制前映象和后映象的混合使得很难正确地从故障恢复。为了解决第一个问题,本发明提供了一种同步机制,使得在一种锁定状态下(如最小单元)进行备份页处理和更新页处理(808和811)。
其次,需要一种机制来确定备份页是否反映日志记录创建后或日志记录创建前的数据库。如果在日志记录创建后进行该备份,则不必再现该日志记录,这是因为日志记录已经反映了该变化。由于本发明利用XOR运算进行重做和撤消操作,所以需要一种机制来确定是否再现一个日志记录。为了解决第二个问题,本发明在每页中保持一个存储最新备份识别符的域(809),并把它复制到日志记录中。
图9是本发明中与图8a和8b的模糊检查处理一起使用的更新处理流程图。为了解决上述两个同步问题,在锁定状态下更新一页(901和907),并把存储在页中的备份ID复制到更新日志记录中(903)。为了更新页,该页的锁首先需要进入锁定状态(901)。然后,更新前创建一个更新日志记录(902),并把页首部中的备份ID复制到日志记录中(903)。然后,更新该页(904),并设定页首部中的所有修改标志(905)。如上所述,存在两个修改标志:两个备份的每一个具有一个修改标志。最后,把日志记录添加到日志缓冲器(906),并打开锁(907)。
图10a和10b是本发明中用来从利用模糊检查处理制作的备份中恢复数据库的修改的两遍记录再现处理流程图。与图3a和3b的两遍记录再现处理不同的是:采取一个特定动作以更新位于检查开始记录和匹配的检查结束记录之间的日志记录。针对这种日志记录,把记录中的备份ID和日志记录涉及的页中存储的备份ID进行比较。如果两个ID相同(1002),则表示在备份页之后创建了日志记录。由于该页没有反映出日志记录的变化,所以需要再现日志记录。但,如果两个ID不同,则表示在备份页之前创建了日志记录。由于该页已经具有对应于日志记录的变化,所以不必再现该日志记录。在遇到检查结束记录之后,进行与图3a和3b所示相同的步骤(1001)。
图11a和11b是本发明中用来从由模糊检查处理制作的备份中恢复数据库的修改的一遍记录再现处理流程图。与图7的一遍记录再现处理不同的是:采取一个特定动作以更新位于检查结束记录和匹配的检查开始记录之间的日志记录。针对这种日志记录,把记录中的备份ID和日志记录涉及的页中存储的备份ID进行比较。如果两个ID相同并提交了相应的事务,则再现该记录以重做记录的变化。如果两个ID不同并且异常中断了相应的事务,则再现该记录以撤消记录的变化。否则跳过该记录。
图12是本发明的日志结构的实施例图,其中使用多个日志磁盘以分布日志记录并使能进行并行日志。与物理日志方法不同,差分日志方法允许把日志记录随意地分布到多个磁盘以提高日志性能,这是因为差分日志方法中使用的XOR的交换性和结合性使得能以一种任意顺序处理日志记录。在此实施例中,根据事务识别符(TID)把日志记录分布到多个日志磁盘。每个日志磁盘有不同的日志管理器(1201)。当事务开始时,具有最少负载的日志管理器的识别符(LogMgrID)被指定给事务,使得由事务创建的日志记录总被存储在日志磁盘中。
图13是本发明的重启结构的实施例图,其中使用多个日志磁盘和备份磁盘以使能进行并行重启。如图2所示,重启处理包括4个子处理:BR,BP,LR和LP。在该实施例中,利用三种并行机制来加速重启处理。首先,对每个备份磁盘(1307)的各备份载入器(BL)(1302)进行初始化(1307),并以管道(pipeline)方式执行BR处理(1302)和BP处理(1301)。每个BL独立于其他BL运行。第二,对每个日志磁盘(1387)的各磁盘载入器(LL)(1305)进行初始化(1308),并以管道方式执行LR处理(1306)和LP处理(1304)。每个LL独立于其他LL运行。第三,甚至BL和LL并发运行。
图14是本发明中用来利用多个日志磁盘及备份磁盘来尽可能迅速地恢复数据库的完全并行重启处理的流程图。首先,数据库中的所有页被填充为0(1401)。由于0是XOR操作的识别符,从而允许BP处理使用该XOR操作以恢复数据库中的页,而不是把页复制到数据库。第二,分别为每个备份磁盘和日志磁盘(1402和1403)生成一个BL模块和一个LL模块。BL模块和LL模块以并行的方式独立运行。
图15是本发明的完全并行重启处理中使用的备份载入器(BL)模块的实施例图。BL以管道方式或制造者/消耗者(producer/consumer)的方式运行BR处理(1504)和BP处理(1502)。BR处理逐页读取备份磁盘(1505)并把每页添加到用做管道的页缓冲器(1503),BP处理从缓冲器中取出一页并将其应用到数据库中的匹配页(1501)。本发明的一个新颖方面在于:当把备份页再现到数据库时,BP处理使用XOR操作。从而允许并发运行BL和LL,这在现有技术中是不可能的。
图16是在磁盘传送日志记录比单个CPU处理速度快时,本发明的完全并行重启处理中使用的日志载入器(LL)模块的实施例图。在此实施例中,同时执行多个LP处理(1601)以利用多个CPU。除了LR和LP处理以外,LL模块利用另一个处理(1604)以把日志记录分配到多个LP处理,使得事务的所有日志记录被指定到同一个LP处理。然后,每个LP处理可以保持事务表(1601)(例如在两遍日志再现处理中使用的LTT和在一遍日志再现处理中本地使用的CTT和ATT)。
图17是在磁盘传送日志记录比单个CPU处理速度快时,本发明的完全并行重启处理中使用的日志载入器(LL)模块的另一个实施例图。在图16的优选实施例中,随着并发LP处理的数量的增加,分配器处理(1604)可能会成为瓶颈。另一个问题增加了是获取和释放用于日志记录队列(1603)的锁以同时使用它们的***开销。为了解决这些问题,在当前实施例中,LP处理(1702)直接访问日志缓冲器(1703)并根据它们的事务识别符分配日志记录。一种简单的方法是使用取模操作。例如,当存在三个LP处理时,把具有除3余0的事务识别符的日志记录分配到第一处理。
在此实施例中,每个日志缓冲器页具有一个计数器。当LR处理(1704)把从日志磁盘读取的数据填充到日志缓冲器页时(1705),复位该计数器。当LP处理结束扫描缓冲器页时,在锁定状态下递增页的计数器。然后,当该计数器具有和LP处理数量相同的值时,可以刷新缓冲器。
尽管结合优选实施例对本发明进行了说明,但不限于那些实施例。本领域的普通的技术人员应该理解,在不背离本发明的精神和范围的情况下,可对所述实施例的结构和形式进行修改。
Claims (36)
1.一种在主存储器事务处理***中对更新作日志的方法,该主存储器事务处理***具有:主存储器,用于存储数据库;一个或多个日志磁盘,用于存储日志记录,该日志记录用于主存储器数据库的并行恢复;和一个或多个备份磁盘,用于存储主存储器数据库的副本,该方法包括下列步骤:
在对数据库进行更新之前取得数据库的前映象;
在更新之后取得数据库的后映象;
通过在前映象和后映象之间进行按位异或(XOR)运算,生成差分日志作为每个日志记录的日志主体;
通过在差分日志和前映象之间进行XOR运算,从故障中恢复。
2.根据权利要求1所述的方法,其特征在于,所述数据库包括多个大小固定的页。
3.根据权利要求2所述的方法,其特征在于,所述每个日志记录具有日志首部,该日志首部包括:
LSN(日志顺序号),用于存储日志顺序;
TID(事务ID),用于存储创建日志记录的事务的识别符;
前一LSN,用于存储由同一事务最近创建的日志的识别符;
类型,用于存储日志记录的类型;
备份ID,用于存储日志记录和更新页之间的关系以用于模糊检查;
页ID,用于存储更新页的识别符;
偏移量,用于存储更新区域在更新页中的开始偏移量;以及
大小,用于存储该更新区域的大小。
4.如权利要求1所述的方法,还包括下述检查步骤:
通过不时地将主存储器中的数据库作为备份数据写入所述一个或多个备份磁盘来进行检查。
5.如权利要求4所述的方法,其特征在于,所述检查步骤采用事务一致检查策略。
6.如权利要求4所述的方法,其特征在于,所述检查步骤采用动作一致检查策略。
7.如权利要求4所述的方法,其特征在于,所述检查步骤采用模糊检查策略。
8.如权利要求4所述的方法,其特征在于,所述恢复步骤包括下列步骤:
将备份数据从所述一个或多个备份磁盘载入主存储器数据库;以及
为了将主存储器数据库恢复为最近的一致状态,将日志从所述一个或多个备份磁盘载入主存储器数据库。
9.如权利要求8所述的方法,其特征在于,通过分割备份数据来并行执行所述载入备份数据步骤。
10.如权利要求8所述的方法,其特征在于,所述载入日志步骤包括下列步骤:
从所述一个或多个日志磁盘读取日志记录;以及
对日志记录进行两遍再现以将主存储器数据库恢复为最新的一致状态。
11.如权利要求10所述的方法,其特征在于,所述读取日志记录的步骤和再现日志记录的步骤是在一个管道中执行的。
12.如权利要求10所述的方法,其特征在于,通过分割日志记录来并行执行所述读取日志记录的步骤和再现日志记录的步骤。
13.如权利要求12所述的方法,其特征在于,所述读取日志记录的步骤和再现日志记录的步骤是在一个管道中执行的。
14.如权利要求8所述的方法,其特征在于,所述载入日志步骤包括下列步骤:
从所述一个或多个日志磁盘读取日志记录;以及
对日志记录进行一遍再现以将主存储器数据库恢复为最新的一致状态。
15.如权利要求14所述的方法,其特征在于,所述读取日志记录的步骤和再现日志记录的步骤是在一个管道中执行的。
16.如权利要求14所述的方法,其特征在于,通过分割日志记录来并行执行所述读取日志记录的步骤和再现日志记录的步骤。
17.如权利要求16所述的方法,其特征在于,所述读取日志记录的步骤和再现日志记录的步骤是在一个管道中执行的。
18.如权利要求8所述的方法,其特征在于,还包括预先用0填充主存储器数据库的步骤。
19.如权利要求18所述的方法,其特征在于,所述载入备份数据的步骤包括下列步骤:
从所述一个或多个备份磁盘读取备份记录;以及
通过在备份数据和主存储器数据库之间进行异或操作来再现备份数据。
20.如权利要求19所述的方法,其特征在于,所述读取备份数据的步骤和再现备份数据的步骤是在一个管道中执行的。
21.如权利要求19所述的方法,其特征在于,通过分割备份数据来并行执行所述读取备份数据的步骤和再现备份数据的步骤。
22.如权利要求21所述的方法,其特征在于,所述读取备份数据的步骤和再现备份数据的步骤是在一个管道中执行的。
23.如权利要求19所述的方法,其特征在于,所述载入备份数据的步骤和所述载入日志记录的步骤是并行执行的。
24.一种允许从故障中恢复的事务处理***,包括:
主存储器,用于存储数据库;
一个或多个日志磁盘,用于存储日志记录,该日志记录用于并行恢复主存储器数据库;
一个或多个备份磁盘,用于存储主存储器数据库的副本;
差分日志生成装置,用于通过在对数据库进行更新之前的数据库的前映象和更新之后的数据库的后映象之间进行按位异或(XOR)操作,生成差分日志作为日志主体的一部分;以及
恢复装置,用于通过在差分日志和前映象之间进行XOR操作,从故障中恢复。
25.如权利要求24所述的***,其特征在于,所述数据库包括多个大小固定的页。
26.如权利要求24所述的***,其特征在于,还包括检查装置,该装置用于通过不时地将主存储器中的数据库作为备份数据写入所述一个或多个备份磁盘来进行检查。
27.如权利要求26所述的***,其特征在于,所述检查装置采用事务一致检查策略。
28.如权利要求26所述的***,其特征在于,所述检查装置采用动作一致检查策略。
29.如权利要求26所述的***,其特征在于,所述检查装置采用模糊检查策略。
30.如权利要求26所述的***,其特征在于,所述恢复装置包括:
用于将备份数据载入主存储器数据库的装置;以及
用于将日志载入主存储器数据库的装置。
31.如权利要求30所述的***,其特征在于,用于载入备份数据的装置包括:
用于从一个或多个备份磁盘读取备份数据的装置;以及
用于通过在备份数据和主存储器数据库之间进行XOR操作再现备份数据以将主存储器数据库恢复为制作备份时的状态的装置。
32.如权利要求30所述的***,其特征在于,用于载入日志的装置包括:
用于从日志磁盘读取日志记录的装置;以及
用于对日志记录进行两遍再现以将主存储器数据库恢复为最新的一致状态的装置。
33.如权利要求30所述的***,其特征在于,用于载入日志的装置包括:
用于从日志磁盘读取日志记录的装置;以及
用于对日志记录进行一遍再现以将主存储器数据库恢复为最新的一致状态的装置。
34.一种计算机可读存储介质,其包含用于在主存储器事务处理***中对更新作日志的程序,该主存储器事务处理***具有:主存储器,用于存储数据库;一个或多个日志磁盘,用于存储日志记录,该日志记录用于主存储器数据库的并行恢复;和一个或多个备份磁盘,用于存储主存储器数据库的副本,该程序在CPU的控制下执行下列步骤:
在对数据库进行更新之前取得数据库的前映象;
在更新之后取得数据库的后映象;
通过在前映象和后映象之间进行按位异或(XOR)运算,生成差分日志作为每个日志记录的日志主体;
通过在差分日志和前映象之间进行XOR运算,从故障中恢复。
35.如权利要求34所述的存储介质,其特征在于,所述介质是CD。
36.如权利要求34所述的存储介质,其特征在于,所述介质是磁带。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2000-0031166A KR100390853B1 (ko) | 2000-06-07 | 2000-06-07 | 주 메모리 트랜잭션 처리 시스템에서 병렬적 회복 연산을 위한 디퍼런셜 로깅 방법 및 장치 |
KR2000/31166 | 2000-06-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1454349A true CN1454349A (zh) | 2003-11-05 |
CN1205550C CN1205550C (zh) | 2005-06-08 |
Family
ID=19671343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB00819629XA Expired - Fee Related CN1205550C (zh) | 2000-06-07 | 2000-12-28 | 主存储器事务处理***中的高度并行日志和恢复操作的方法和*** |
Country Status (9)
Country | Link |
---|---|
US (1) | US7065537B2 (zh) |
EP (1) | EP1320802B1 (zh) |
JP (1) | JP4813004B2 (zh) |
KR (1) | KR100390853B1 (zh) |
CN (1) | CN1205550C (zh) |
AT (1) | ATE292304T1 (zh) |
AU (1) | AU2001224081A1 (zh) |
DE (1) | DE60019173T2 (zh) |
WO (1) | WO2001095640A2 (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100369038C (zh) * | 2005-02-24 | 2008-02-13 | 中兴通讯股份有限公司 | 一种实时数据库事务操作的实现方法 |
CN100375047C (zh) * | 2004-03-17 | 2008-03-12 | 联想(北京)有限公司 | 一种计算机日志的管理方法 |
CN100378677C (zh) * | 2004-03-19 | 2008-04-02 | 株式会社日立制作所 | 利用日志同步数据库数据非同步传送的恢复方式及装置 |
WO2008148319A1 (fr) * | 2007-06-07 | 2008-12-11 | Huawei Technologies Co., Ltd. | Procédé de récupération d'image, équipement de stockage et système réseau |
CN100461163C (zh) * | 2004-02-27 | 2009-02-11 | 微软公司 | 用于恢复数据库中单元的***和方法 |
CN100464334C (zh) * | 2007-06-06 | 2009-02-25 | 中国工商银行股份有限公司 | 应用于数据仓库的数据增量备份与恢复的方法 |
CN101251814B (zh) * | 2008-02-04 | 2010-04-07 | 浙江大学 | 一种在操作***中实现可信恢复***的方法 |
CN101075203B (zh) * | 2006-05-18 | 2010-06-16 | 株式会社日立制作所 | 存储装置以及其恢复卷生成方法 |
CN101625655B (zh) * | 2009-08-20 | 2011-05-25 | 华中科技大学 | 一种内存数据库的并行恢复方法 |
CN101681317B (zh) * | 2008-03-01 | 2011-09-28 | 株式会社东芝 | 存储器*** |
CN101681312B (zh) * | 2008-02-29 | 2012-05-23 | 株式会社东芝 | 存储器*** |
CN102708143A (zh) * | 2011-03-18 | 2012-10-03 | 微软公司 | 在页级跟踪重做完成 |
CN103793297A (zh) * | 2014-01-14 | 2014-05-14 | 上海上讯信息技术股份有限公司 | 基于分发模式的日志保护方法 |
CN105045679A (zh) * | 2015-07-08 | 2015-11-11 | 安徽兆尹信息科技股份有限公司 | 一种用于金融管理网络***的数据库备份与恢复方法 |
CN105335098A (zh) * | 2015-09-25 | 2016-02-17 | 华中科技大学 | 一种基于存储级内存的日志文件***性能提高方法 |
CN105900073A (zh) * | 2013-08-29 | 2016-08-24 | 慧与发展有限责任合伙企业 | 分离存储事务日志 |
CN103745016B (zh) * | 2006-03-10 | 2018-03-06 | 甲骨文国际公司 | 利用恢复日志检测数据库事件 |
CN108228678A (zh) * | 2016-12-22 | 2018-06-29 | 华为技术有限公司 | 一种多副本数据恢复方法及装置 |
CN108228382A (zh) * | 2018-01-11 | 2018-06-29 | 成都信息工程大学 | 一种针对evenodd码单盘故障的数据恢复方法 |
CN110083656A (zh) * | 2013-03-15 | 2019-08-02 | 亚马逊科技公司 | 日志记录管理 |
CN110543386A (zh) * | 2019-09-16 | 2019-12-06 | 上海达梦数据库有限公司 | 一种数据存储方法、装置、设备和存储介质 |
US12038906B2 (en) | 2013-03-15 | 2024-07-16 | Amazon Technologies, Inc. | Database system with database engine and separate distributed storage service |
Families Citing this family (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7114049B2 (en) | 1997-01-08 | 2006-09-26 | Hitachi, Ltd. | Adaptive remote copy in a heterogeneous environment |
JP4689137B2 (ja) | 2001-08-08 | 2011-05-25 | 株式会社日立製作所 | リモートコピー制御方法、及びストレージシステム |
US7167962B2 (en) | 1999-08-19 | 2007-01-23 | Hitachi, Ltd. | Remote copy for a storage controller with reduced data size |
US7194590B2 (en) * | 2001-02-28 | 2007-03-20 | Hitachi, Ltd. | Three data center adaptive remote copy |
US7213114B2 (en) | 2001-05-10 | 2007-05-01 | Hitachi, Ltd. | Remote copy for a storage controller in a heterogeneous environment |
US7143252B2 (en) * | 2001-05-10 | 2006-11-28 | Hitachi, Ltd. | Storage apparatus system and method of data backup |
US20030041097A1 (en) * | 2001-07-11 | 2003-02-27 | Alexander Tormasov | Distributed transactional network storage system |
US7565379B2 (en) * | 2002-08-01 | 2009-07-21 | Edwina Lu | Preventing change cycling using rules and redo tags in a redo log |
JP3974538B2 (ja) | 2003-02-20 | 2007-09-12 | 株式会社日立製作所 | 情報処理システム |
CA2422176C (en) * | 2003-03-14 | 2009-07-21 | Ibm Canada Limited - Ibm Canada Limitee | Method and apparatus for interrupting updates to a database to provide read-only access |
US7380082B2 (en) * | 2003-03-25 | 2008-05-27 | Emc Corporation | Reading virtual ordered writes at local storage device |
US7181476B2 (en) | 2003-04-30 | 2007-02-20 | Oracle International Corporation | Flashback database |
US7484096B1 (en) * | 2003-05-28 | 2009-01-27 | Microsoft Corporation | Data validation using signatures and sampling |
US7457791B1 (en) | 2003-05-30 | 2008-11-25 | Microsoft Corporation | Using invariants to validate applications states |
US8365193B2 (en) * | 2003-08-14 | 2013-01-29 | Oracle International Corporation | Recoverable asynchronous message driven processing in a multi-node system |
US7281023B2 (en) * | 2003-12-15 | 2007-10-09 | At&T Knowledge Ventures, L.P. | Architecture of database application with robust online recoverability |
US7366801B2 (en) * | 2004-01-30 | 2008-04-29 | International Business Machines Corporation | Method for buffering work requests |
US8140348B2 (en) * | 2004-01-30 | 2012-03-20 | International Business Machines Corporation | Method, system, and program for facilitating flow control |
US7650606B2 (en) * | 2004-01-30 | 2010-01-19 | International Business Machines Corporation | System recovery |
US20050181789A1 (en) * | 2004-02-10 | 2005-08-18 | Yach David P. | Apparatus, and associated method, for locking and identifying a change list used pursuant to database synchronization operations in a radio communication system |
US7484051B2 (en) * | 2004-06-14 | 2009-01-27 | International Business Machines Corporation | Apparatus, system and method for reliably updating a data group in a read-before-write data replication environment using a comparison file |
US7797483B1 (en) * | 2004-06-23 | 2010-09-14 | Emc Corporation | Write interceptor for tracking changes to disk image |
US20060020594A1 (en) * | 2004-07-21 | 2006-01-26 | Microsoft Corporation | Hierarchical drift detection of data sets |
US7613875B2 (en) * | 2004-12-29 | 2009-11-03 | Intel Corporation | Apparatus and method for incremental package deployment |
US8380686B2 (en) * | 2005-03-14 | 2013-02-19 | International Business Machines Corporation | Transferring data from a primary data replication appliance in a primary data facility to a secondary data replication appliance in a secondary data facility |
US8396746B1 (en) * | 2005-03-18 | 2013-03-12 | Google Inc. | Privacy preserving personalized advertisement delivery system and method |
US8296269B2 (en) * | 2006-05-12 | 2012-10-23 | Oracle International Corporation | Apparatus and method for read consistency in a log mining system |
CN100449501C (zh) * | 2006-09-21 | 2009-01-07 | 上海交通大学 | 计算机网络数据恢复的方法 |
US7765361B2 (en) * | 2006-11-21 | 2010-07-27 | Microsoft Corporation | Enforced transaction system recoverability on media without write-through |
EP2102748B1 (en) * | 2006-12-22 | 2012-02-01 | International Business Machines Corporation | System and method for recovery of memory transactions |
KR101431296B1 (ko) * | 2007-01-11 | 2014-08-20 | 레드 밴드 리미티드 | 저장 장치에 저장된 컨텐츠의 인-플레이스 업데이트 방법 및 시스템 |
US8868504B2 (en) * | 2007-03-07 | 2014-10-21 | Oracle International Corporation | Database system with active standby and nodes |
US7925630B1 (en) * | 2007-03-30 | 2011-04-12 | Symantec Corporation | Method of inserting a validated time-image on the primary CDP subsystem in a continuous data protection and replication (CDP/R) subsystem |
US9027025B2 (en) * | 2007-04-17 | 2015-05-05 | Oracle International Corporation | Real-time database exception monitoring tool using instance eviction data |
CN101282207B (zh) * | 2008-06-05 | 2012-06-27 | 成都市华为赛门铁克科技有限公司 | 数据更新的记录方法、装置和数据备份*** |
KR101583716B1 (ko) * | 2009-01-30 | 2016-01-08 | 삼성전자주식회사 | 비트 로깅을 이용한 데이터 복구 방법 및 그 장치 |
US9128895B2 (en) * | 2009-02-19 | 2015-09-08 | Oracle International Corporation | Intelligent flood control management |
US8281185B2 (en) * | 2009-06-30 | 2012-10-02 | Oracle America, Inc. | Advice-based feedback for transactional execution |
US9165086B2 (en) | 2010-01-20 | 2015-10-20 | Oracle International Corporation | Hybrid binary XML storage model for efficient XML processing |
US11449394B2 (en) | 2010-06-04 | 2022-09-20 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources |
US8504526B2 (en) | 2010-06-04 | 2013-08-06 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations |
US8930321B2 (en) | 2010-06-30 | 2015-01-06 | Microsoft Corporation | Logical recovery with unbundled transaction services |
US8589361B2 (en) | 2010-08-30 | 2013-11-19 | Oracle International Corporation | Reduced disk space standby |
US8458530B2 (en) | 2010-09-21 | 2013-06-04 | Oracle International Corporation | Continuous system health indicator for managing computer system alerts |
IL208641A0 (en) * | 2010-10-12 | 2010-12-30 | Eci Telecom Ltd | Method for accelerating start up of a computerized system |
CN102456036A (zh) * | 2010-10-20 | 2012-05-16 | 金蝶软件(中国)有限公司 | 一种操作撤销方法及*** |
US8527546B2 (en) | 2010-11-25 | 2013-09-03 | International Business Machines Corporation | Generating a checkpoint image for use with an in-memory database |
US8688645B2 (en) * | 2010-11-30 | 2014-04-01 | Netapp, Inc. | Incremental restore of data between storage systems having dissimilar storage operating systems associated therewith |
US8868514B2 (en) | 2011-01-07 | 2014-10-21 | Microsoft Corporation | Transaction support for distributed data |
US8719232B2 (en) * | 2011-06-30 | 2014-05-06 | Verisign, Inc. | Systems and methods for data integrity checking |
US9155320B2 (en) | 2011-07-06 | 2015-10-13 | International Business Machines Corporation | Prefix-based leaf node storage for database system |
CN103092742B (zh) | 2011-10-31 | 2015-08-19 | 国际商业机器公司 | 程序日志记录优化方法和*** |
US9092499B2 (en) | 2012-01-20 | 2015-07-28 | Blackberry Limited | Synchronizing endpoint data stores having disparate schemas |
KR101984495B1 (ko) * | 2012-03-19 | 2019-05-31 | 삼성전자 주식회사 | 이동식 저장 장치 및 이를 포함하는 시스템 |
US9075758B2 (en) | 2012-03-19 | 2015-07-07 | Samsung Electronics Co., Ltd. | Removable storage device with transactional operation support and system including same |
US9003162B2 (en) | 2012-06-20 | 2015-04-07 | Microsoft Technology Licensing, Llc | Structuring storage based on latch-free B-trees |
US9619539B2 (en) * | 2012-09-28 | 2017-04-11 | Vmware, Inc. | Automated document replication in a distributed computing system |
US9129416B2 (en) * | 2012-11-14 | 2015-09-08 | Microsoft Technology Licensing, Llc | Digital art undo and redo |
US9304998B2 (en) * | 2012-12-19 | 2016-04-05 | Microsoft Technology Licensing, Llc | Main-memory database checkpointing |
US9519551B2 (en) * | 2013-03-28 | 2016-12-13 | Microsoft Technology Licensing, Llc | Recovery processing for database in persistent system |
US9483361B2 (en) | 2013-05-08 | 2016-11-01 | Commvault Systems, Inc. | Information management cell with failover management capability |
US9519591B2 (en) * | 2013-06-22 | 2016-12-13 | Microsoft Technology Licensing, Llc | Latch-free, log-structured storage for multiple access methods |
US9246935B2 (en) | 2013-10-14 | 2016-01-26 | Intuit Inc. | Method and system for dynamic and comprehensive vulnerability management |
US9313281B1 (en) | 2013-11-13 | 2016-04-12 | Intuit Inc. | Method and system for creating and dynamically deploying resource specific discovery agents for determining the state of a cloud computing environment |
US9558229B2 (en) * | 2013-11-26 | 2017-01-31 | Sap Se | Transaction private log buffering for high performance of transaction processing |
US9390239B2 (en) | 2013-12-20 | 2016-07-12 | Sap Se | Software system template protection |
US9501345B1 (en) | 2013-12-23 | 2016-11-22 | Intuit Inc. | Method and system for creating enriched log data |
US9323926B2 (en) | 2013-12-30 | 2016-04-26 | Intuit Inc. | Method and system for intrusion and extrusion detection |
US9325726B2 (en) | 2014-02-03 | 2016-04-26 | Intuit Inc. | Method and system for virtual asset assisted extrusion and intrusion detection in a cloud computing environment |
US20150304343A1 (en) | 2014-04-18 | 2015-10-22 | Intuit Inc. | Method and system for providing self-monitoring, self-reporting, and self-repairing virtual assets in a cloud computing environment |
US9866581B2 (en) | 2014-06-30 | 2018-01-09 | Intuit Inc. | Method and system for secure delivery of information to computing environments |
US10757133B2 (en) | 2014-02-21 | 2020-08-25 | Intuit Inc. | Method and system for creating and deploying virtual assets |
US9276945B2 (en) | 2014-04-07 | 2016-03-01 | Intuit Inc. | Method and system for providing security aware applications |
US9471439B2 (en) * | 2014-03-13 | 2016-10-18 | Sybase, Inc. | Systems and methods for reducing load database time |
WO2015140842A1 (ja) * | 2014-03-20 | 2015-09-24 | 日本電気株式会社 | システムを監視する情報処理装置及び監視方法 |
US9245117B2 (en) | 2014-03-31 | 2016-01-26 | Intuit Inc. | Method and system for comparing different versions of a cloud based application in a production environment using segregated backend systems |
US9563518B2 (en) | 2014-04-02 | 2017-02-07 | Commvault Systems, Inc. | Information management by a media agent in the absence of communications with a storage manager |
US11294700B2 (en) | 2014-04-18 | 2022-04-05 | Intuit Inc. | Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets |
CN105022676B (zh) * | 2014-04-22 | 2018-08-17 | 大唐软件技术股份有限公司 | 一种内存数据库重做日志文件的恢复方法和装置 |
US9374389B2 (en) | 2014-04-25 | 2016-06-21 | Intuit Inc. | Method and system for ensuring an application conforms with security and regulatory controls prior to deployment |
US9319415B2 (en) | 2014-04-30 | 2016-04-19 | Intuit Inc. | Method and system for providing reference architecture pattern-based permissions management |
US9900322B2 (en) | 2014-04-30 | 2018-02-20 | Intuit Inc. | Method and system for providing permissions management |
US9330263B2 (en) | 2014-05-27 | 2016-05-03 | Intuit Inc. | Method and apparatus for automating the building of threat models for the public cloud |
US9934008B2 (en) * | 2014-06-18 | 2018-04-03 | Netapp, Inc. | Methods for facilitating persistent storage of in-memory databases and devices thereof |
US20160019117A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Creating customized bootable image for client computing device from backup copy |
US9514211B2 (en) | 2014-07-20 | 2016-12-06 | Microsoft Technology Licensing, Llc | High throughput data modifications using blind update operations |
US9473481B2 (en) | 2014-07-31 | 2016-10-18 | Intuit Inc. | Method and system for providing a virtual asset perimeter |
US10102082B2 (en) | 2014-07-31 | 2018-10-16 | Intuit Inc. | Method and system for providing automated self-healing virtual assets |
CN105376269B (zh) * | 2014-08-11 | 2019-11-26 | 中国电信股份有限公司 | 虚拟机存储***及其实现方法和装置 |
KR101690282B1 (ko) * | 2014-11-12 | 2016-12-27 | 주식회사 알티베이스 | 테이블스페이스 속성 변경 방법 및 그 장치 |
US9858310B2 (en) * | 2015-09-14 | 2018-01-02 | Sap Se | Maintaining in-memory database consistency by parallelizing persistent data and log entries |
US9747174B2 (en) | 2015-12-11 | 2017-08-29 | Microsoft Technology Licensing, Llc | Tail of logs in persistent main memory |
US9965538B2 (en) | 2016-01-19 | 2018-05-08 | Microsoft Technology Licensing, Llc | Early thread return with secondary event writes |
US10140150B2 (en) | 2016-02-08 | 2018-11-27 | Microsoft Technology Licensing, Llc | Thread diversion awaiting log call return |
US10747630B2 (en) | 2016-09-30 | 2020-08-18 | Commvault Systems, Inc. | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node |
US10572184B2 (en) * | 2018-01-11 | 2020-02-25 | International Business Machines Corporation | Garbage collection in data storage systems |
US20190354470A1 (en) * | 2018-05-16 | 2019-11-21 | Sap Se | Reduced Database Backup Memory Usage |
US11200124B2 (en) | 2018-12-06 | 2021-12-14 | Commvault Systems, Inc. | Assigning backup resources based on failover of partnered data storage servers in a data storage management system |
US11416485B2 (en) | 2019-03-28 | 2022-08-16 | Sap Se | Dynamic query expressions |
US11360977B2 (en) | 2019-04-01 | 2022-06-14 | Sap Se | Selectively allowing query optimization in query processing |
US11237924B2 (en) | 2019-12-11 | 2022-02-01 | Commvault Systems, Inc. | Dynamic resizing and re-distribution of destination data storage resources for bare metal restore operations in a data storage management system |
US11099956B1 (en) | 2020-03-26 | 2021-08-24 | Commvault Systems, Inc. | Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations |
US11635914B2 (en) | 2020-07-30 | 2023-04-25 | International Business Machines Corporation | Locating data within tape systems using sub dataset headers |
US11645175B2 (en) | 2021-02-12 | 2023-05-09 | Commvault Systems, Inc. | Automatic failover of a storage manager |
CN113805798A (zh) * | 2021-08-06 | 2021-12-17 | 卡斯柯信号有限公司 | 车载日志的空间优化存储方法、装置、电子设备及介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5193162A (en) * | 1989-11-06 | 1993-03-09 | Unisys Corporation | Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities |
US5375128A (en) * | 1990-10-18 | 1994-12-20 | Ibm Corporation (International Business Machines Corporation) | Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders |
US5530855A (en) * | 1992-10-13 | 1996-06-25 | International Business Machines Corporation | Replicating a database by the sequential application of hierarchically sorted log records |
KR950011056B1 (ko) * | 1992-12-22 | 1995-09-27 | 재단법인한국전자통신연구소 | 트랜잭션 처리시스템의 로그/회복관리방법 |
JPH06266597A (ja) * | 1993-03-11 | 1994-09-22 | Fujitsu Ltd | ログ取得方式 |
JPH0812653B2 (ja) * | 1993-07-19 | 1996-02-07 | 日本電気株式会社 | トランザクション処理システム |
US5594862A (en) * | 1994-07-20 | 1997-01-14 | Emc Corporation | XOR controller for a storage subsystem |
US5751939A (en) * | 1995-11-29 | 1998-05-12 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system using an exclusive-or memory |
US5721918A (en) * | 1996-02-06 | 1998-02-24 | Telefonaktiebolaget Lm Ericsson | Method and system for fast recovery of a primary store database using selective recovery by data type |
US5893165A (en) * | 1996-07-01 | 1999-04-06 | Sun Microsystems, Inc. | System and method for parallel execution of memory transactions using multiple memory models, including SSO, TSO, PSO and RMO |
KR19980049353A (ko) * | 1996-12-19 | 1998-09-15 | 양승택 | 분산 트랜잭션의 회복방법 |
US5878414A (en) * | 1997-06-06 | 1999-03-02 | International Business Machines Corp. | Constructing a transaction serialization order based on parallel or distributed database log files |
US6185577B1 (en) * | 1998-06-23 | 2001-02-06 | Oracle Corporation | Method and apparatus for incremental undo |
US6269381B1 (en) * | 1998-06-30 | 2001-07-31 | Emc Corporation | Method and apparatus for backing up data before updating the data and for restoring from the backups |
US6449623B1 (en) * | 1998-09-04 | 2002-09-10 | Lucent Technologies Inc, | Method and apparatus for detecting and recovering from data corruption of a database via read logging |
US6327671B1 (en) * | 1998-11-18 | 2001-12-04 | International Business Machines Corporation | Delta compressed asynchronous remote copy |
US6513093B1 (en) * | 1999-08-11 | 2003-01-28 | International Business Machines Corporation | High reliability, high performance disk array storage system |
US6618822B1 (en) * | 2000-01-03 | 2003-09-09 | Oracle International Corporation | Method and mechanism for relational access of recovery logs in a database system |
-
2000
- 2000-06-07 KR KR10-2000-0031166A patent/KR100390853B1/ko not_active IP Right Cessation
- 2000-12-28 DE DE60019173T patent/DE60019173T2/de not_active Expired - Lifetime
- 2000-12-28 WO PCT/KR2000/001542 patent/WO2001095640A2/en active IP Right Grant
- 2000-12-28 AT AT00987814T patent/ATE292304T1/de not_active IP Right Cessation
- 2000-12-28 AU AU2001224081A patent/AU2001224081A1/en not_active Abandoned
- 2000-12-28 JP JP2002503047A patent/JP4813004B2/ja not_active Expired - Lifetime
- 2000-12-28 CN CNB00819629XA patent/CN1205550C/zh not_active Expired - Fee Related
- 2000-12-28 EP EP00987814A patent/EP1320802B1/en not_active Expired - Lifetime
-
2001
- 2001-01-25 US US09/768,301 patent/US7065537B2/en not_active Expired - Lifetime
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100461163C (zh) * | 2004-02-27 | 2009-02-11 | 微软公司 | 用于恢复数据库中单元的***和方法 |
CN100375047C (zh) * | 2004-03-17 | 2008-03-12 | 联想(北京)有限公司 | 一种计算机日志的管理方法 |
CN100378677C (zh) * | 2004-03-19 | 2008-04-02 | 株式会社日立制作所 | 利用日志同步数据库数据非同步传送的恢复方式及装置 |
CN100369038C (zh) * | 2005-02-24 | 2008-02-13 | 中兴通讯股份有限公司 | 一种实时数据库事务操作的实现方法 |
CN103745016B (zh) * | 2006-03-10 | 2018-03-06 | 甲骨文国际公司 | 利用恢复日志检测数据库事件 |
CN101075203B (zh) * | 2006-05-18 | 2010-06-16 | 株式会社日立制作所 | 存储装置以及其恢复卷生成方法 |
CN100464334C (zh) * | 2007-06-06 | 2009-02-25 | 中国工商银行股份有限公司 | 应用于数据仓库的数据增量备份与恢复的方法 |
WO2008148319A1 (fr) * | 2007-06-07 | 2008-12-11 | Huawei Technologies Co., Ltd. | Procédé de récupération d'image, équipement de stockage et système réseau |
CN101251814B (zh) * | 2008-02-04 | 2010-04-07 | 浙江大学 | 一种在操作***中实现可信恢复***的方法 |
CN101681312B (zh) * | 2008-02-29 | 2012-05-23 | 株式会社东芝 | 存储器*** |
CN101681317B (zh) * | 2008-03-01 | 2011-09-28 | 株式会社东芝 | 存储器*** |
CN101625655B (zh) * | 2009-08-20 | 2011-05-25 | 华中科技大学 | 一种内存数据库的并行恢复方法 |
US9384100B2 (en) | 2011-03-18 | 2016-07-05 | Microsoft Technology Licensing, Llc | Tracking redo completion at a page level |
CN102708143A (zh) * | 2011-03-18 | 2012-10-03 | 微软公司 | 在页级跟踪重做完成 |
CN102708143B (zh) * | 2011-03-18 | 2018-05-15 | 微软技术许可有限责任公司 | 在页级跟踪重做完成 |
US12038906B2 (en) | 2013-03-15 | 2024-07-16 | Amazon Technologies, Inc. | Database system with database engine and separate distributed storage service |
CN110083656B (zh) * | 2013-03-15 | 2024-04-12 | 亚马逊科技公司 | 日志记录管理 |
CN110083656A (zh) * | 2013-03-15 | 2019-08-02 | 亚马逊科技公司 | 日志记录管理 |
CN105900073A (zh) * | 2013-08-29 | 2016-08-24 | 慧与发展有限责任合伙企业 | 分离存储事务日志 |
CN105900073B (zh) * | 2013-08-29 | 2020-04-10 | 慧与发展有限责任合伙企业 | 用于维护事务日志的***、计算机可读介质和方法 |
US10140174B2 (en) | 2013-08-29 | 2018-11-27 | Hewlett Packard Enterprise Development Lp | Separating storage transaction logs |
CN103793297B (zh) * | 2014-01-14 | 2017-10-20 | 上海上讯信息技术股份有限公司 | 基于分发模式的日志保护方法 |
CN103793297A (zh) * | 2014-01-14 | 2014-05-14 | 上海上讯信息技术股份有限公司 | 基于分发模式的日志保护方法 |
CN105045679A (zh) * | 2015-07-08 | 2015-11-11 | 安徽兆尹信息科技股份有限公司 | 一种用于金融管理网络***的数据库备份与恢复方法 |
CN105045679B (zh) * | 2015-07-08 | 2018-01-30 | 安徽兆尹信息科技股份有限公司 | 一种用于金融管理网络***的数据库备份与恢复方法 |
CN105335098B (zh) * | 2015-09-25 | 2019-03-26 | 华中科技大学 | 一种基于存储级内存的日志文件***性能提高方法 |
CN105335098A (zh) * | 2015-09-25 | 2016-02-17 | 华中科技大学 | 一种基于存储级内存的日志文件***性能提高方法 |
CN108228678B (zh) * | 2016-12-22 | 2020-10-16 | 华为技术有限公司 | 一种多副本数据恢复方法及装置 |
US11132265B2 (en) | 2016-12-22 | 2021-09-28 | Huawei Technologies Co., Ltd. | Multi-replica data restoration method and apparatus |
CN108228678A (zh) * | 2016-12-22 | 2018-06-29 | 华为技术有限公司 | 一种多副本数据恢复方法及装置 |
CN108228382A (zh) * | 2018-01-11 | 2018-06-29 | 成都信息工程大学 | 一种针对evenodd码单盘故障的数据恢复方法 |
CN110543386A (zh) * | 2019-09-16 | 2019-12-06 | 上海达梦数据库有限公司 | 一种数据存储方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP4813004B2 (ja) | 2011-11-09 |
US20020116404A1 (en) | 2002-08-22 |
KR20010112529A (ko) | 2001-12-20 |
JP2004501449A (ja) | 2004-01-15 |
AU2001224081A1 (en) | 2001-12-17 |
WO2001095640A2 (en) | 2001-12-13 |
US7065537B2 (en) | 2006-06-20 |
DE60019173D1 (de) | 2005-05-04 |
WO2001095640A3 (en) | 2002-11-14 |
ATE292304T1 (de) | 2005-04-15 |
EP1320802B1 (en) | 2005-03-30 |
DE60019173T2 (de) | 2006-01-26 |
EP1320802A2 (en) | 2003-06-25 |
KR100390853B1 (ko) | 2003-07-10 |
CN1205550C (zh) | 2005-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1205550C (zh) | 主存储器事务处理***中的高度并行日志和恢复操作的方法和*** | |
US5561795A (en) | Method and apparatus for audit trail logging and data base recovery | |
US7266574B1 (en) | Identification of updated files for incremental backup | |
US7266669B2 (en) | File system with file management function and file management method | |
US7873683B2 (en) | File system having transaction record coalescing | |
US7433898B1 (en) | Methods and apparatus for shared storage journaling | |
US9542431B2 (en) | Cyclic commit transaction protocol | |
CA2818472C (en) | Optimized startup verification of file system integrity | |
EP0549325A2 (en) | Log archive filtering system for transaction-consistent forward recovery from catastrophic media failures | |
US20030065901A1 (en) | System for conserving metadata about data snapshots | |
CN1653427A (zh) | 用于创建虚拟数据拷贝的方法和装置 | |
Eich | Mars: The design of a main memory database machine | |
US6636941B1 (en) | Enhanced stable disk storage | |
KR20060085899A (ko) | 데이터베이스 시스템 및 그 데이터베이스 시스템의데이터베이스 컴포넌트를 메인 메모리에 저장하는 시스템및 방법 | |
CN113515501B (zh) | 非易失性内存数据库管理***恢复方法、装置和电子设备 | |
Graefe et al. | Definition, detection, and recovery of single-page failures, a fourth class of database failures | |
US7093090B1 (en) | Method for creating a virtual data copy of a volume being restored | |
CN110134551B (zh) | 一种持续数据保护方法及装置 | |
Lomet et al. | Redo recovery after system crashes | |
KR100501414B1 (ko) | 파일 시스템의 메타 데이터 회복을 위한 로깅과 회복 방법및 장치 | |
CN112214171B (zh) | 一种面向SQLite数据库的非易失性内存缓冲区设计方法 | |
Lomet | High speed on-line backup when using logical log operations | |
JPS62245348A (ja) | データベース更新方法 | |
CN115470178A (zh) | 一种基于域对象的域快照回滚方法 | |
JPS6167153A (ja) | 直接アクセス記憶装置の部分障害回復処理方法 |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: SAP AG Free format text: FORMER OWNER: TRANSACT IN MEMORY, INC. Effective date: 20070727 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20070727 Address after: German Waldo Patentee after: SAP AG Address before: Seoul, South Kerean Patentee before: Transact in Memory, Inc. |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20050608 Termination date: 20151228 |
|
EXPY | Termination of patent right or utility model |