CN117349372A - 数据库会话查杀方法、装置、电子设备和存储介质 - Google Patents
数据库会话查杀方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117349372A CN117349372A CN202311224820.4A CN202311224820A CN117349372A CN 117349372 A CN117349372 A CN 117349372A CN 202311224820 A CN202311224820 A CN 202311224820A CN 117349372 A CN117349372 A CN 117349372A
- Authority
- CN
- China
- Prior art keywords
- session
- database
- target
- database session
- control node
- 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 187
- 238000012545 processing Methods 0.000 claims description 64
- 238000004422 calculation algorithm Methods 0.000 claims description 26
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013496 data integrity verification Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/21—Design, administration or maintenance of databases
-
- 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/24—Querying
- G06F16/242—Query formulation
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据库会话查杀方法、装置、电子设备和存储介质,其中方法包括:确定待查杀的目标数据库会话;获取分布式数据库中各个控制节点的执行进程列表;基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程;所述会话标识在所述分布式数据库中与所述目标数据库会话一一对应;在所述目标控制节点中终止所述目标数据库会话对应的进程。本申请提供的方法和装置,实现了在分布式数据库中对数据库会话进行准确地查杀,提高了分布式数据库的运行效率和性能。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种数据库会话查杀方法、装置、电子设备和存储介质。
背景技术
分布式数据库是指将数据存储和处理分散在多个节点上的数据库系统。分布式数据库包括控制节点和数据节点。控制节点负责协调和管理整个数据库系统的运行,数据节点用于实现对数据的存储。
在分布式数据库中进行数据查询时,由于用户操作或者查询超时等原因,需要终止当前正在执行的数据库会话,以停止该会话对数据库系统的操作。由于分布式数据库中的控制节点较多,无法确定是由哪个控制节点在运行该查询操作对应的数据库会话。此外,如果不同的用户执行同一查询操作,则无法确定需要查杀的数据库会话。
因此,如何在分布式数据库中对数据库会话进行准确地查杀,提高分布式数据库的运行效率和性能成为业界亟待解决的技术问题。
发明内容
本申请提供一种数据库会话查杀方法、装置、电子设备和存储介质,用于解决如何在分布式数据库中对数据库会话进行准确地查杀,提高分布式数据库的运行效率和性能的技术问题。
本申请提供一种数据库会话查杀方法,包括:
确定待查杀的目标数据库会话;
获取分布式数据库中各个控制节点的执行进程列表;
基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程;所述会话标识在所述分布式数据库中与所述目标数据库会话一一对应;
在所述目标控制节点中终止所述目标数据库会话对应的进程。
在一些实施例中,所述确定待查杀的目标数据库会话之前,所述方法还包括:
基于所述分布式数据库的客户端发送的数据处理请求,建立所述数据处理请求对应的数据库会话;
确定所述数据库会话对应的会话标识,并将所述会话标识与所述数据处理请求进行关联存储;
将所述会话标识写入所述数据库会话的注释信息;
将所述注释信息与所述数据库会话对应的查询语句进行拼接。
在一些实施例中,所述确定所述数据库会话对应的会话标识,包括:
基于随机数生成算法、全局唯一标识符生成算法和哈希算法中的至少一种,确定所述数据库会话对应的会话标识。
在一些实施例中,所述基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程,包括:
获取当前控制节点的执行进程列表;
将所述目标数据库会话的会话标识与所述执行进程列表中各个进程的进程信息中的会话标识进行匹配;
在任一进程的进程信息中的会话标识与所述目标数据库会话的会话标识匹配的情况下,确定所述当前控制节点为所述目标数据库会话对应的目标控制节点,确定所述任一进程为所述目标数据库会话对应的进程,并停止查找;
在各个进程的进程信息中的会话标识与所述目标数据库会话的会话标识均不匹配的情况下,将所述当前控制节点切换至下一控制节点,并继续查找。
在一些实施例中,所述确定待查杀的目标数据库会话,包括:
基于所述分布式数据库的客户端发送的会话查杀请求,确定所述待查杀的目标数据库会话。
在一些实施例中,所述确定待查杀的目标数据库会话,包括:
获取所述分布式数据库中正在执行的多个数据处理请求的处理时间;
在任一数据处理请求的处理时间超过预设时间阈值的情况下,将所述任一数据处理请求对应的数据库会话确定为所述待查杀的目标数据库会话。
在一些实施例中,所述确定待查杀的目标数据库会话,包括:
确定查杀关键字;
将所述查杀关键字与所述分布式数据库中正在执行的多个数据处理请求的查询语句的分词结果进行匹配;
基于匹配结果确定所述待查杀的目标数据库会话。
本申请提供一种数据库会话查杀装置,包括:
确定模块,用于确定待查杀的目标数据库会话;
获取模块,用于获取分布式数据库中各个控制节点的执行进程列表;
查找模块,用于基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程;所述会话标识在所述分布式数据库中与所述目标数据库会话一一对应;
查杀模块,用于在所述目标控制节点中终止所述目标数据库会话对应的进程。
本申请提供一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述的数据库会话查杀方法。
本申请提供一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述的数据库会话查杀方法。
本申请提供的数据库会话查杀方法、装置、电子设备和存储介质,确定待查杀的目标数据库会话;获取分布式数据库中各个控制节点的执行进程列表;基于目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程;在目标控制节点中终止目标数据库会话对应的进程;由于会话标识在分布式数据库中与目标数据库会话一一对应,使得可以在分布式数据库中对目标数据库会话进行唯一标识,便于准确地查找目标数据库会话对应的控制节点和进程,实现了在分布式数据库中对数据库会话进行准确地查杀,提高了分布式数据库的运行效率和性能。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请提供的数据库会话查杀方法的流程示意图;
图2为本申请提供的数据库会话查杀装置的结构示意图;
图3是本申请提供的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元或模块。
在本申请的技术方案中,所涉及的客户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
图1为本申请提供的数据库会话查杀方法的流程示意图,如图1所示,该方法包括步骤110、步骤120、步骤130和步骤140。
步骤110、确定待查杀的目标数据库会话。
具体地,本申请实施例提供的数据库会话查杀方法的执行主体为数据库会话查杀装置。该装置可以通过软件实现,例如运行在分布式数据库中的数据库会话查杀程序;也可以为执行数据库会话查杀方法的装置,例如移动终端、平板电脑、台式计算机或者服务器等。
本申请实施例提供的方法的应用场景为在分布式数据库中对某个或者某类数据库操作对应的数据库会话进行终止。
数据库会话是指与数据库建立的一次交互连接,并在该连接上执行一个或多个数据库操作的过程。通常,一个数据库会话从用户发起连接到数据库系统开始,直到用户关闭连接或断开与数据库系统的连接为止。数据库会话可以用于执行各种数据库操作,如查询数据、插入数据、更新数据或删除数据等。在一个数据库会话中,用户可以执行多个数据库操作语句(Structured Query Language,SQL),这些语句按照用户的要求被依次执行。数据库会话还可以包括与数据库系统进行的参数设置、事务管理、会话状态的保存和恢复等操作。
查杀是指终止当前正在执行的数据库会话,以停止该会话对数据库系统的操作。目标数据库会话为当前需要进行查杀的数据库会话。
步骤120、获取分布式数据库中各个控制节点的执行进程列表。
具体地,控制节点是分布式数据库中的主要节点,负责协调和管理整个数据库系统的运行。控制节点通常包括元数据管理、查询解析和优化、事务管理等功能。它负责将客户端请求分发给合适的数据节点,并处理跨节点的事务一致性和并发控制问题。同时,控制节点还负责监控数据节点的状态,并根据需要进行故障处理和容错操作。
执行进程列表是指控制节点中执行的所有进程的列表。例如对于关系型数据库MySQL而言,该数据库还自带Information_schema数据库。Information_schema数据库主要用于提供数据库的元数据的访问,例如数据库或表的名称、列的数据类型或访问权限等。Information_schema数据库提供多个数据表,包括Processlist表。Processlist表为MySQL中的执行进程列表,该表用于显示当前活动连接和正在执行的查询进程的信息,记录了连接到MySQL服务器的客户端会话,以及它们正在执行的查询语句和相关的状态信息。
步骤130、基于目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程。会话标识在分布式数据库中与目标数据库会话一一对应。
具体地,会话标识是指在分布式数据库中对各个数据库会话进行唯一区分的标识。目标控制节点是指执行目标数据库会话对应的进程的控制节点。
可以在各个控制节点的执行进程列表中,根据会话标识对目标数据库会话对应的进程进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程。
步骤140、在目标控制节点中终止目标数据库会话对应的进程。
具体地,进程是操作系统中运行的独立执行实体,每个进程都有一个唯一的标识符来区别于其他进程,这个标识符称为进程号(Process ID)。
可以获取目标数据库会话在目标控制节点中对应的进程的标识符,调用进程终止指令,在目标控制节点中终止目标数据库会话对应的进程。
本申请实施例提供的数据库会话查杀方法,确定待查杀的目标数据库会话;获取分布式数据库中各个控制节点的执行进程列表;基于目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程;在目标控制节点中终止目标数据库会话对应的进程;由于会话标识在分布式数据库中与目标数据库会话一一对应,使得可以在分布式数据库中对目标数据库会话进行唯一标识,便于准确地查找目标数据库会话对应的控制节点和进程,实现了在分布式数据库中对数据库会话进行准确地查杀,提高了分布式数据库的运行效率和性能。
需要说明的是,本申请每一个实施方式可以自由组合、调换顺序或者单独执行,并不需要依靠或依赖固定的执行顺序。
在一些实施例中,步骤110之前包括:
基于分布式数据库的客户端发送的数据处理请求,建立数据处理请求对应的数据库会话;
确定数据库会话对应的会话标识,并将会话标识与数据处理请求进行关联存储;
将会话标识写入数据库会话的注释信息;
将注释信息与数据库会话对应的查询语句进行拼接。
具体地,用户可以在分布式数据库的客户端发送的数据处理请求,数据处理请求可以是数据查询请求、数据插入请求、数据更新请求或者数据删除请求中的至少一种。
分布式数据库系统可以根据用户发送的数据处理请求,建立相应的数据库会话,并为该数据库会话确定唯一的会话标识,并将会话标识与数据处理请求进行关联存储。
会话标识可以用taskid等字段来表示。在确定数据库会话对应的会话标识时,可以使用随机数生成的方法来确定。例如使用Java语言中的math.random()函数生成随机数,作为数据库会话对应的会话标识,保证会话标识的唯一性。
在确定会话标识后,可以将会话标识写入数据库会话的注释信息,并将该注释信息与数据库会话对应的查询语句进行拼接,使得会话标识与数据库会话对应的查询语句融为一体。
本申请实施例提供的数据库会话查杀方法,在建立数据处理请求对应的数据库会话时,同步确定数据库会话对应的会话标识,该会话标识在分布式数据库中对该数据库会话进行唯一表示,将会话标识通过注释信息的方式与查询语句拼接,便于对会话标识进行查询,便于通过查询语句准确地查找数据库会话。
在一些实施例中,步骤110包括:
基于随机数生成算法、全局唯一标识符生成算法和哈希算法中的至少一种,确定数据库会话对应的会话标识。
具体地,随机数生成算法是用来生成一系列看似无规律、具有随机性质的数字或数值序列的算法,这些随机生成的数字具有唯一性,可以用来作为数据库会话对应的会话标识。例如随机数生成算法可以包括伪随机数生成器算法和真随机数生成器算法等。
由于时间戳具有时间维度上的唯一性,还可以采用时间戳作为数据库会话对应的会话标识。
还可以将随机数和时间戳进行结合,时间戳保证了生成的标识在一定时间范围内是唯一的,随机数可以增加随机性,使得会话标识具有唯一性。
全局唯一标识符生成算法(Universally Unique Identifier)是一种由算法生成的128位数字标识符,用于在分布式计算环境中标识数据实体或操作。
哈希算法是一种通过将任意长度的数据映射为固定长度的值(哈希值)的算法。哈希算法常用于数据的唯一标识、数据完整性校验、密码存储等场景。
可以通过上述算法中的任意一种或者多种,来确定数据库会话对应的会话标识。
本申请实施例提供的数据库会话查杀方法,通过随机数生成算法、全局唯一标识符生成算法和哈希算法中的至少一种,确定数据库会话对应的会话标识,提高了会话标识确定的唯一性,便于准确地查找目标数据库会话对应的控制节点和进程。
在一些实施例中,步骤130包括:
获取当前控制节点的执行进程列表;
将目标数据库会话的会话标识与执行进程列表中各个进程的进程信息中的会话标识进行匹配;
在任一进程的进程信息中的会话标识与目标数据库会话的会话标识匹配的情况下,确定当前控制节点为目标数据库会话对应的目标控制节点,确定任一进程为目标数据库会话对应的进程,并停止查找;
在各个进程的进程信息中的会话标识与目标数据库会话的会话标识均不匹配的情况下,将当前控制节点切换至下一控制节点,并继续查找。
具体地,可以通过轮询的方式,对各个控制节点进行访问,在各个控制节点的执行进程列表中进行查找。
根据各个控制节点的访问顺序,确定当前控制节点。可以获取当前控制节点的执行进程列表。由于各个进程的进程信息中包含了数据库会话对应的查询语句,而查询语句中的注释信息记录了会话标识,因此,进程信息中也包含了会话标识。
将目标数据库会话的会话标识与执行进程列表中各个进程的进程信息中的会话标识进行匹配,匹配的方法可以采用逐字符比较的方法。
在任一进程的进程信息中的会话标识与目标数据库会话的会话标识匹配的情况下,表明该进程为执行目标数据库会话中的数据库操作的进程,则可以确定当前控制节点为目标数据库会话对应的目标控制节点,并且该进程为目标数据库会话对应的进程。此时,可以停止查找。
在各个进程的进程信息中的会话标识与目标数据库会话的会话标识均不匹配的情况下,表明当前控制节点中所执行的所有进程均与目标数据库会话无关,当前控制节点不是需要查找的控制节点。因此,可以将当前控制节点切换至下一控制节点,并继续查找。
本申请实施例提供的数据库会话查杀方法,对各个控制节点进行访问,通过会话标识匹配的方式在各个控制节点的执行进程列表中进行查找目标数据库会话对应的进程,便于准确地查找目标数据库会话对应的控制节点和进程,实现了在分布式数据库中对数据库会话进行准确地查杀,提高了分布式数据库的运行效率和性能。
在一些实施例中,步骤110包括:
基于分布式数据库的客户端发送的会话查杀请求,确定待查杀的目标数据库会话。
具体地,用户可以在分布式数据库的客户端中输入会话查杀请求。会话查杀请求用于根据用户的个性化需求,对指定的数据库会话进行查杀。会话查杀请求中可以包括一个或者多个待查杀的目标数据库会话。
本申请实施例提供的数据库会话查杀方法,可以根据用户的个性化需求,对指定的数据库会话进行查杀,提高了分布式数据库的运行效率和性能。
在一些实施例中,步骤110包括:
获取分布式数据库中正在执行的多个数据处理请求的处理时间;
在任一数据处理请求的处理时间超过预设时间阈值的情况下,将任一数据处理请求对应的数据库会话确定为待查杀的目标数据库会话。
具体地,可以对分布式数据库中正在执行的多个数据处理请求的处理时间进行统计,并设定预设时间阈值。预设时间阈值可以根据需要进行设置。
将各个数据处理请求的处理时间与预设时间阈值进行比较,如果任一数据处理请求的处理时间超过预设时间阈值,则表明分布式数据库系统处理该数据处理请求的时间过长,该数据处理请求可能陷入死循环或者该数据处理请求需要继续消耗更多的系统资源,这将对其他数据处理请求造成影响,使得分布式数据库的响应变慢,降低了分布式数据库的运行效率。
可以将该数据处理请求对应的数据库会话确定为待查杀的目标数据库会话。
本申请实施例提供的数据库会话查杀方法,通过将正在执行的多个数据处理请求的处理时间与预设时间阈值进行比较,确定处理超时的数据处理请求,对超时的数据处理请求对应的数据库会话进行查杀,提高了分布式数据库的运行效率和性能。
在一些实施例中,步骤110包括:
确定查杀关键字;
将查杀关键字与分布式数据库中正在执行的多个数据处理请求的查询语句的分词结果进行匹配;
基于匹配结果确定待查杀的目标数据库会话。
具体地,本申请实施例提供的数据库会话查杀方法还可以根据查杀关键字来确定待查杀的目标数据库会话。
查杀关键字可以根据用户的需求进行定义。例如可以将某些具体的操作类型确定为查杀关键字,用于对该操作类型的所有数据库会话进行查杀;可以将某些查询字段确定为查杀关键字,用于对这些查询字段对应的数据进行处理的所有数据库会话进行查杀;还可以将某些数据表或者某些数据节点确定为查杀关键字,用于对访问这些数据表或者数据节点的所有数据库会话进行查杀。
可以对数据处理请求的查询语句进行分词,得到分词结果。例如对查询语句“select字段from数据表名称”进行分词后,可以得到“select”、“字段”和“数据表名称”等。
将查杀关键字与分布式数据库中正在执行的各个数据处理请求的查询语句的分词结果进行匹配,如果匹配成功,则可以将匹配的数据处理请求对应的数据库会话确定为待查杀的目标数据库会话;如果匹配失败,则匹配失败的数据处理请求对应的数据库会话不是待查杀的目标数据库会话。
本申请实施例提供的数据库会话查杀方法,通过将查杀关键字与分布式数据库中正在执行的多个数据处理请求的查询语句的分词结果进行匹配,可以批量确定待查杀的目标数据库会话,提高了数据库会话的查杀效率,提高了分布式数据库的运行效率和性能。
本申请实施例还提供一种基于分布式数据库的会话查杀方法,该方法包括:
步骤一、在数据库的前端(客户端)界面点击“查询”,建立会话,输入的SQL语句。
步骤二、前端界面会调动服务器上查询脚本,确定会话标识taskid。该脚本中会把该SQL语句拼接上包含taskid的注释信息。
步骤三、在前端界面上点击“停止查询”,对建立的会话进行查杀。
步骤四、调用查杀脚本,对分布式数据库中的各个控制节点进行查询,通过各个控制节点的进程列表中的信息判断是否包含taskid。
步骤五、对于包含taskid的进程,执行终止命令,终止该会话。
步骤六、前端界面返回该会话已经被用户终止。
下面对本申请实施例提供的装置进行描述,下文描述的装置与上文描述的方法可相互对应参照。
图2为本申请提供的数据库会话查杀装置的结构示意图,如图2所示,该装置包括:
确定模块210,用于确定待查杀的目标数据库会话;
获取模块220,用于获取分布式数据库中各个控制节点的执行进程列表;
查找模块230,用于基于目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程;会话标识在分布式数据库中与目标数据库会话一一对应;
查杀模块240,用于在目标控制节点中终止目标数据库会话对应的进程。
本申请实施例提供的数据库会话查杀装置,确定待查杀的目标数据库会话;获取分布式数据库中各个控制节点的执行进程列表;基于目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程;在目标控制节点中终止目标数据库会话对应的进程;由于会话标识在分布式数据库中与目标数据库会话一一对应,使得可以在分布式数据库中对目标数据库会话进行唯一标识,便于准确地查找目标数据库会话对应的控制节点和进程,实现了在分布式数据库中对数据库会话进行准确地查杀,提高了分布式数据库的运行效率和性能。
在一些实施例中,该装置还包括:
标识模块,用于基于分布式数据库的客户端发送的数据处理请求,建立数据处理请求对应的数据库会话;
确定数据库会话对应的会话标识,并将会话标识与数据处理请求进行关联存储;
将会话标识写入数据库会话的注释信息;
将注释信息与数据库会话对应的查询语句进行拼接。
在一些实施例中,确定模块用于:
基于随机数生成算法、全局唯一标识符生成算法和哈希算法中的至少一种,确定数据库会话对应的会话标识。
在一些实施例中,查找模块用于:
获取当前控制节点的执行进程列表;
将目标数据库会话的会话标识与执行进程列表中各个进程的进程信息中的会话标识进行匹配;
在任一进程的进程信息中的会话标识与目标数据库会话的会话标识匹配的情况下,确定当前控制节点为目标数据库会话对应的目标控制节点,确定任一进程为目标数据库会话对应的进程,并停止查找;
在各个进程的进程信息中的会话标识与目标数据库会话的会话标识均不匹配的情况下,将当前控制节点切换至下一控制节点,并继续查找。
在一些实施例中,确定模块用于:
基于分布式数据库的客户端发送的会话查杀请求,确定待查杀的目标数据库会话。
在一些实施例中,确定模块用于:
获取分布式数据库中正在执行的多个数据处理请求的处理时间;
在任一数据处理请求的处理时间超过预设时间阈值的情况下,将任一数据处理请求对应的数据库会话确定为待查杀的目标数据库会话。
在一些实施例中,确定模块用于:
确定查杀关键字;
将查杀关键字与分布式数据库中正在执行的多个数据处理请求的查询语句的分词结果进行匹配;
基于匹配结果确定待查杀的目标数据库会话。
图3是本申请提供的电子设备的结构示意图,如图3所示,该电子设备可以包括:处理器(Processor)310、通信接口(Communications Interface)320、存储器(Memory)330和通信总线(Communications Bus)340,其中,处理器310,通信接口320和存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑命令,以执行如下方法:
确定待查杀的目标数据库会话;获取分布式数据库中各个控制节点的执行进程列表;基于目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定目标数据库会话对应的目标控制节点,以及目标数据库会话在目标控制节点中对应的进程;会话标识在分布式数据库中与目标数据库会话一一对应;在目标控制节点中终止目标数据库会话对应的进程。
此外,上述的存储器中的逻辑命令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的电子设备中的处理器可以调用存储器中的逻辑指令,实现上述方法,其具体的实施方式与前述方法实施方式一致,且可以达到相同的有益效果,此处不再赘述。
本申请实施例还提供一种计算机可读的存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法。
其具体的实施方式与前述方法实施方式一致,且可以达到相同的有益效果,此处不再赘述。
本申请实施例提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如上述方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种数据库会话查杀方法,其特征在于,包括:
确定待查杀的目标数据库会话;
获取分布式数据库中各个控制节点的执行进程列表;
基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程;所述会话标识在所述分布式数据库中与所述目标数据库会话一一对应;
在所述目标控制节点中终止所述目标数据库会话对应的进程。
2.根据权利要求1所述的数据库会话查杀方法,其特征在于,所述确定待查杀的目标数据库会话之前,所述方法还包括:
基于所述分布式数据库的客户端发送的数据处理请求,建立所述数据处理请求对应的数据库会话;
确定所述数据库会话对应的会话标识,并将所述会话标识与所述数据处理请求进行关联存储;
将所述会话标识写入所述数据库会话的注释信息;
将所述注释信息与所述数据库会话对应的查询语句进行拼接。
3.根据权利要求2所述的数据库会话查杀方法,其特征在于,所述确定所述数据库会话对应的会话标识,包括:
基于随机数生成算法、全局唯一标识符生成算法和哈希算法中的至少一种,确定所述数据库会话对应的会话标识。
4.根据权利要求1所述的数据库会话查杀方法,其特征在于,所述基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程,包括:
获取当前控制节点的执行进程列表;
将所述目标数据库会话的会话标识与所述执行进程列表中各个进程的进程信息中的会话标识进行匹配;
在任一进程的进程信息中的会话标识与所述目标数据库会话的会话标识匹配的情况下,确定所述当前控制节点为所述目标数据库会话对应的目标控制节点,确定所述任一进程为所述目标数据库会话对应的进程,并停止查找;
在各个进程的进程信息中的会话标识与所述目标数据库会话的会话标识均不匹配的情况下,将所述当前控制节点切换至下一控制节点,并继续查找。
5.根据权利要求1至4任一项所述的数据库会话查杀方法,其特征在于,所述确定待查杀的目标数据库会话,包括:
基于所述分布式数据库的客户端发送的会话查杀请求,确定所述待查杀的目标数据库会话。
6.根据权利要求1至4任一项所述的数据库会话查杀方法,其特征在于,所述确定待查杀的目标数据库会话,包括:
获取所述分布式数据库中正在执行的多个数据处理请求的处理时间;
在任一数据处理请求的处理时间超过预设时间阈值的情况下,将所述任一数据处理请求对应的数据库会话确定为所述待查杀的目标数据库会话。
7.根据权利要求1至4任一项所述的数据库会话查杀方法,其特征在于,所述确定待查杀的目标数据库会话,包括:
确定查杀关键字;
将所述查杀关键字与所述分布式数据库中正在执行的多个数据处理请求的查询语句的分词结果进行匹配;
基于匹配结果确定所述待查杀的目标数据库会话。
8.一种数据库会话查杀装置,其特征在于,包括:
确定模块,用于确定待查杀的目标数据库会话;
获取模块,用于获取分布式数据库中各个控制节点的执行进程列表;
查找模块,用于基于所述目标数据库会话的会话标识,在各个控制节点的执行进程列表中进行查找,确定所述目标数据库会话对应的目标控制节点,以及所述目标数据库会话在所述目标控制节点中对应的进程;所述会话标识在所述分布式数据库中与所述目标数据库会话一一对应;
查杀模块,用于在所述目标控制节点中终止所述目标数据库会话对应的进程。
9.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1至7任一项所述的数据库会话查杀方法。
10.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行权利要求1至7任一项所述的数据库会话查杀方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311224820.4A CN117349372A (zh) | 2023-09-20 | 2023-09-20 | 数据库会话查杀方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311224820.4A CN117349372A (zh) | 2023-09-20 | 2023-09-20 | 数据库会话查杀方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117349372A true CN117349372A (zh) | 2024-01-05 |
Family
ID=89354952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311224820.4A Pending CN117349372A (zh) | 2023-09-20 | 2023-09-20 | 数据库会话查杀方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117349372A (zh) |
-
2023
- 2023-09-20 CN CN202311224820.4A patent/CN117349372A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9817858B2 (en) | Generating hash values | |
CN110908997A (zh) | 数据血缘构建方法、装置、服务器及可读存储介质 | |
US11243921B2 (en) | Database expansion system, equipment, and method of expanding database | |
CN113360519B (zh) | 数据处理方法、装置、设备和存储介质 | |
US9454561B2 (en) | Method and a consistency checker for finding data inconsistencies in a data repository | |
CN108415998B (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
US20210109913A1 (en) | Object storage method and object storage gateway | |
CN112817973A (zh) | 数据处理方法、装置、数据处理设备及存储介质 | |
CN108154024B (zh) | 一种数据检索方法、装置及电子设备 | |
CN111046106A (zh) | 缓存数据同步方法、装置、设备及介质 | |
CN108959294B (zh) | 一种访问搜索引擎的方法和装置 | |
CN109101595B (zh) | 一种信息查询方法、装置、设备及计算机可读存储介质 | |
CN117349372A (zh) | 数据库会话查杀方法、装置、电子设备和存储介质 | |
JP6233846B2 (ja) | 可変長ノンスの生成 | |
CN117009430A (zh) | 数据管理方法、装置和存储介质及电子设备 | |
CN114461606A (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
US20220207097A1 (en) | Multi-node word segmentation system and method for keyword search | |
CN114489772A (zh) | 工作流执行方法及装置、存储介质、设备 | |
US10003492B2 (en) | Systems and methods for managing data related to network elements from multiple sources | |
US10402391B2 (en) | Processing method, device and system for data of distributed storage system | |
CN108491448B (zh) | 一种数据推送的方法和装置 | |
CN110737662A (zh) | 一种数据分析方法、装置、服务器及计算机存储介质 | |
WO2022127417A1 (zh) | 数据查询方法、电子设备、存储介质 | |
CN116361317A (zh) | 一种sql语句的智能处理方法、系统、计算机设备及介质 | |
CN115827673A (zh) | 一种sql查杀方法、查杀装置、控制装置及可读存储介质 |
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 |