WO2022257719A1 - 数据库事务处理的方法、系统、电子设备及存储介质 - Google Patents

数据库事务处理的方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
WO2022257719A1
WO2022257719A1 PCT/CN2022/093816 CN2022093816W WO2022257719A1 WO 2022257719 A1 WO2022257719 A1 WO 2022257719A1 CN 2022093816 W CN2022093816 W CN 2022093816W WO 2022257719 A1 WO2022257719 A1 WO 2022257719A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
copy
context
slave
database transaction
Prior art date
Application number
PCT/CN2022/093816
Other languages
English (en)
French (fr)
Inventor
肖金亮
高山岩
韩富晟
Original Assignee
北京奥星贝斯科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京奥星贝斯科技有限公司 filed Critical 北京奥星贝斯科技有限公司
Publication of WO2022257719A1 publication Critical patent/WO2022257719A1/zh
Priority to US18/521,723 priority Critical patent/US20240104089A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24561Intermediate data storage techniques for performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries

Definitions

  • a distributed relational database system usually consists of multiple nodes, and the nodes are connected through a network.
  • Each node can be a server, and the server can be used to store data.
  • data usually includes multiple copies, and different copies can be stored in different servers to ensure data security and provide highly available data services.
  • Figure 1 is an architecture diagram of a possible distributed relational database system. It can be seen that a distributed relational database system includes multiple availability zones (Zones), and Figure 1 shows three availability zones, respectively are Zone-1, Zone-2 and Zone-3.
  • Each Availability Zone can include multiple servers.
  • an availability zone may correspond to a computer room, and the multiple servers in the availability zone may be multiple servers in the computer room.
  • the first server before the first server switches the master copy stored by itself to a slave copy, it can first record the context of the database transaction currently being executed, and send the context to the second server, and After the second server switches the slave copy stored by itself to the master copy, it can continue to execute the unfinished database transaction according to the context sent by the first server, and the database transaction does not need to be rolled back, thereby improving the execution efficiency of the database transaction.
  • the third server can obtain the upgrade or maintenance plan of the server, and when it is determined according to the upgrade or maintenance plan that the first server will be upgraded or maintained, it can send a switching instruction to the first server to notify the first server
  • the server performs a master-slave switch. After the first server completes the master-slave switchover of the replica, it can upgrade or maintain the first server.
  • the remaining execution duration can be calculated according to the number of currently executing database transactions and the average execution time corresponding to the database transactions.
  • the remaining unexecuted statements of the currently executing database transaction can be obtained, and the remaining execution duration corresponding to the database transaction can be determined according to the number of unexecuted statements and the average execution time required for a single statement.

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)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种数据库事务处理的方法。该方法包括:第一服务器在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文,并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本(202);所述第二服务器将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行(204)。该方法可以提高数据库事务的执行效率。

Description

数据库事务处理的方法、系统、电子设备及存储介质 技术领域
本说明书一个或多个实施例涉及数据库技术领域,尤其涉及数据库事务处理的方法、系统、电子设备及存储介质。
背景技术
在分布式关系型数据库系统中,数据通常包括多个副本,不同的副本可以存储在不同的服务器中。数据的多个副本中包括一个主副本和至少一个从副本,当主副本所在的服务器在将其存储的主副本切换为从副本时,可能存在某些数据库事务还处于执行过程中,若在这些数据库事务的执行过程中进行了主从切换,则这些未执行完的数据库事务只能回滚,即需要重新执行,导致数据库事务的执行效率降低。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种数据库事务处理的方法、系统、电子设备及存储介质,可以提高数据库事务的执行效率。
为实现上述目的,根据本说明书一个或多个实施例的第一方面,提出了一种数据库事务处理方法,包括:第一服务器在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文,并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本;所述第二服务器将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行。
根据本说明书一个或多个实施例的第二方面,提出了一种数据库事务处理系统,包括:第一服务器,用于在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文,并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本;所述第二服务器,用于将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行。
根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令实现以下步骤:在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文;将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本,以便于所述第二 服务器在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
根据本说明书一个或多个实施例的第四方面,提出了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器通过运行所述可执行指令实现以下步骤:获取第一服务器发送的数据库事务的上下文;在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
根据本说明书一个或多个实施例的第五方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现以下步骤:在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文;将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本,以便于所述第二服务器在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
根据本说明书一个或多个实施例的第六方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现以下步骤:获取第一服务器发送的数据库事务的上下文;在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
本说明书实施例提供的数据库事务处理方法,第一服务器在将自身存储的主副本切换为从副本之前,可以先记录当前正在执行的数据库事务的上下文,并将该上下文发送给第二服务器,而第二服务器在将自身存储的从副本切换为主副本后,可以根据第一服务器发送的上下文继续执行之前未执行完的数据库事务,数据库事务无需回滚,从而提高了数据库事务的执行效率。
附图说明
图1是一种可能的分布式关系型数据库系统的架构图。
图2是本说明书实施例提供的一种数据库事务处理方法的流程图。
图3是本说明书实施例提供的主从副本切换的场景示意图。
图4是本说明书实施例提供的数据库事务处理系统的结构示意图。
图5是本说明书实施例提供的电子设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
分布式关系型数据库系统通常由多个节点构成,节点和节点之间通过网络进行连接,每个节点可以是一台服务器,服务器可以用于存储数据。在分布式关系型数据库系统中,数据通常包括多个副本,不同的副本可以存储在不同的服务器中,以保证数据安全和提供高可用的数据服务。可以参考图1,图1是一种可能的分布式关系型数据库系统的架构图,可见,分布式关系型数据库系统中包括多个可用区(Zone),图1示出三个可用区,分别是Zone-1,Zone-2和Zone-3。每个可用区可以包括多台服务器。这里,一个可用区可以对应一个机房,可用区内的多台服务器可以是该机房内的多台服务器。
数据的多个副本中包括一个主副本,主副本可以提供写服务,即主副本所在的服务器可以对数据进行修改。主副本以外的其它副本均为从副本,从副本不能提供写服务,即从副本所在的服务器仅能对数据进行读取,而无法对数据进行修改。
在一些情况中,需要进行副本的主从切换。所谓副本的主从切换,即将原来的主副本切换为从副本,将某个从副本切换为新的主副本。主副本所在的服务器在将其存储的主副本切换为从副本之前,可能存在某些数据库事务还处于执行过程中,若在这些数据库事务的执行过程中进行了主从切换,则这些未执行完的数据库事务只能回滚,即需要重新执行,导致数据库事务的执行效率降低。
为解决上述问题,本说明书实施例提供了一种数据库事务处理方法,可以参见图2,图2是本说明书实施例提供的一种数据库事务处理方法的流程图,该方法包括:步骤202、第一服务器在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文, 并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本。
步骤204、第二服务器将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行。
如前所述,一个数据可以包括多个副本,不同的副本存储在不同的服务器中。数据的多个副本中包括一个主副本和至少一个从副本,这里可以将存储的副本是主副本的服务器称为第一服务器,将存储的副本是从副本的任一服务器称为第二服务器。
由于主副本提供写服务,备副本不提供写服务,因此必须保证存储主副本的服务器能够正常运行,以使数据修改的服务能够稳定提供。通过切换主从副本,可以改变存储主副本的服务器,是保障数据修改服务稳定提供的有效手段。例如,在一个例子中,若存储主副本的服务器的负载水平过高,比如其CPU、内存、硬盘等的资源利用率接近上限,则为了保证写服务的正常提供,可以变更存储主副本的服务器,此时即需要进行主从副本的切换。在一个例子中,若存储主副本的服务器按照计划需要进行升级或维护,无法继续提供服务,则也需要变更存储主副本的服务器。可以参考图3,图3是主从副本切换的场景示意图。
数据库事务是访问并可能操作各种数据项的一个数据库操作序列,一个数据库事务中可以包含多条待执行的语句,第一服务器可以处理数据库事务,即可以执行数据库事务中的语句。当第一服务器在确定要进行副本的主从切换时,第一服务器可能正在执行一个或多个数据库事务,此时,第一服务器可以在实际进行切换之前,停止执行未完成的数据库事务,先记录当前正在执行的数据库事务的上下文,并将该数据库事务的上下文发送给第二服务器。在完成上下文的记录和发送后,第一服务器可以将自身存储的主副本切换为从副本。
第二服务器是被指定为新的用于存储主副本的服务器,其在第一服务器将自身存储的主副本切换为从副本后,可以将自身存储的从副本切换为主副本。而在完成切换后,第二服务器可以根据第一服务器记录的数据库事务的上下文,继续执行第一服务器在主从切换前未执行完毕的数据库事务,而无需将数据库事务回滚,从而提高数据库事务的处理效率。
本说明书实施例提供的数据库事务处理方法,第一服务器在将自身存储的主副本切换为从副本之前,可以先记录当前正在执行的数据库事务的上下文,并将该上下文发送给第二服务器,而第二服务器在将自身存储的从副本切换为主副本后,可以根据第一服 务器发送的上下文继续执行之前未执行完的数据库事务,数据库事务无需回滚,从而提高了数据库事务的执行效率。
需要注意的是,在相关技术中,数据库事务具有原子性(Atomicity),即数据库事务中的全部操作是不可分割的,这些操作要么全部执行,要么全部不执行。而本说明书实施例,在进行副本的主从切换时,对切换前未完成的数据库事务并不进行回滚,而是由新的存储主副本的服务器继续执行,这一定程度上将数据库事务中的操作分割成由不同主体执行的两部分,数据库事务中的前部分语句可以是第一服务器执行的,数据库事务中的后部分语句可以是第二服务器执行的。然而,虽然将数据库事务交由不同主体执行,但数据库事务仍然满足原子性,因为数据库事务仍然满足要不全部执行、要不全部不执行的要求,只是执行的时候并不只是全部由同一个服务器执行。
在一种实施方式中,第一服务器可以同时执行多个数据库事务,当第一服务器确定需要进行副本的主从切换后,第一服务器可以停止开启新的数据库事务,并停止执行当前正在执行的数据库事务中的新语句。
第一服务器在确定是否进行副本的主从切换时,可以有多种方式。在一种实施方式中,第一服务器可以根据第三服务器的指示确定是否需要进行副本的主从切换。这里,第三服务器可以是第一服务器以外的任一服务器,在一个例子中,第三服务器可以是用于管理数据库集群的服务器,其上可以安装有数据库集群的管控软件。
在一种实施方式中,第三服务器可以监测第一服务器的负载水平,例如可以监测第一服务器的CPU的利用率、内存的占用率等。当第三服务器确定第一服务器的负载水平达到预设的负载水平线时,可以认为第一服务器已经无法可靠的提供数据的写服务,此时,第三服务器可以发送切换指令给第一服务器,以通知第一服务器进行主从切换。
在一种实施方式中,第三服务器可以获取服务器的升级或维护计划,当根据升级或维护计划确定即将对第一服务器进行升级或维护时,可以发送切换指令给第一服务器,以通知第一服务器进行主从切换。第一服务器在完成副本的主从切换后,可以对第一服务器进行升级或维护。
在上述实施方式中,第一服务器是根据第三服务器的指示确定是否需要进行副本的主从切换的,但可以理解的,第一服务器也可以自己判断是否需要进行主从切换。例如,第一服务器可以获取自身的负载水平,根据自身的负载水平判断是否需要进行副本的主从切换。又比如,第一服务器可以获取服务器的升级或维护计划,根据服务器的升级或 维护计划自动在合适的时间发起副本的主从切换。
第二服务器在确定要将自身存储的从副本切换为主副本时,在一种实施方式中,可以根据第三服务器的指示确定,比如第三服务器可以在给第一服务器发送切换指令的同时,给第二服务器也发送切换指令,从而第二服务器可以根据接收到的切换指令进行副本的主从切换。在一种实施方式中,第二服务器也可以是根据第一服务器的指示确定要将自身存储的从副本切换为主副本的。
数据库事务的上下文可以记录该数据库事务被执行到当前位置时服务器的状态,第二服务器根据该数据库事务的上下文,可以从第一服务器的执行断点继续该数据库事务的执行。在一个例子中,数据库事务的上下文可以包括该数据库事务对应的待操作的数据和状态机。
由于第一服务器可以同时执行多个数据库事务,若第一服务器在确定进行副本的主从切换时有多个数据库事务正在执行,则第一服务器需要记录该多个数据库事务的上下文,并将该多个数据库的上下文发送给第二服务器,这一定程度上增加了对服务器的带宽需求。因此,在一种实施方式中,第一服务器在确定进行副本的主从切换后,可以先不停止数据库事务的执行,而是可以继续执行数据库事务预设时长。如此,在预设时长后,将有部分所需执行时间较短的数据库事务完成执行,从而这些完成执行的数据库事务不再需要记录对应的上下文,减少了要传输的数据量。
在一种实施方式中,所述预设时长可以是自适应更新的。具体的,第一服务器在确定进行副本的主从切换后,可以预估当前正在执行的数据库事务对应的剩余执行时长,若该剩余执行时长小于所述预设时长,则可以将所述预设时长更新为所述剩余执行时长,从而第一服务器可以等待较短的时间,从而更快的进行主从切换;相应的,若该剩余执行时长大于所述预设时长,则预设时长仍然可以是原值,不需要进行更新。
在一种实施方式中,第一服务器在确定进行副本的主从切换后,可以预估当前正在执行的数据库事务对应的剩余执行时长,若该剩余执行时长小于预设的时长阈值,则第一服务器可以在剩余执行时长后进行副本的主备切换,若该剩余执行时长大于预设的时长阈值,则第一服务器可以不进行等待,即可以停止所有的执行行为,直接记录当前执行的数据库事务的上下文,将自身存储的主副本切换为从副本。由于剩余执行时长大于预设的时长阈值意味着第一服务器需要等待较长的时间才可能将当前正在执行的数据库事务完成,而第一服务器等待的时间越久,主副本提供写服务的可靠性越低,因此,在第一服务器需要等待的时间大于预设的时长阈值时,可以不进行等待,以保证主副本 的写服务的可靠性。
在预估当前正在执行的数据库事务对应的剩余执行时长时,可以有多种实施方式。在一种实施方式中,可以根据当前正在执行的数据库事务的数量以及数据库事务对应的平均执行时间计算得到剩余执行时长。在一种实施方式中,可以获取当前正在执行的数据库事务剩余的未执行语句,并根据未执行语句的数量和单条语句执行所需的平均时长,可以确定数据库事务对应的剩余执行时长。
在一种实施方式中,第一服务器在发送所述上下文给第二服务器时,第一服务器可以将所述上下文同步到各个存储的副本是从副本的服务器,从而其中的第二服务器在完成从副本到主副本的切换后,可以根据所述上下文继续数据库事务的执行。
本说明书实施例提供的数据库事务处理方法,第一服务器在将自身存储的主副本切换为从副本之前,可以先记录当前正在执行的数据库事务的上下文,并将该上下文发送给第二服务器,而第二服务器在将自身存储的从副本切换为主副本后,可以根据第一服务器发送的上下文继续执行之前未执行完的数据库事务,数据库事务无需回滚,从而提高了数据库事务的执行效率。
本说明书实施例还提供了一种数据库事务处理系统,可以参考图4,图4是本说明书实施例提供的数据库事务处理系统的结构示意图,该系统包括:第一服务器410,用于在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文,并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本;第二服务器420,用于将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行。
本说明书实施例提供的数据库事务处理系统,其对应的其他实施方式可以参考前文的数据库事务处理方法的各种实施方式,在此不再赘述。
本说明书实施例提供的数据库事务处理系统,第一服务器在将自身存储的主副本切换为从副本之前,可以先记录当前正在执行的数据库事务的上下文,并将该上下文发送给第二服务器,而第二服务器在将自身存储的从副本切换为主副本后,可以根据第一服务器发送的上下文继续执行之前未执行完的数据库事务,数据库事务无需回滚,从而提高了数据库事务的执行效率。
本说明书实施例还提供了一种电子设备,可以参考图5,图5是本说明书实施例提供的电子设备的结构示意图,该电子设备包括:处理器510;用于存储处理器可执行指 令的存储器520;其中,所述处理器通过运行所述可执行指令实现以下步骤:在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文;将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本,以便于所述第二服务器在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
本说明书实施例提供的电子设备,可以实现前文中的第一服务器所执行的任意步骤,由于在前文已对这些步骤、动作进行了详细说明,因此不在此赘述。
本说明书实施例提供的电子设备,第一服务器在将自身存储的主副本切换为从副本之前,可以先记录当前正在执行的数据库事务的上下文,并将该上下文发送给第二服务器,而第二服务器在将自身存储的从副本切换为主副本后,可以根据第一服务器发送的上下文继续执行之前未执行完的数据库事务,数据库事务无需回滚,从而提高了数据库事务的执行效率。
本说明书实施例还提供了一种电子设备,其结构如图5所示,该电子设备的处理器可以实现以下步骤:获取第一服务器发送的数据库事务的上下文;在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
本说明书实施例提供的电子设备,可以实现前文中的第二服务器所执行的任意步骤,由于在前文已对这些步骤、动作进行了详细说明,因此不在此赘述。
本说明书实施例提供的电子设备,第一服务器在将自身存储的主副本切换为从副本之前,可以先记录当前正在执行的数据库事务的上下文,并将该上下文发送给第二服务器,而第二服务器在将自身存储的从副本切换为主副本后,可以根据第一服务器发送的上下文继续执行之前未执行完的数据库事务,数据库事务无需回滚,从而提高了数据库事务的执行效率。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现以下步骤:在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文;将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本,以便于所述第二服务器在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现以下步骤:获取第一服务器发送的数据库事务的上下文;在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

Claims (12)

  1. 一种数据库事务处理方法,其特征在于,包括:
    第一服务器在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文,并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本;
    所述第二服务器将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述第一服务器在确定进行副本的主从切换后,停止开启新的数据库事务,并停止执行当前正在执行的数据库事务中的新语句。
  3. 根据权利要求1所述的方法,其特征在于,所述第一服务器是根据接收到的切换指令确定进行副本的主从切换的,所述切换指令是第三服务器发送给第一服务器的。
  4. 根据权利要求3所述的方法,其特征在于,所述切换指令是所述第三服务器是根据所述第一服务器的负载水平生成的。
  5. 根据权利要求3所述的方法,其特征在于,所述切换指令是所述第三服务器根据服务器的升级或维护计划生成的。
  6. 根据权利要求1所述的方法,其特征在于,所述第一服务器将自身存储的主副本切换为从副本,包括:
    所述第一服务器在预设时长后将自身存储的主副本切换为从副本。
  7. 根据权利要求1所述的方法,其特征在于,所述上下文包括当前正在执行的数据库事务对应的待操作的数据和状态机。
  8. 一种数据库事务处理系统,其特征在于,包括:
    第一服务器,用于在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文,并将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本;
    所述第二服务器,用于将自身存储的从副本切换为主副本,并在切换完成后,根据所述上下文继续所述数据库事务的执行。
  9. 一种电子设备,其特征在于,包括:
    处理器;
    用于存储处理器可执行指令的存储器;
    其中,所述处理器通过运行所述可执行指令实现以下步骤:
    在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文;
    将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本,以便于所述 第二服务器在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
  10. 一种电子设备,其特征在于,包括:
    处理器;
    用于存储处理器可执行指令的存储器;
    其中,所述处理器通过运行所述可执行指令实现以下步骤:
    获取第一服务器发送的数据库事务的上下文;
    在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
  11. 一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现以下步骤:
    在确定进行副本的主从切换后,记录当前正在执行的数据库事务的上下文;
    将所述上下文发送给第二服务器,将自身存储的主副本切换为从副本,以便于所述第二服务器在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
  12. 一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现以下步骤:
    获取第一服务器发送的数据库事务的上下文;
    在将自身存储的从副本切换为主副本后,根据所述上下文继续所述数据库事务的执行。
PCT/CN2022/093816 2021-06-09 2022-05-19 数据库事务处理的方法、系统、电子设备及存储介质 WO2022257719A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/521,723 US20240104089A1 (en) 2021-06-09 2023-11-28 Methods, systems, electronic devices, and storage media for database transaction processing

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110642105.7A CN113254536A (zh) 2021-06-09 2021-06-09 数据库事务处理方法、系统、电子设备及存储介质
CN202110642105.7 2021-06-09

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/521,723 Continuation US20240104089A1 (en) 2021-06-09 2023-11-28 Methods, systems, electronic devices, and storage media for database transaction processing

Publications (1)

Publication Number Publication Date
WO2022257719A1 true WO2022257719A1 (zh) 2022-12-15

Family

ID=77187227

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/093816 WO2022257719A1 (zh) 2021-06-09 2022-05-19 数据库事务处理的方法、系统、电子设备及存储介质

Country Status (3)

Country Link
US (1) US20240104089A1 (zh)
CN (1) CN113254536A (zh)
WO (1) WO2022257719A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113254536A (zh) * 2021-06-09 2021-08-13 蚂蚁金服(杭州)网络技术有限公司 数据库事务处理方法、系统、电子设备及存储介质
CN114443768A (zh) * 2022-01-27 2022-05-06 中国银联股份有限公司 分布式数据库的主备切换方法、装置及可读存储介质
CN117370078B (zh) * 2023-10-31 2024-05-28 广州鼎甲计算机科技有限公司 数据库备份管理方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003186722A (ja) * 2001-12-20 2003-07-04 Hitachi Software Eng Co Ltd クラスタシステムにおけるデータベースサーバフェイルオーバー方法
CN102737088A (zh) * 2011-03-18 2012-10-17 微软公司 分布式数据库系统中的无缝升级
CN103793296A (zh) * 2014-01-07 2014-05-14 浪潮电子信息产业股份有限公司 一种在集群中用于辅助备份复制计算机系统的方法
CN105122260A (zh) * 2013-03-14 2015-12-02 英特尔公司 到安全操作系统环境的基于上下文的切换
CN109936481A (zh) * 2019-03-22 2019-06-25 北京达佳互联信息技术有限公司 主从服务器切换方法、装置、电子设备及存储介质
CN113254536A (zh) * 2021-06-09 2021-08-13 蚂蚁金服(杭州)网络技术有限公司 数据库事务处理方法、系统、电子设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108984569A (zh) * 2017-06-05 2018-12-11 中兴通讯股份有限公司 数据库切换方法、系统和计算机可读存储介质
CN112346912A (zh) * 2020-12-01 2021-02-09 成都精灵云科技有限公司 基于网络文件系统的有状态服务主备高可用系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003186722A (ja) * 2001-12-20 2003-07-04 Hitachi Software Eng Co Ltd クラスタシステムにおけるデータベースサーバフェイルオーバー方法
CN102737088A (zh) * 2011-03-18 2012-10-17 微软公司 分布式数据库系统中的无缝升级
CN105122260A (zh) * 2013-03-14 2015-12-02 英特尔公司 到安全操作系统环境的基于上下文的切换
CN103793296A (zh) * 2014-01-07 2014-05-14 浪潮电子信息产业股份有限公司 一种在集群中用于辅助备份复制计算机系统的方法
CN109936481A (zh) * 2019-03-22 2019-06-25 北京达佳互联信息技术有限公司 主从服务器切换方法、装置、电子设备及存储介质
CN113254536A (zh) * 2021-06-09 2021-08-13 蚂蚁金服(杭州)网络技术有限公司 数据库事务处理方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
US20240104089A1 (en) 2024-03-28
CN113254536A (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
WO2022257719A1 (zh) 数据库事务处理的方法、系统、电子设备及存储介质
US10691187B2 (en) Persistent reservations for virtual disk using multiple targets
US8612705B2 (en) Making a physical copy of data at a remote storage device
US7788453B2 (en) Redirection of storage access requests based on determining whether write caching is enabled
US20190197028A1 (en) Database management system with database hibernation and bursting
US7836162B2 (en) Transaction processing system and transaction processing method
JPH04299748A (ja) ファイルの管理方法及び装置
CN103443773A (zh) 利用多个存储设备减少数据库录入的写延迟的方法和系统
JP2710190B2 (ja) データ辞書の同期化を調整するための方法および装置
CN101441582A (zh) 计算机数据对象的备份和恢复方法及实现该方法的系统和程序产品
US8271968B2 (en) System and method for transparent hard disk drive update
JP2006134323A (ja) ストレージシステムにおける遠隔コピーオペレーションに対するサービスの質
JP2006260355A (ja) ストレージシステム及び記憶制御方法
US20100023532A1 (en) Remote file system, terminal device, and server device
JP2007241486A (ja) 記憶装置システム
JP2014523010A (ja) ストレージ装置とそのメモリ制御方法
US20090083501A1 (en) Cancellation of individual logical volumes in premigration chains
US20170235781A1 (en) Method, server and computer program stored in computer readable medium for managing log data in database
JPH0944461A (ja) 疎結合並列処理環境においてapiスタート及びキャンセルトランザクション機能を有する顧客情報制御システム及び方法
JP6665892B2 (ja) 情報処理システム,情報処理装置および制御プログラム
US20090083346A1 (en) Cancellation of individual logical volumes in premigration chains
US20070061530A1 (en) Method for storage of digital data in a mainframe data center and associated device
US11755226B2 (en) Tracking changes of storage volumes during data transfers
JP2005209055A (ja) ストレージの負荷分散方法
US11157322B2 (en) Hyper-converged infrastructure (HCI) ephemeral workload/data provisioning system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22819317

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE