CN114238353A - 一种分布式事务的实现方法及*** - Google Patents
一种分布式事务的实现方法及*** Download PDFInfo
- Publication number
- CN114238353A CN114238353A CN202111570290.XA CN202111570290A CN114238353A CN 114238353 A CN114238353 A CN 114238353A CN 202111570290 A CN202111570290 A CN 202111570290A CN 114238353 A CN114238353 A CN 114238353A
- Authority
- CN
- China
- Prior art keywords
- lock
- distributed
- transaction
- distributed transaction
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000002955 isolation Methods 0.000 claims abstract description 14
- 230000002688 persistence Effects 0.000 claims abstract description 4
- 230000001360 synchronised effect Effects 0.000 claims description 9
- 230000000903 blocking effect Effects 0.000 claims description 3
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000011084 recovery Methods 0.000 claims description 3
- 238000005096 rolling process Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/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
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- 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/2365—Ensuring data consistency and integrity
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)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明特别涉及一种分布式事务的实现方法及***。该分布式事务的实现方法及***,采用常驻内存的分布式锁保存分布式事务处理过程中的数据,实现分布式事务的隔离性;所述分布式锁保存在常驻内存的锁表中,以便查找和修改;多个服务器节点之间通过共识算法实现数据和锁的同步,保证分布式事务的一致性;通过事务日志保证分布式事务的完整性和持久性;此外,为了降低IO次数,除了读取新值和最终提交以外,不对磁盘进行读写。该分布式事务的实现方法及***,充分利用内存的性能优势,减少磁盘的读写操作,提高了分布式事务的执行效率,同时保证了分布式事务的安全性,满足了分布式事务的原子性、一致性、隔离性和持久性。
Description
技术领域
本发明涉及分布式数据库技术领域,特别涉及一种分布式事务的实现方法及***。
背景技术
当前互联网规模巨大,每时每刻都在产生大量的新数据,同时还有大量访问旧数据的请求。新产生的数据需要及时保存到数据库中,同时也有大量的数据被读出,因此数据库在支持高频率的写入的同时还要兼顾高频率的读取。
另外,数据安全也是非常重要的。在提供强大的读写能力的同时,数据库也需要保证数据的一致性和完整性。当出现故障导致服务器宕机甚至损毁时,需要保护或恢复数据,防止数据丢失。同时,还要有良好的扩展能力,以保证在数据迅速增加的情况下能够保存所有新增的数据,不至于因为容量不足而丢失数据。最后还要保证服务的持续性,在服务器出现故障的时候能够及时恢复,避免出现服务中断或者服务不可用的情况。
传统数据库一般部署在一台服务器上,在容量扩展时成本较高,并且无法应对宕机等故障。为了解决宕机等致命问题,保证数据不丢失,服务及时恢复,出现了将数据库备份的主从数据库***,进而出现了分布式数据库。而无论如何,要保证数据不丢失都需要多台服务器的协作,在多台服务器上保存相同的数据。为了保证数据的及时同步,保证服务器之间数据的一致性和完整性,需要引入分布式事务。
目前分布式事务主要有两种实现方式:
1).两阶段提交(2PC)
这种方式将分布式事务的执行过程分为两个阶段:准备阶段和提交阶段。
在准备阶段,每个服务器需要在本地执行分布式事务,然后写事务日志。
提交阶段,如果有任一服务器在准备阶段失败,则所有服务器都回滚分布式事务;如果所有服务器在准备阶段都成功,则所有服务器提交分布式事务。
这种方式的缺点是容错性低,必须所有服务器都成功才能成功提交,只要有服务器失败或故障都会导致分布式事务失败。
2).共识算法和多版本并发控制(MVCC)
共识算法(如Raft)要求服务器数量为奇数,分为leader节点和follower节点两类。只有被选为leader的一个节点才执行分布式事务,并将执行的操作封装成日志,然后通将日志同步给follower节点。follower节点根据日志解析数据并应用到本地,只要有一半的节点同步成功就可以提交。
共识算法保证了分布式事务的一致性,相对于两阶段提交效率更高,允许一半以内的服务器故障,具有更高的容错性。多版本并发控制可以保证分布式事务的隔离性,通过保存多个版本的数据,包括分布式事务正在执行尚未提交的数据,这些数据通过共识算法同步到每个节点,并持久化到磁盘,保证了其它分布式事务可以感知从而实现分布式事务间的隔离。同时,及时写入磁盘也保证了数据不丢失,确保发生故障可以及时恢复。
缺点是,每一步操作都需要写入磁盘,且其它分布式事务需要读取磁盘才能知道是否有冲突,IO次数较多,拖慢了执行速度。
基于上述情况,本发明提出了一种分布式事务的实现方法及***。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的分布式事务的实现方法及***。
本发明是通过如下技术方案实现的:
一种分布式事务的实现方法,其特征在于:采用常驻内存的分布式锁保存分布式事务处理过程中的数据,实现分布式事务的隔离性;所述分布式锁保存在常驻内存的锁表中,以便查找和修改;多个服务器节点之间通过共识算法实现数据和锁的同步,保证分布式事务的一致性;通过事务日志保证分布式事务的完整性和持久性;此外,为了降低IO次数,除了读取新值和最终提交以外,不对磁盘进行读写。
在分布式事务操作数据库时创建锁,用来记录分布式事务和数据信息,实现分布式事务的隔离性;具体过程如下:
第一步,分布式事务在操作数据库之前,先通过并发管理器检查操作类型并访问锁表,根据将要操作的数据的Key在锁表中查询,如果查询到对应的锁,并且该锁不是本事务持有,则阻塞等待,直到持有锁的分布式事务结束并释放锁;如果没有查询到对应的锁,或查询到对应的锁且该锁被本分布式事务持有,则继续执行本次操作;
第二步,分布式事务的本次操作执行完成后,将本次操作的数据的Key和Value传递给并发管理器;
第三步,并发管理器通过数据的Key,Value和分布式事务的ID创建锁对象,并在锁中保存数据的Key,Value和分布式事务信息;
第四步,并发管理器将新创建的锁添加到锁表中。
所述第一步中,创建锁表对象存放在内存中,所述锁表采用哈希表或者B+树的数据结构,用于存放锁。
所述第四步中,如果本分布式事务已经持有了将要操作的数据的Key上的锁,则并发管理器根据新锁的数据更新锁表中原有的锁;否则将新建的锁添加到锁表;
当分布式事务结束后,从锁表中删除分布式事务持有的锁,并通知等待该锁的分布式事务,使得被阻塞的分布式事务可以执行。
所述事务日志用于记录分布式事务对数据库做的改动,具体过程如下:
第一步,在分布式事务提交之前根据锁中保存的Key和Value获取最终操作结果,并根据最终操作结果构建事务日志,事务日志中包含分布式事务的最终操作结果;
第二步,根据先写日志原则,在数据写入磁盘之前先将事务日志写入磁盘;如果事务日志写入失败,则回滚分布式事务,清理内存;
第三步,事务日志写入成功之后,再将分布式事务的最终操作结果写入磁盘。
当在事务日志写入成功之后,服务器节点发生故障,导致最终操作结果未能写入磁盘或者数据库数据丢失时,通过事务日志进行恢复即可。
通过共识算法实现分布式事务的一致性,具体过程如下:
第一步,每次创建新的锁之前,通过共识算法将锁的信息同步给follower(追随)节点;
第二步,follower节点根据收到的锁的信息在本节点创建锁,follower节点的锁中同样包含数据的Key和Value,以及分布式事务信息;
第三步,在分布式事务提交之前通过共识算法通知follower节点;
第四步,follower节点在收到提交通知之后,在本节点执行提交流程,包括日志生成和写入磁盘。
所述共识算法采用Raft算法,通过共识算法同步操作结果给follower节点的过程如下:
第一步,分布式事务的一次操作执行成功之后,返回操作的数据的Key,Value以及分布式事务信息,再传递给Raft协议栈;
第二步,Raft协议栈将这接收到的数据封装成raft log,然后同步给follower节点;
第三步,超过一半数量的follower节点同步成功后,leader节点继续执行分布式事务;如果同步失败,leader节点则回滚分布式事务;
第四步,在分布式事务提交时,通过Raft协议栈通知follower节点,follower节点开始创建事务日志以及将事务日志和结果写入磁盘;
如果分布式事务提交之前leader节点故障,Raft协议将从follower节点中选出新的leader节点。
所述锁的信息是指分布式锁对应的数据Key,Value以及分布式事务信息。
基于本发明分布式事务的实现方法的***,,其特征在于:根据共识算法将分布式服务器节点分为leader节点和follower节点,所述follower节点作为leader节点的备用节点,分布式事务的所有操作由leader节点执行并通过共识算法同步到follower节点;
所述leader节点和follower节点中均设有锁表管理器和并发管理器;
所述锁表管理器由并发管理器维护,用于保存和管理所有分布式事务的锁的结构,通过数据的Key快速查找对应的锁,即可有效识别分布式事务之间是否冲突,从而实现分布式事务的隔离;
所述并发管理器用于创建和维护分布式锁和锁表管理器,并通过锁表管理器来管理分布式事务之间的并发关系。
本发明的有益效果是:该分布式事务的实现方法及***,采用将锁表、共识算法与事务日志相结合的方式,充分利用内存的性能优势,减少磁盘的读写操作,提高了分布式事务的执行效率,同时保证了分布式事务的安全性,满足了分布式事务的原子性、一致性、隔离性和持久性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1为本发明拥有多个服务器节点的分布式事务的架构示意图。
附图2为本发明leader节点分布式事务的处理流程示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明中的技术方案,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚,完整的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
该分布式事务的实现方法,采用常驻内存的分布式锁保存分布式事务处理过程中的数据,实现分布式事务的隔离性;所述分布式锁保存在常驻内存的锁表中,以便查找和修改;多个服务器节点之间通过共识算法实现数据和锁的同步,保证分布式事务的一致性;通过事务日志保证分布式事务的完整性和持久性;此外,为了降低IO次数,除了读取新值和最终提交以外,不对磁盘进行读写。
在分布式事务操作数据库时创建锁,用来记录分布式事务和数据信息,实现分布式事务的隔离性;具体过程如下:
第一步,分布式事务在操作数据库之前,先通过并发管理器检查操作类型并访问锁表,根据将要操作的数据的Key在锁表中查询,如果查询到对应的锁,并且该锁不是本事务持有,则阻塞等待,直到持有锁的分布式事务结束并释放锁;如果没有查询到对应的锁,或查询到对应的锁且该锁被本分布式事务持有,则继续执行本次操作;
第二步,分布式事务的本次操作执行完成后,将本次操作的数据的Key和Value传递给并发管理器;
第三步,并发管理器通过数据的Key,Value和分布式事务的ID创建锁对象,并在锁中保存数据的Key,Value和分布式事务信息;
第四步,并发管理器将新创建的锁添加到锁表中。
所述分布式事务对数据库的操作是指会修改数据库中数据的操作;所述Key是唯一标识数据库中的一行数据的ID;所述Value表示数据库中的一行数据。
所述第一步中,创建锁表对象存放在内存中,所述锁表采用哈希表或者B+树的数据结构,用于存放锁。
所述第四步中,如果本分布式事务已经持有了将要操作的数据的Key上的锁,则并发管理器根据新锁的数据更新锁表中原有的锁;否则将新建的锁添加到锁表;
当分布式事务结束后,从锁表中删除分布式事务持有的锁,并通知等待该锁的分布式事务,使得被阻塞的分布式事务可以执行。
分布式事务提交之前的操作结果都存放在内存中,不需要事务日志,只有在分布式事务将要提交的时候才需要生成事务日志并写入磁盘。
所述事务日志用于记录分布式事务对数据库做的改动,具体过程如下:
第一步,在分布式事务提交之前根据锁中保存的Key和Value获取最终操作结果,并根据最终操作结果构建事务日志,事务日志中包含分布式事务的最终操作结果;
第二步,根据先写日志原则,在数据写入磁盘之前先将事务日志写入磁盘;如果事务日志写入失败,则回滚分布式事务,清理内存;
第三步,事务日志写入成功之后,再将分布式事务的最终操作结果写入磁盘。
当在事务日志写入成功之后,服务器节点发生故障,导致最终操作结果未能写入磁盘或者数据库数据丢失时,通过事务日志进行恢复即可。因为事务日志中包含了完整的数据。
所述follower节点是指在共识算法中的概念,主要作用是备份数据和在leader节点故障后接替工作。将服务器节点分为leader节点和follower节点两类,leader节点有且只有一个,分布式事务的所有操作由leader节点执行并同步到follower节点。
通过共识算法实现分布式事务的一致性,具体过程如下:
第一步,每次创建新的锁之前,通过共识算法将锁的信息同步给follower(追随)节点;
第二步,follower节点根据收到的锁的信息在本节点创建锁,follower节点的锁中同样包含数据的Key和Value,以及分布式事务信息;
第三步,在分布式事务提交之前通过共识算法通知follower节点;
第四步,follower节点在收到提交通知之后,在本节点执行提交流程,包括日志生成和写入磁盘。
所述共识算法采用Raft算法,通过共识算法同步操作结果给follower节点的过程如下:
第一步,分布式事务的一次操作执行成功之后,返回操作的数据的Key,Value以及分布式事务信息,再传递给Raft协议栈;
第二步,Raft协议栈将这接收到的数据封装成raft log,然后同步给follower节点;
第三步,超过一半数量的follower节点同步成功后,leader节点继续执行分布式事务;如果同步失败,leader节点则回滚分布式事务;
第四步,在分布式事务提交时,通过Raft协议栈通知follower节点,follower节点开始创建事务日志以及将事务日志和结果写入磁盘;
如果分布式事务提交之前leader节点故障,Raft协议将从follower节点中选出新的leader节点。因为分布式事务之前的操作结果同步到了所有节点,所以数据不会丢失,分布式事务可以继续执行,有效提高了数据库的容错性。
所述锁的信息是指分布式锁对应的数据Key,Value以及分布式事务信息。所述锁的信息用于标识锁,也可以作为操作记录,在分布式事务需要回滚或者提交时使用。
基于该分布式事务的实现方法的***,根据共识算法将分布式服务器节点分为leader节点和follower节点,所述follower节点作为leader节点的备用节点,分布式事务的所有操作由leader节点执行并通过共识算法同步到follower节点;
所述leader节点和follower节点中均设有锁表管理器和并发管理器;
所述锁表管理器由并发管理器维护,用于保存和管理所有分布式事务的锁的结构,通过数据的Key快速查找对应的锁,即可有效识别分布式事务之间是否冲突,从而实现分布式事务的隔离;
所述并发管理器用于创建和维护分布式锁和锁表管理器,并通过锁表管理器来管理分布式事务之间的并发关系。
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。
Claims (9)
1.一种分布式事务的实现方法,其特征在于:采用常驻内存的分布式锁保存分布式事务处理过程中的数据,实现分布式事务的隔离性;所述分布式锁保存在常驻内存的锁表中,以便查找和修改;多个服务器节点之间通过共识算法实现数据和锁的同步,保证分布式事务的一致性;通过事务日志保证分布式事务的完整性和持久性;此外,为了降低IO次数,除了读取新值和最终提交以外,不对磁盘进行读写。
2.根据权利要求1所述的分布式事务的实现方法,其特征在于:在分布式事务操作数据库时创建锁,用来记录分布式事务和数据信息,实现分布式事务的隔离性;具体过程如下:
第一步,分布式事务在操作数据库之前,先通过并发管理器检查操作类型并访问锁表,根据将要操作的数据的Key在锁表中查询,如果查询到对应的锁,并且该锁不是本事务持有,则阻塞等待,直到持有锁的分布式事务结束并释放锁;如果没有查询到对应的锁,或查询到对应的锁且该锁被本分布式事务持有,则继续执行本次操作;
第二步,分布式事务的本次操作执行完成后,将本次操作的数据的Key和Value传递给并发管理器;
第三步,并发管理器通过数据的Key,Value和分布式事务的ID创建锁对象,并在锁中保存数据的Key,Value和分布式事务信息;
第四步,并发管理器将新创建的锁添加到锁表中。
3.根据权利要求2所述的分布式事务的实现方法,其特征在于:所述第一步中,创建锁表对象存放在内存中,所述锁表采用哈希表或者B+树的数据结构,用于存放锁。
4.根据权利要求2所述的分布式事务的实现方法,其特征在于:所述第四步中,如果本分布式事务已经持有了将要操作的数据的Key上的锁,则并发管理器根据新锁的数据更新锁表中原有的锁;否则将新建的锁添加到锁表;
当分布式事务结束后,从锁表中删除分布式事务持有的锁,并通知等待该锁的分布式事务,使得被阻塞的分布式事务可以执行。
5.根据权利要求1所述的分布式事务的实现方法,其特征在于:所述事务日志用于记录分布式事务对数据库做的改动,具体过程如下:
第一步,在分布式事务提交之前根据锁中保存的Key和Value获取最终操作结果,并根据最终操作结果构建事务日志,事务日志中包含分布式事务的最终操作结果;
第二步,根据先写日志原则,在数据写入磁盘之前先将事务日志写入磁盘;如果事务日志写入失败,则回滚分布式事务,清理内存;
第三步,事务日志写入成功之后,再将分布式事务的最终操作结果写入磁盘;
当在事务日志写入成功之后,服务器节点发生故障,导致最终操作结果未能写入磁盘或者数据库数据丢失时,通过事务日志进行恢复即可。
6.根据权利要求1或2所述的分布式事务的实现方法,其特征在于:通过共识算法实现分布式事务的一致性,具体过程如下:
第一步,每次创建新的锁之前,通过共识算法将锁的信息同步给follower节点;
第二步,follower节点根据收到的锁的信息在本节点创建锁,follower节点的锁中同样包含数据的Key和Value,以及分布式事务信息;
第三步,在分布式事务提交之前通过共识算法通知follower节点;
第四步,follower节点在收到提交通知之后,在本节点执行提交流程,包括日志生成和写入磁盘。
7.根据权利要求6所述的分布式事务的实现方法,其特征在于:所述锁的信息是指分布式锁对应的数据Key,Value以及分布式事务信息。
8.根据权利要求6所述的分布式事务的实现方法,其特征在于:所述共识算法采用Raft算法,通过共识算法同步操作结果给follower节点的过程如下:
第一步,分布式事务的一次操作执行成功之后,返回操作的数据的Key,Value以及分布式事务信息,再传递给Raft协议栈;
第二步,Raft协议栈将这接收到的数据封装成raft log,然后同步给follower节点;
第三步,超过一半数量的follower节点同步成功后,leader节点继续执行分布式事务;如果同步失败,leader节点则回滚分布式事务;
第四步,在分布式事务提交时,通过Raft协议栈通知follower节点,follower节点开始创建事务日志以及将事务日志和结果写入磁盘;
如果分布式事务提交之前leader节点故障,Raft协议将从follower节点中选出新的leader节点。
9.一种基于权利要求1~8所述的分布式事务的实现方法的***,其特征在于:根据共识算法将分布式服务器节点分为leader节点和follower节点,所述follower节点作为leader节点的备用节点,分布式事务的所有操作由leader节点执行并通过共识算法同步到follower节点;
所述leader节点和follower节点中均设有锁表管理器和并发管理器;
所述锁表管理器由并发管理器维护,用于保存和管理所有分布式事务的锁的结构,通过数据的Key快速查找对应的锁,即可有效识别分布式事务之间是否冲突,从而实现分布式事务的隔离;
所述并发管理器用于创建和维护分布式锁和锁表管理器,并通过锁表管理器来管理分布式事务之间的并发关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111570290.XA CN114238353A (zh) | 2021-12-21 | 2021-12-21 | 一种分布式事务的实现方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111570290.XA CN114238353A (zh) | 2021-12-21 | 2021-12-21 | 一种分布式事务的实现方法及*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114238353A true CN114238353A (zh) | 2022-03-25 |
Family
ID=80760186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111570290.XA Pending CN114238353A (zh) | 2021-12-21 | 2021-12-21 | 一种分布式事务的实现方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114238353A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116225724A (zh) * | 2023-05-09 | 2023-06-06 | 云筑信息科技(成都)有限公司 | 一种基于内存实现分布式重试调度的方法 |
CN117435574A (zh) * | 2023-12-21 | 2024-01-23 | 北京大道云行科技有限公司 | 改进的二阶段提交事务实现方法及***、设备、存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706811A (zh) * | 2009-11-24 | 2010-05-12 | 中国科学院软件研究所 | 一种分布式数据库***事务提交方法 |
KR101296778B1 (ko) * | 2012-09-18 | 2013-08-14 | (주)카디날정보기술 | NoSQL 데이터베이스를 위한 결과적 트랜잭션 처리 방법 |
CN106033437A (zh) * | 2015-03-13 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 一种分布式事务处理方法及*** |
US9904722B1 (en) * | 2015-03-13 | 2018-02-27 | Amazon Technologies, Inc. | Log-based distributed transaction management |
US20180232412A1 (en) * | 2017-02-10 | 2018-08-16 | Sap Se | Transaction commit protocol with recoverable commit identifier |
US20180276269A1 (en) * | 2015-01-27 | 2018-09-27 | Clusterpoint Group Limited | Transaction processing in distributed database management system |
CN112241400A (zh) * | 2020-10-21 | 2021-01-19 | 衡阳云汇科技有限公司 | 一种基于数据库实现分布式锁的方法 |
CN113391885A (zh) * | 2021-06-18 | 2021-09-14 | 电子科技大学 | 一种分布式事务处理*** |
-
2021
- 2021-12-21 CN CN202111570290.XA patent/CN114238353A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101706811A (zh) * | 2009-11-24 | 2010-05-12 | 中国科学院软件研究所 | 一种分布式数据库***事务提交方法 |
KR101296778B1 (ko) * | 2012-09-18 | 2013-08-14 | (주)카디날정보기술 | NoSQL 데이터베이스를 위한 결과적 트랜잭션 처리 방법 |
US20180276269A1 (en) * | 2015-01-27 | 2018-09-27 | Clusterpoint Group Limited | Transaction processing in distributed database management system |
CN106033437A (zh) * | 2015-03-13 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 一种分布式事务处理方法及*** |
US9904722B1 (en) * | 2015-03-13 | 2018-02-27 | Amazon Technologies, Inc. | Log-based distributed transaction management |
US20180232412A1 (en) * | 2017-02-10 | 2018-08-16 | Sap Se | Transaction commit protocol with recoverable commit identifier |
CN112241400A (zh) * | 2020-10-21 | 2021-01-19 | 衡阳云汇科技有限公司 | 一种基于数据库实现分布式锁的方法 |
CN113391885A (zh) * | 2021-06-18 | 2021-09-14 | 电子科技大学 | 一种分布式事务处理*** |
Non-Patent Citations (1)
Title |
---|
许海洋 等: "分布式事务两阶段提交协议的实现方法研究", 《信息技术与信息化》, no. 02, 15 April 2011 (2011-04-15), pages 72 - 75 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116225724A (zh) * | 2023-05-09 | 2023-06-06 | 云筑信息科技(成都)有限公司 | 一种基于内存实现分布式重试调度的方法 |
CN116225724B (zh) * | 2023-05-09 | 2023-08-22 | 云筑信息科技(成都)有限公司 | 一种基于内存实现分布式重试调度的方法 |
CN117435574A (zh) * | 2023-12-21 | 2024-01-23 | 北京大道云行科技有限公司 | 改进的二阶段提交事务实现方法及***、设备、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7330859B2 (en) | Database backup system using data and user-defined routines replicators for maintaining a copy of database on a secondary server | |
US10949415B2 (en) | Logging system using persistent memory | |
US7779295B1 (en) | Method and apparatus for creating and using persistent images of distributed shared memory segments and in-memory checkpoints | |
CN101567805B (zh) | 并行文件***发生故障后的恢复方法 | |
CN102024016B (zh) | 一种分布式文件***快速数据恢复的方法 | |
US20120246116A1 (en) | System and method for data replication between heterogeneous databases | |
US8099627B1 (en) | Persistent images of distributed shared memory segments and in-memory checkpoints | |
JP2019036353A (ja) | 索引更新パイプライン | |
CN111858629B (zh) | 二阶段提交分布式事务更新数据库的实现方法和装置 | |
CN109992628B (zh) | 数据同步的方法、装置、服务器及计算机可读存储介质 | |
CN114238353A (zh) | 一种分布式事务的实现方法及*** | |
CN109582686B (zh) | 分布式元数据管理一致性保证方法、装置、***及应用 | |
US20090063807A1 (en) | Data redistribution in shared nothing architecture | |
CN102955720A (zh) | 一种提高ext文件***稳定性的方法 | |
US9430551B1 (en) | Mirror resynchronization of bulk load and append-only tables during online transactions for better repair time to high availability in databases | |
US20130290283A1 (en) | Scm-conscious transactional key-value store | |
WO2013138774A1 (en) | Systems and methods for supporting transaction recovery based on a strict ordering of two-phase commit calls | |
US20120278429A1 (en) | Cluster system, synchronization controlling method, server, and synchronization controlling program | |
CN109684338A (zh) | 一种存储***的数据更新方法 | |
CN115794499B (zh) | 一种用于分布式块存储集群间双活复制数据的方法和*** | |
CN113377582B (zh) | 基于日志推送的分布式数据库容灾方法 | |
CN110196788B (zh) | 一种数据读取方法、装置、***及存储介质 | |
CN114385755A (zh) | 一种分布式存储*** | |
CN113905054A (zh) | 基于RDMA的Kudu集群数据同步方法、装置、*** | |
CN115658245B (zh) | 一种基于分布式数据库***的事务提交***、方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221202 Address after: Room 305-22, Building 2, No. 1158 Zhangdong Road and No. 1059 Dangui Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, 200120 Applicant after: Shanghai Yunxi Technology Co.,Ltd. Address before: Building S02, 1036 Gaoxin Langchao Road, Jinan, Shandong 250100 Applicant before: Shandong Inspur Scientific Research Institute Co.,Ltd. |
|
TA01 | Transfer of patent application right |