本发明涉及数据执行,尤其涉及一种事务处理方法、装置、设备、介质和计算机程序产品。
背景技术:
1、在数据库中,执行器是负责执行事务的命令的引擎。执行器的运行需要依赖上下文关系,也即需要执行器的运行需要依赖自身的执行状态。
2、数据库设置有事务机制,通过事务机制可以保证事务数据的完整性。事务处理以及执行器的运行同时影响整个命令执行的生命周期。
3、当前的执行器在执行事务的命令时,为了保证事务数据的完整性,需要采用独立环境中的执行器执行事务的命令,而其他执行器并未有执行事务的执行器的执行状态,导致其他执行器无法执行事务的命令,降低了事务的执行效率。
技术实现思路
1、本发明提供一种事务处理方法、装置、设备、介质和计算机程序产品,用以解决事务的执行效率较低的问题。
2、一方面,本发明提供一种事务处理方法,包括:
3、获取执行目标事务的第一执行器的状态数据;
4、在所述状态数据中确定所述第一执行器的特征数据以及非特征数据,并获取所述特征数据对应的特征值,所述特征数据用于指示所述第一执行器独有的数据;
5、将所述特征值以及所述非特征数据写入至第二执行器,以使所述第二执行器继承所述第一执行器的执行状态,所述第一执行器与所述第二执行器位于不同的执行环境;
6、控制所述第二执行器基于所述特征值以及所述非特征数据,执行所述目标事务的命令。
7、在一实施例中,所述在所述状态数据中确定所述第一执行器的特征数据以及非特征数据的步骤包括:
8、确定各个状态数据中每个第一数据的属性;
9、根据所述属性确定对应的第一数据是否为所述第一执行器独有的数据;
10、在所述第一数据是所述第一执行器独有的数据时,将所述第一数据确定为所述特征数据;
11、在所述第一数据不是所述第一执行器独有的数据时,将所述第一数据确定为所述非特征数据。
12、在一实施例中,所述根据所述属性确定对应的第一数据是否为所述第一执行器独有的数据的步骤包括:
13、根据所述属性确定对应的第一数据是否为临时数据以及中间数据;
14、在所述第一数据是临时数据和/或中间数据时,确定所述第一数据是所述第一执行器独有的数据;
15、在所述第一数据不是临时数据且不是中间数据时,确定所述第一数据不是所述第一执行器独有的数据。
16、在一实施例中,所述在所述状态数据中确定所述第一执行器的特征数据的步骤包括:
17、在所述状态数据获取所述第一执行器的环境数据;
18、将所述环境数据中的会话级配置参数以及会话级变量确定为特征数据。
19、在一实施例中,所述控制所述第二执行器基于所述特征值以及所述非特征数据,执行所述目标事务的命令的步骤之前,还包括:
20、根据所述特征值获取所述第一子执行器的环境特征值;
21、对所述环境特征值进行重置,以使所述第二子执行器继承所述第一子执行器的环境数据,所述环境特征值包括会话级配置参数的值以及会话级变量的值。
22、在一实施例中,所述获取执行目标事务的第一执行器的状态数据的步骤包括:
23、获取所述目标事务的当前命令;
24、在确定所述当前命令需要在独立环境中执行时,获取执行目标事务的第一执行器的状态数据。
25、另一方面,本发明还提供一种事务处理装置,包括:
26、获取模块,用于获取执行目标事务的第一执行器的状态数据;
27、确定模块,用于在所述状态数据中确定所述第一执行器的特征数据以及非特征数据,并获取所述特征数据对应的特征值,所述特征数据用于指示所述第一执行器独有的数据;
28、写入模块,用于将所述特征值以及所述非特征数据写入至第二执行器,以使所述第二执行器继承所述第一执行器的执行状态,所述第一执行器与所述第二执行器位于不同的执行环境;
29、控制模块,用于控制所述第二执行器基于所述特征值以及所述非特征数据,执行所述目标事务的命令。
30、另一方面,本发明还提供一种事务处理设备,包括:存储器和处理器;
31、所述存储器存储计算机执行指令;
32、所述处理器执行存储器存储的计算机执行指令,使得事务处理设备执行如上所述的事务处理方法。
33、另一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的事务处理方法.
34、另一方面,本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时用于实现如上所述的事务处理方法。
35、本发明提供的事务处理方法、装置、设备、介质和计算机程序产品,获取执行目标事务的第一执行器的状态数据,在状态数据中确定第一执行器的特征数据和非特征数据,并获取特征数据的特征值,并将特征值以及非特征数据写入至第二执行器,再控制第二执行器基于特征值以及非特征数据执行目标事务的命令。本发明中,与第一执行器位于不同的执行环境的第二执行器继承第一执行器的状态数据,从而使得第二执行器能够执行器事务的命令,提高了事务的执行效率。进一步的,装置将第一执行器独有的特征数据的特征值写入至第二执行器,而无需将特征数据全部写入至第二执行器,减少了第一执行器的数据传递量,缩短了第二执行器执行命令的时长,从而提高了事务的执行效率。
1.一种事务处理方法,其特征在于,包括:
2.根据权利要求1所述的事务处理方法,其特征在于,所述在所述状态数据中确定所述第一执行器的特征数据以及非特征数据的步骤包括:
3.根据权利要求2所述的事务处理方法,其特征在于,所述根据所述属性确定对应的第一数据是否为所述第一执行器独有的数据的步骤包括:
4.根据权利要求1所述的事务处理方法,其特征在于,所述在所述状态数据中确定所述第一执行器的特征数据的步骤包括:
5.根据权利要求1所述的事务处理方法,其特征在于,所述控制所述第二执行器基于所述特征值以及所述非特征数据,执行所述目标事务的命令的步骤之前,还包括:
6.根据权利要求1-5中任一项所述的事务处理方法,其特征在于,所述获取执行目标事务的第一执行器的状态数据的步骤包括:
7.一种事务处理装置,其特征在于,包括:
8.一种事务处理设备,其特征在于,包括:存储器和处理器;
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至6任一项所述的事务处理方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时用于实现如权利要求1至6任一项所述的事务处理方法。