CN103729391A - 能够重新启动事务的客户端装置和数据库服务器及方法 - Google Patents
能够重新启动事务的客户端装置和数据库服务器及方法 Download PDFInfo
- Publication number
- CN103729391A CN103729391A CN201310349377.3A CN201310349377A CN103729391A CN 103729391 A CN103729391 A CN 103729391A CN 201310349377 A CN201310349377 A CN 201310349377A CN 103729391 A CN103729391 A CN 103729391A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- affairs
- transaction units
- transaction
- restart
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2336—Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
- G06F16/2343—Locking methods, e.g. distributed locking or locking implementation details
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明涉及能够重新启动事务的客户端装置和数据库服务器以及方法,本发明在单一服务器以及群集数据库环境下执行事务时,将事务分割为可恢复的单元单位的子集来传送,因服务器出现故障而引起的回滚时,按单元单位的倒序,对所接收的事务单元执行回滚的同时将检测到确保一致性的事务单元的时间点作为恢复时间点来中断回滚,并保存直到恢复时间点为止接收的事务信息,以使无需从头开始重新执行事务而能够从恢复时间点之后重新启动,从而能够提高数据传送效率。
Description
技术领域
本发明涉及在数据库环境(database environment)下进行的事务(transaction)处理,尤其涉及在单一服务器及群集(clustering)数据库环境下执行事务时,将事务分割为可恢复的单元单位的子集(subset)来传送,因服务器出现故障而引起的回滚(rollback)时,按单元单位的倒序,对所接收的事务单元执行回滚的同时将检测到确保一致性(consistency)的事务单元的时间点作为恢复时间点(resumable point)来中断回滚并保存直到恢复时间点为止接收的事务信息,以使无需从头开始重新启动事务而能够从恢复时间点之后重新启动事务,从而能够提高数据传送效率的可重新启动事务的客户端装置、数据库服务器及方法。
本发明从作为知识经济部的产业融合源泉技术开发事业的一环来执行的研究中导出(10040937,用于日本大型计算机(日立、富士通)的集成解决方案的开发)。
背景技术
通常,数据库管理系统(Database Management System:DBMS,以下称为“DBMS”)是指用于管理存储庞大的量的数据的数据库的系统。
在这种数据库管理系统中,以表(table)形态将所有数据存储于数据库,在这里表是指在数据库中存储数据的基本结构,一个表可由一个以上的记录(record)构成。
并且,各记录由一个以上的列构成,列意味着构成表的具有实际上表现表项目的名称的域名(domain),又称为属性(attribute)或字段(field)。
这种数据库管理系统在从外部输入特定查询(query)的情况下,根据所输入的查询,执行在数据库中选择、插入、更新、删除数据等功能。在这里,查询意味着对存储于数据库的表的数据的某种要求,即是对于希望对数据进行怎样的操作的记述,利用结构化查询语言(SQL,Structured QueryLanguage)等的语言来表现。
另一方面,在如上所述的数据库管理系统中,对数据进行插入、删除、更新等的数据操纵语言(DML,Data Manipulation Language)演算处理时将会执行事务,这种事务意味着对于信息的交换或数据库的更新等的一连的作业的连续处理的单位,表现出在保障数据库的完整性的状态下用于完成所请求的作业的基本单位。
但是,在执行如上所述的客户端和数据库服务器之间的事务时,出现数据库服务器的故障的情况下,由于以往无法对事务执行内容进行失效转移(fail-over),因而将会丢失所有未完成的事务的数据,从数据库执行回滚(rollback)的情况下,存在需要从头开始重新执行事务的问题。
发明内容
因此,本发明的目的在于,提供在单一服务器及群集数据库环境下执行事务时,将事务分割为可恢复的单元单位的子集来传送,因服务器出现故障而引起的回滚时,按单元单位的倒序,对所接收的事务单元执行回滚的同时将检测到确保一致性的事务单元的时间点作为恢复时间点(resumable point)来中断回滚并保存恢复时间点为止接收的事务信息,以使无需从头开始重新启动事务而能够从恢复时间点之后重新启动事务,从而能够提高数据传送效率的可重新启动事务的客户端装置、数据库服务器及方法。
上述的本发明作为可重新启动事务的客户端装置,包括:通信部,与数据库服务器相连接来执行与事务的执行相伴的数据收发;单元构成部,由事务单元构成,上述事务单元是将伴随着上述事务的执行而向上述服务器传送的事务数据分割为单元(unit)单位的子集(subset)而成的;以及控制部,向上述服务器传送上述事务单元,在执行上述事务的过程中发生回滚的情况下,控制为从由上述服务器提供的确保一致性(consistency)的恢复时间点(resumable point)之后的事务单元起重新启动上述事务。
并且,本发明的特征在于,上述单元构成部以结构化查询语言语句(statement)为单位或者以批量缓冲区(batch buffer)为基准,将上述事务分割为子集来构成上述事务单元。
并且,本发明的特征在于,上述单元构成部向上述子集赋予序列(sequence)号。
并且,本发明的特征在于,上述事务以结构化查询语言的形态或批量(batch)形态构成。
并且,本发明的特征在于,上述客户端装置还包括缓存部,上述缓存部用于存储向上述服务器传送的事务单元。
并且,本发明的特征在于,在重新启动上述事务时,上述控制部从上述缓存部中从上述恢复时间点之后的事务单元起依次读取事务单元并重新传送。
并且,本发明作为可重新启动事务的数据库服务器,包括:通信部,与客户端装置相连接来执行与事务的执行相伴的数据收发;数据处理部,伴随着上述事务的执行而接收从上述客户端装置传送的被分割为单元单位的子集的事务单元,并以上述单元单位处理事务信息;恢复部,在执行上述事务的过程中发生回滚的情况下,一边按事务单元单位的倒序对上述事务执行回滚,一边生成用于重新启动上述事务的恢复时间点;控制部,在无法执行上述事务的情况下,通过上述恢复部对上述事务执行回滚,在重新连接到上述客户端装置时,提供上述恢复时间点,接收上述恢复时间点之后的事务单元来重新启动上述事务。
并且,本发明的特征在于,上述恢复部在执行上述回滚的同时搜索确保一致性的事务单元,将上述确保一致性的事务单元的搜索时间点生成为用于重新启动上述事务的恢复时间点。
并且,本发明的特征在于,上述恢复部执行回滚直至搜索到上述确保一致性的事务单元的时间点。
并且,本发明的特征在于,上述恢复部保存上述恢复时间点之前时间点的事务单元。
并且,本发明的特征在于,上述数据处理部将能够识别各事务单元的识别信息与相关事务单元一起存储。
并且,本发明的特征在于,上述识别信息设定为能够识别上述事务单元的一致性。
并且,本发明作为重新启动事务的方法,包括:在与数据库服务器执行事务时,将向上述数据库服务器传送的事务数据分割为单元单位的子集来构成事务单元的步骤;伴随着上述事务的执行,向上述服务器传送上述事务单元的步骤;在执行上述事务的过程中发生回滚的情况下,从上述服务器接收用于重新启动上述事务的确保一致性的恢复时间点的步骤;以及传送重新启动事务请求的步骤,重新连接到上述服务器时,为了从上述恢复时间点之后起重新启动上述事务而向上述服务器传送重新启动事务请求。
并且,本发明的特征在于,上述事务单元以结构化查询语言语句为单位或者以批量缓冲区为基准分割为子集。
并且,本发明的特征在于,上述子集各自分配有序列号。
并且,本发明的特征在于,上述传送重新启动事务请求的步骤包括:从存储向上述服务器传送的事务单元的缓存部检测上述恢复时间点之后的事务单元的步骤;从检测到的上述事务单元依次读取并重新传送的步骤。
并且,本发明作为重新启动事务的方法,包括以下步骤:与客户端装置执行事务的步骤;在执行上述事务时,接收分割为单元单位的子集的事务单元,以单元单位处理事务信息的步骤;在执行上述事务的过程中发生回滚时,按事务单元单位的倒序对上述事务执行回滚的步骤;生成恢复时间点的步骤,在执行上述回滚的同时,生成用于重新启动上述事务的恢复时间点;在重新连接到上述客户端装置时,提供上述恢复时间点的步骤;接收上述恢复时间点之后的事务单元来重新启动上述事务的步骤。
并且,本发明的特征在于,上述生成恢复时间点的步骤包括:在执行上述回滚的同时搜索确保一致性的事务单元的步骤;将上述确保一致性的事务单元的搜索时间点生成为用于重新启动上述事务的恢复时间点的步骤。
并且,本发明的特征在于,上述生成恢复时间点的步骤之后,还包括保存上述恢复时间点之前时间点的事务单元的步骤。
本发明具有如下优点:在单一服务器以及群集数据库环境下执行事务时,将事务分割为以可恢复的单元单位的子集来传送,在因服务器出现故障而引起的回滚时,按单元单位的倒序,对所接收的事务单元执行回滚的同时将检测到确保一致性的事务单元的时间点作为恢复时间点来中断回滚并保存直到恢复时间点为止接收的事务信息,以使无需从头开始重新执行事务而能够从恢复时间点之后重新启动,从而能够提高数据传送效率。
附图说明
图1为本发明实施例的可重新启动事务的客户端、服务器网络结构图。
图2为本发明实施例的在客户端装置中用于重新启动事务的工作控制流程图。
图3为本发明实施例的在数据库服务器中用于重新启动事务的工作控制流程图。
具体实施方式
以下,参照附图对本发明的工作原理进行详细说明。在以下内容中,若判断为在说明本发明的方面对公知的功能或结构的具体说明有可能不必要地使本发明的主旨模糊的情况下,将省略该详细说明。而且,后述的术语为考虑本发明中的功能来定义的术语,这可根据使用者、应用人员的意图或惯例等而不同。因此,该定义应以本说明书的全部内容为基础来定立。
图1为本发明实施例的可重新启动事务的客户端装置100及数据库服务器150的网络结构图。
以下,参照图1详细说明本发明的实施例的在单一服务器及群集数据库环境下重新启动事务的工作。
首先,客户端装置100是指通过通信网与数据库服务器150连接来能够搜索、变更数据的使用者终端装置,在与数据库服务器150相连接的情况下,能够执行用于插入、删除或更新数据库(database)162内的数据的事务。
此时,如上所述的事务在客户端装置100和数据库服务器150之间执行事务时,在数据库服务器150出现故障的情况下,以往由于无法对事务执行内容进行失效转移(fail-over),因而将会丢失全部未完成的事务的数据,并且如上所述地存在着在数据库服务器150执行回滚的情况下需要从头开始重新执行事务的问题。
因此,在本发明的实施例中通过在客户端装置100中以将事务分割为可恢复的单元(unit)单位的子集来传送的方式执行事务,对向数据库服务器150传送的事务的子集进行缓存(caching)来存储,从而在因数据库服务器150出现故障而引起的回滚时,从数据库服务器150接收一致性得到认证的子集的恢复时间点信息,不再重新执行全部事务而以仅重新传送恢复时间点之后的子集的方式来能够重新启动事务。
以下,通过对客户端装置100的各结构要素的工作说明来更为详细地说明如上所述的客户端装置100的工作。
通信部102通过通信网将客户端装置100连接到数据库服务器150,并使得伴随着客户端装置100和数据库服务器150之间的事务的执行而收发的数据进行连接(interface)。
单元构成部104将伴随着事务的执行而从客户端装置100向数据库服务器150传送的事务数据分割为单元单位的子集。即,单元构成部104以结构化查询语言的语句为单位或者以批量缓冲区为单位,将从客户端装置100向数据库服务器150传送的结构化查询语言形态或批量形态的事务分割为子集,并赋予序列号。
如上所述,在单元构成部104分割为子集并被赋予序列号的事务单元伴随着客户端装置100和数据库服务器150之间的事务的执行,通过客户端装置100的通信部向数据库服务器150传送。
缓存部106以单元单位存储如上所述地伴随着事务的执行而向数据库服务器150传送的事务单元。
控制部108伴随着存储于存储部110的工作控制程序而控制客户端装置100的整体工作,并且根据本发明的实施例,控制用于重新启动与数据库服务器150的事务的各部的工作。
即,控制部108使得伴随着事务的执行而通过单元构成部104并伴随着事务的执行而向数据库服务器150传送的数据向事务单元传送,并将如此传送的事务单元存储于缓存部106使得在因数据库服务器150出现故障而引起的回滚时,不再从头开始重新执行事务而从由数据库服务器150提供的确保一致性的恢复时间点之后的事务单元起重新启动事务,从而能够提高数据传送效率。
并且,控制部108能够从数据库服务器150将一贯的并永久性地结束反映的时间点或事务单元的号码接收为响应信息,利用对于在服务器150中结束反映的事务单元的信息来在缓存部106去除相关事务单元,从而能够防止在缓存部106由于存储不必要的信息而浪费存储器。
其次,数据库服务器150能够执行对伴随着与通过通信网连接的客户端装置100的事务的执行而在数据库162内相关数据的插入、删除或更新等。
此时,数据库服务器150与客户端装置100执行事务时,由于在数据库服务器150内出现故障等而无法完成事务的情况下,数据库服务器150以往对相关事务执行回滚,从头开始重新执行事务,由此对基于出现故障前执行的事务的数据也全部删除,从而有可能产生在事务执行过程中的不必要的负荷。
因此,在本发明的实施例中,在数据库服务器150中,从客户端装置100伴随着事务的执行而传送的数据构成为可恢复的事务单元的情况下,在恢复由数据库服务器150的故障引起的事务时,并不对全部事务执行回滚,而是按单元单位的倒序来对接收的事务单元执行回滚的同时检测到确保一致性的事务单元的情况下,相关事务单元保存信息,从恢复故障后保存的事务单元起重新执行事务,由此可重新启动事务。
以下,通过在数据库服务器150的各结构要素中的工作说明来更加详细地说明如上所述的数据库服务器150的工作。
通信部152通过通信网连接客户端装置100和数据库服务器150之间,并使得伴随着客户端装置100和数据库服务器150之间的事务的执行而收发的数据进行连接。并且,可向客户端装置100传送随着数据库服务器150出现故障而从数据库服务器150发生的回滚命令及重新启动事务的恢复时间点等信息。
数据处理部154对伴随着客户端装置100和数据库服务器150之间的事务的执行而从客户端装置100传送的可恢复的单元单位的数据,即以事务单元为单位处理事务信息并进行存储。此时,数据处理部154将能够识别是否以事务单元单位有一致性地存储于数据库162的识别信息也一并进行存储。
另一方面,在执行如上所述的事务的过程中,因数据库服务器150出现故障等而无法完成有关事务的情况下,在数据库服务器150中执行回滚。
在对如上所述的未完成的事务执行回滚的情况下,与以往从头开始重新启动事务的工作不同,恢复部156按事务单元单位的倒序执行回滚,而不是对全部事务进行回滚。
即,恢复部156在按事务单元单位的倒序执行回滚的同时搜索确保一致性的事务单元,并在检测出确保一致性的事务单元的情况下中断回滚,相关当前事务单元保存信息,并将中断回滚的时间点生成为恢复时间点(resumable point)。在恢复故障后重新连接客户端装置100的情况下,向客户端装置100提供如此生成的有关恢复时间点的信息,以使在客户端装置100从恢复时间点之后起可重新启动事务。
控制部158伴随着存储于存储部160的工作控制程序来控制数据库服务器150的整体工作,并且,根据本发明的实施例控制用于重新启动与客户端装置100的事务的各部的工作。
即,在恢复因数据库服务器150出现故障而引起的事务时,控制部158并不对全部事务执行回滚,而是按单元单位的倒序对通过恢复部156接收的事务单元执行回滚的同时检测到确保一致性的事务单元的情况下,相关事务单元保存信息,并从恢复故障后存储的事务单元之后起重新执行事务来使得能够重新启动事务。
图2为本发明实施例的在客户端装置100中用于重新启动事务的工作控制流程图,以下参照图1及图2,对本发明的实施例进行详细说明。
首先,在客户端装置100和数据库服务器之间执行事务的情况下,客户端装置100的控制部108控制单元构成部104来构成将向数据库服务器150传送的事务数据分割为单元单位的子集的事务单元(步骤S200)。
即,单元构成部104以结构化查询语言的语句为单位或者以批量的缓冲区为基准,将从客户端装置100向数据库服务器150传送的结构化查询语言形态或批量形态的事务分割为子集并赋予序列号来构成事务单元。
接着,控制部108伴随着客户端装置100和数据库服务器150之间的事务的执行而向数据库服务器150传送如上所述地在单元构成部104分割为子集并被赋予序列号的事务单元(步骤S202)。
并且,应对重新启动事务,控制部108以单元单位将伴随着客户端装置100和数据库服务器150之间的事务的执行而传送的事务单元存储于缓存部106(步骤S204)。
另一方面,如上所述地在客户端装置100和数据库服务器150之间执行事务的过程中,有可能产生由于数据库服务器150产生故障等而无法执行事务的情况(S206)。
像这样,在数据库服务器150出现故障等的情况下,中断未完成的事务执行,在恢复数据库服务器150的故障之后,在客户端装置100重新与数据库服务器150连接的时间点,通过回滚来重新开始执行事务。
此时,在本发明中,并不是从头开始重新启动在出现故障的数据库服务器150中未完成的数据,而是按事务单元单位的倒序执行回滚来检测到确保一致性的恢复时间点后,重新接收恢复时间点之后的事务单元来完成事务,此时,数据库服务器150在相关客户端装置重新连接的情况下提供如上检测到的恢复时间点,以重新启动事务。
即,客户端装置100的控制部108在伴随着恢复数据库服务器150的故障而重新连接后(步骤S208),从数据库服务器150接收用于重新启动事务的有关恢复时间点的信息(步骤S210)。
由此,控制部108在因数据库服务器150出现故障而引起的回滚时,并不从头开始重新执行事务,而是从由数据库服务器150提供的确保一致性的恢复时间点之后的事务单元起重新启动事务,从而能够提高数据传送的效率。
图3为本发明实施例的在数据库服务器150中用于重新启动事务的工作控制流程图,以下,参照图1及图3来详细说明本发明的实施例。
首先,在与客户端装置100执行事务的情况下,数据库服务器150的控制部158通过通信部152接收为了重新启动事务以单元为单位分割而被传送的事务单元(步骤S300)。
接着,控制部158控制数据处理部154来以事务单元为单位处理事务信息并存储,此时,可将能够识别是否以事务单元为单位来向数据库服务器162有一致性地执行存储的识别信息也一并进行存储(步骤S302)。
另一方面,在如上所述的事务执行过程中,有可能产生因数据库服务器150出现故障等而无法完成相关事务的情况,在这种情况下,控制部158执行回滚来重新执行未完成的事务(步骤S304)。
在执行如上所述的回滚中,以往用客户端装置100从头开始重新启动相关事务,但是在本发明的实施例中,与以往不同,并不对全部事务进行回滚而是控制恢复部156来按事务单元单位的倒序执行回滚(步骤S306)。
即,恢复部156伴随着控制部158的控制而按事务单元单位的倒序执行回滚的同时搜索确保一致性的事务单元,在检测到确保一致性的事务单元的情况下,中断回滚,并将该时间点生成为恢复时间点(步骤S308)。
并且,恢复部156使中断回滚的时间点的相关事务单元保存信息。接着,恢复数据库服务器150的故障后,重新连接相关客户端装置的情况下,控制部158向客户端装置100提供如上所述通过恢复部156生成的恢复时间点,以使在客户端装置100中从恢复时间点之后起重新启动事务。
如上所述,在单一服务器以及群集数据库环境下执行事务时,将事务分割为可恢复的单元单位的子集来传送,在因服务器出现故障而引起的回滚时,按单元单位的倒序,对所接收的事务单元执行回滚的同时将检测到确保一致性的事务单元的时间点作为恢复时间点来中断回滚并保存直到恢复时间点为止接收的事务信息,以使无需从头开始重新执行事务而能够从恢复时间点之后起重新启动,从而能够提高数据传送效率。
另一方面,在上述的本发明的说明中对具体的实施例进行了说明,但是在不脱离本发明的范围的情况下可实施多种变形。因此,本发明的范围不应由所说明的实施例来决定,而应由权利要求书来决定。
Claims (19)
1.一种能够重新启动事务的客户端装置,其特征在于,包括:
通信部,与数据库服务器相连接来执行与事务的执行相伴的数据收发;
单元构成部,由事务单元构成,上述事务单元是将伴随着上述事务的执行而向上述服务器传送的事务数据分割为单元单位的子集而成的;以及
控制部,向上述服务器传送上述事务单元,在执行上述事务的过程中发生回滚的情况下,控制为从由上述服务器提供的确保一致性的恢复时间点之后的事务单元起重新启动上述事务。
2.根据权利要求1所述的能够重新启动事务的客户端装置,其特征在于,上述单元构成部以结构化查询语言语句为单位或者以批量缓冲区为基准,将上述事务分割为子集来构成上述事务单元。
3.根据权利要求2所述的能够重新启动事务的客户端装置,其特征在于,上述单元构成部向上述子集赋予序列号。
4.根据权利要求2所述的能够重新启动事务的客户端装置,其特征在于,上述事务以结构化查询语言的形态或批量形态构成。
5.根据权利要求1所述的能够重新启动事务的客户端装置,其特征在于,上述客户端装置还包括缓存部,上述缓存部用于存储向上述服务器传送的事务单元。
6.根据权利要求5所述的能够重新启动事务的客户端装置,其特征在于,在重新启动上述事务时,上述控制部从上述缓存部中从上述恢复时间点之后的事务单元起依次读取事务单元并重新传送。
7.一种能够重新启动事务的数据库服务器,其特征在于,包括:
通信部,与客户端装置相连接来执行与事务的执行相伴的数据收发;
数据处理部,伴随着上述事务的执行而接收从上述客户端装置传送的被分割为单元单位的子集的事务单元,并以上述单元单位处理事务信息;
恢复部,在执行上述事务的过程中发生回滚的情况下,一边按事务单元单位的倒序对上述事务执行回滚,一边生成用于重新启动上述事务的恢复时间点;
控制部,在无法执行上述事务的情况下,通过上述恢复部对上述事务执行回滚,在重新连接到上述客户端装置时,提供上述恢复时间点,接收上述恢复时间点之后的事务单元来重新启动上述事务。
8.根据权利要求7所述的能够重新启动事务的数据库服务器,其特征在于,上述恢复部在执行上述回滚的同时搜索确保一致性的事务单元,将上述确保一致性的事务单元的搜索时间点生成为用于重新启动上述事务的恢复时间点。
9.根据权利要求8所述的能够重新启动事务的数据库服务器,其特征在于,上述恢复部执行回滚直至搜索到上述确保一致性的事务单元的时间点。
10.根据权利要求8所述的能够重新启动事务的数据库服务器,其特征在于,上述恢复部保存上述恢复时间点之前时间点的事务单元。
11.根据权利要求7所述的能够重新启动事务的数据库服务器,其特征在于,上述数据处理部将能够识别各事务单元的识别信息与相关事务单元一起存储。
12.根据权利要求11所述的能够重新启动事务的数据库服务器,其特征在于,上述识别信息设定为能够识别上述事务单元的一致性。
13.一种重新启动事务的方法,其特征在于,包括:
在与数据库服务器执行事务时,将向上述数据库服务器传送的事务数据分割为单元单位的子集来构成事务单元的步骤;
伴随着上述事务的执行,向上述服务器传送上述事务单元的步骤;
在执行上述事务的过程中发生回滚的情况下,从上述服务器接收用于重新启动上述事务的确保一致性的恢复时间点的步骤;以及
传送重新启动事务请求的步骤,重新连接到上述服务器时,为了从上述恢复时间点之后起重新启动上述事务而向上述服务器传送重新启动事务请求。
14.根据权利要求13所述的重新启动事务的方法,其特征在于,上述事务单元以结构化查询语言语句为单位或者以批量缓冲区为基准分割为子集。
15.根据权利要求14所述的重新启动事务的方法,其特征在于,上述子集各自分配有序列号。
16.根据权利要求13所述的重新启动事务的方法,其特征在于,
上述传送重新启动事务请求的步骤包括:
从存储向上述服务器传送的事务单元的缓存部检测上述恢复时间点之后的事务单元的步骤;
从检测到的上述事务单元依次读取并重新传送的步骤。
17.一种重新启动事务的方法,其特征在于,包括:
与客户端装置执行事务的步骤;
在执行上述事务时,接收分割为单元单位的子集的事务单元,以单元单位处理事务信息的步骤;
在执行上述事务的过程中发生回滚时,按事务单元单位的倒序对上述事务执行回滚的步骤;
生成恢复时间点的步骤,在执行上述回滚的同时,生成用于重新启动上述事务的恢复时间点;
在重新连接到上述客户端装置时,提供上述恢复时间点的步骤;
接收上述恢复时间点之后的事务单元来重新启动上述事务的步骤。
18.根据权利要求17所述的重新启动事务的方法,其特征在于,
上述生成恢复时间点的步骤包括:
在执行上述回滚的同时搜索确保一致性的事务单元的步骤;
将上述确保一致性的事务单元的搜索时间点生成为用于重新启动上述事务的恢复时间点的步骤。
19.根据权利要求17所述的重新启动事务的方法,其特征在于,上述生成恢复时间点的步骤之后,还包括保存上述恢复时间点之前时间点的事务单元的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2012-0113773 | 2012-10-12 | ||
KR1020120113773A KR101424568B1 (ko) | 2012-10-12 | 2012-10-12 | 트랜잭션 재시작 가능한 클라이언트 장치와 데이터베이스 서버 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103729391A true CN103729391A (zh) | 2014-04-16 |
Family
ID=50453469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310349377.3A Pending CN103729391A (zh) | 2012-10-12 | 2013-08-12 | 能够重新启动事务的客户端装置和数据库服务器及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20140108367A1 (zh) |
KR (1) | KR101424568B1 (zh) |
CN (1) | CN103729391A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105787011A (zh) * | 2016-02-23 | 2016-07-20 | 网易(杭州)网络有限公司 | 排名更新方法及装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7363049B2 (ja) * | 2019-02-18 | 2023-10-18 | 日本電気株式会社 | 業務サービス提供システム、業務サービス復旧方法及び業務サービス復旧プログラム |
CN110990182B (zh) * | 2019-12-03 | 2021-06-11 | 腾讯科技(深圳)有限公司 | 事务处理方法、装置、设备及存储介质 |
US11544245B2 (en) | 2019-12-03 | 2023-01-03 | Tencent Technology (Shenzhen) Company Limited | Transaction processing method, apparatus, and device and computer storage medium |
CN111277639B (zh) * | 2020-01-16 | 2022-08-09 | 中国建设银行股份有限公司 | 一种保持数据一致性的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5796934A (en) * | 1996-05-31 | 1998-08-18 | Oracle Corporation | Fault tolerant client server system |
US6625602B1 (en) * | 2000-04-28 | 2003-09-23 | Microsoft Corporation | Method and system for hierarchical transactions and compensation |
US6728747B1 (en) * | 1997-05-30 | 2004-04-27 | Oracle International Corporation | Method and system for implementing failover for database cursors |
US6871293B2 (en) * | 2001-08-07 | 2005-03-22 | American Management Systems, Inc. | Gap detector detecting gaps between transactions transmitted by clients and transactions processed by servers |
CN1729455A (zh) * | 2003-04-10 | 2006-02-01 | 国际商业机器公司 | 数据处理系统内从失败的恢复 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4428887B2 (ja) * | 2000-06-27 | 2010-03-10 | 富士通株式会社 | データベースシステム |
GB0324961D0 (en) * | 2003-10-25 | 2003-11-26 | Ibm | Invocation of a follow on unit of work |
US7788255B2 (en) * | 2004-01-21 | 2010-08-31 | Oracle International Corporation | Specifying parallel or sequential execution of database operations by bundling database statements |
US7818301B2 (en) * | 2004-12-17 | 2010-10-19 | International Business Machines Corporation | Method, system and article of manufacture for rolling back past a boundary generator to a savepoint located in a unit of work |
KR20070018385A (ko) * | 2005-08-09 | 2007-02-14 | (주)다음소프트 | 대화 분석을 이용하는 대화 에이전트 서비스 방법 및시스템 |
US8364648B1 (en) * | 2007-04-09 | 2013-01-29 | Quest Software, Inc. | Recovering a database to any point-in-time in the past with guaranteed data consistency |
US7895380B2 (en) * | 2009-01-21 | 2011-02-22 | Ati Technologies Ulc | Communication protocol for sharing memory resources between components of a device |
JP5039891B2 (ja) | 2009-10-19 | 2012-10-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データベースの複製を生成する装置及び方法 |
-
2012
- 2012-10-12 KR KR1020120113773A patent/KR101424568B1/ko active IP Right Grant
- 2012-10-31 US US13/664,739 patent/US20140108367A1/en not_active Abandoned
-
2013
- 2013-08-12 CN CN201310349377.3A patent/CN103729391A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5796934A (en) * | 1996-05-31 | 1998-08-18 | Oracle Corporation | Fault tolerant client server system |
US6728747B1 (en) * | 1997-05-30 | 2004-04-27 | Oracle International Corporation | Method and system for implementing failover for database cursors |
US6625602B1 (en) * | 2000-04-28 | 2003-09-23 | Microsoft Corporation | Method and system for hierarchical transactions and compensation |
US6871293B2 (en) * | 2001-08-07 | 2005-03-22 | American Management Systems, Inc. | Gap detector detecting gaps between transactions transmitted by clients and transactions processed by servers |
CN1729455A (zh) * | 2003-04-10 | 2006-02-01 | 国际商业机器公司 | 数据处理系统内从失败的恢复 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105787011A (zh) * | 2016-02-23 | 2016-07-20 | 网易(杭州)网络有限公司 | 排名更新方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20140108367A1 (en) | 2014-04-17 |
KR101424568B1 (ko) | 2014-08-01 |
KR20140047448A (ko) | 2014-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109241191B (zh) | 一种分布式数据源异构同步平台及同步方法 | |
US7801852B2 (en) | Checkpoint-free in log mining for distributed information sharing | |
US9779128B2 (en) | System and method for massively parallel processing database | |
US11210185B2 (en) | Method and system for data recovery in a data system | |
KR102072726B1 (ko) | 데이터베이스로의 미들-티어 트랜잭션 로그들의 인라인 위임을 지원하는 시스템들 및 방법들 | |
US8935205B2 (en) | System and method of performing snapshot isolation in distributed databases | |
WO2017162032A1 (zh) | 执行数据恢复操作的方法及装置 | |
CN102521712B (zh) | 一种流程实例数据处理方法和装置 | |
CN109189860A (zh) | 一种基于Kubernetes系统的MySQL主备增量同步方法 | |
CN109542682B (zh) | 一种数据备份方法、装置、设备和存储介质 | |
CN103729391A (zh) | 能够重新启动事务的客户端装置和数据库服务器及方法 | |
CN103092712A (zh) | 一种任务中断恢复方法和设备 | |
CN103500120A (zh) | 基于多线程异步双写的分布式缓存高可用处理方法及系统 | |
CN104794138A (zh) | 一种数据库交易结果确认方法、装置及系统 | |
CN102662793A (zh) | 一种可保证数据一致性的分布式数据库热备份与恢复方法 | |
US20120278429A1 (en) | Cluster system, synchronization controlling method, server, and synchronization controlling program | |
WO2017148297A1 (zh) | 数据表连接方法及装置 | |
WO2016082594A1 (zh) | 数据更新处理方法及装置 | |
CN111666266A (zh) | 一种数据迁移方法及相关设备 | |
CN105373563B (zh) | 数据库切换方法及装置 | |
CN103377292B (zh) | 数据库结果集缓存方法及设备 | |
CN106874343B (zh) | 一种时序数据库的数据删除方法及系统 | |
CN102591993A (zh) | 一种用于热表数据更新的异步处理方法及装置 | |
CN106407264A (zh) | 一种高可用性和强一致性的数据库集群系统及其命令处理方法 | |
US20120239802A1 (en) | Transaction processing system and operation of the transaction process system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Gyeonggi Do city of South Korea Applicant after: Co., Ltd. spy steps data Address before: Gyeonggi Do city of South Korea Applicant before: TIBERO CO., LTD. |
|
COR | Change of bibliographic data | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140416 |
|
WD01 | Invention patent application deemed withdrawn after publication |