CN111984625A - 数据库负载特征处理方法、装置、介质和电子设备 - Google Patents

数据库负载特征处理方法、装置、介质和电子设备 Download PDF

Info

Publication number
CN111984625A
CN111984625A CN202010853809.4A CN202010853809A CN111984625A CN 111984625 A CN111984625 A CN 111984625A CN 202010853809 A CN202010853809 A CN 202010853809A CN 111984625 A CN111984625 A CN 111984625A
Authority
CN
China
Prior art keywords
statement
transaction
session
type
identifier
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.)
Granted
Application number
CN202010853809.4A
Other languages
English (en)
Other versions
CN111984625B (zh
Inventor
尹强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingbase Information Technologies Co Ltd
Original Assignee
Beijing Kingbase Information Technologies Co Ltd
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 Beijing Kingbase Information Technologies Co Ltd filed Critical Beijing Kingbase Information Technologies Co Ltd
Priority to CN202010853809.4A priority Critical patent/CN111984625B/zh
Publication of CN111984625A publication Critical patent/CN111984625A/zh
Application granted granted Critical
Publication of CN111984625B publication Critical patent/CN111984625B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/21Design, administration or maintenance of databases
    • 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/242Query formulation
    • G06F16/2433Query languages

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)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种数据库负载特征处理方法、装置、介质和电子设备。所述方法包括:在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识;根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识;基于确定的所有会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,事务特征信息以及语句特征信息。本公开的方案可以较为准确全面地刻画反映数据库的负载特征情况。

Description

数据库负载特征处理方法、装置、介质和电子设备
技术领域
本公开实施例涉及数据库技术领域,尤其涉及一种数据库负载特征处理方法、数据库负载特征处理装置,以及实现数据库负载特征处理方法的计算机可读存储介质和电子设备。
背景技术
数据库是信息***的一个重要组成部分,其任务是存储和管理数据。数据库的性能将直接影响业务的扩展能力和用户体验。因此用户希望数据库能长时间工作在最优模式下,那么如何评测和提高数据库的性能成了一个重要课题。
目前,相关技术中可以采用第三方工具来监控和分析数据库的负载性能,对数据库负载特征数据进行整理分析,最后得到数据库性能数据报告,为数据库管理员更好的配置数据库,使其工作在高效模式下提供基础和参考。
但是,数据库的负载往往会随着时间的推移越来越复杂,例如功能的变化、访问量的增加、甚至应用的增加都会导致数据库负载的复杂度增加,此时如要较为全面了解数据库的负载特征就会比较困难,对数据库的管理运维和可能的重构带来巨大的挑战。而目前还未见相关技术关注到此问题。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种数据库负载特征处理方法、数据库负载特征处理装置,以及实现数据库负载特征处理方法的计算机可读存储介质和电子设备。
第一方面,本公开实施例提供了一种数据库负载特征处理方法,包括:
在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识;所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话;
根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识;
基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。
在本公开的一些实施例中,所述在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识,包括:
在每条SQL语句执行完成时,通过日志***获取每条SQL语句相关的语句信息、事务标识和会话标识;
其中,所述语句信息至少包括语句内容、语句执行耗时以及语句涉及的表信息中的一个或多个。
在本公开的一些实施例中,所述根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识,包括:
对每条SQL语句的语句内容做参数化处理,然后对参数化处理后的内容做哈希计算,将得到的哈希值作为语句类型标识。
在本公开的一些实施例中,所述对每条SQL语句的语句内容做参数化处理,包括:
将每条SQL语句的语句内容的常量部分替换为预设字符。
在本公开的一些实施例中,所述根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识,包括:
遍历每条SQL语句相关的事务标识,以确定归属于同一事务标识的SQL语句;
获取归属于同一事务标识的SQL语句的语句类型标识,对获取的语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
在本公开的一些实施例中,还包括:
在归属于同一事务标识的SQL语句有多个时,获取归属于同一事务标识的多个SQL语句对应的多个语句类型标识;
去除该多个语句类型标识中的重复语句类型标识;
基于去除后的剩余语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
在本公开的一些实施例中,所述根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识,包括:
遍历每条SQL语句相关的会话标识和事务标识,以获取归属于同一会话标识所属的M个事务类型标识;M为大于等于2的自然数;
去除同一会话标识所属的M个事务类型标识中的重复事务类型标识得到剩余N个事务类型标识;
基于该剩余N个事务类型标识做哈希计算,将得到的哈希值作为会话类型标识。
在本公开的一些实施例中,还包括:
逐一比较相邻两个会话标识所属的剩余N个事务类型标识的重复比例,在该重复比例大于预设比例阈值时,确定该两个会话标识所表示的会话是同一会话;所述预设比例阈值是80%以上;
去除该两个会话标识所属的剩余2N个事务类型标识中的重复事务类型标识得到剩余P个事务类型标识;
基于该剩余P个事务类型标识做哈希计算,将得到的哈希值作为该同一会话的会话类型标识。
在本公开的一些实施例中,还包括:
去除所有SQL语句的语句类型标识中的重复语句类型标识,得到剩余语句类型标识;
基于该剩余语句类型标识获取所属的SQL语句涉及的表信息,基于该表信息获取数据特征信息;
其中,所述数据特征信息至少包括表名、表容量、属性个数、页面数、元组数、统计信息中的一个或多个。
在本公开的一些实施例中,所述结构化数据关系模型还包括归属于语句特征信息的数据特征信息;所述会话特征信息包括会话数量、会话耗时、事务类型数量和事务总数中的一个或多个;所述事务特征信息包括事务执行次数、事务执行耗时、事务所属执行语句序列中的一个或多个;所述语句特征信息包括语句执行次数、语句执行耗时和语句内容中的一个或多个。
在本公开的一些实施例中,在所述根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识之前,还包括:
将获取的每条SQL语句相关的语句信息、事务标识和会话标识并以预设文件格式记录写入日志文件中;
将所述日志文件以外部表的形式引入数据库中,并将该外部表转换为数据库自身引擎的表;
在转换后的该表中新增用以更新记录确定的会话类型标识、事务类型标识和语句类型标识的三个属性列。
在本公开的一些实施例中,还包括:
获取待分析会话的会话类型标识;
基于所述待分析会话的会话类型标识以及所述结构化数据关系模型,查询获取该待分析会话所属的会话特征信息、事务特征信息以及语句特征信息和数据特征信息中的一个或多个。
第二方面,本公开实施例提供一种数据库负载特征处理装置,包括:
数据采集模块,用以在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识;所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话;
数据预处理模块,用以根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识;
模型建立模块,用以基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。
第三方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述数据库负载特征处理方法的步骤。
第四方面,本公开实施例提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任一实施例所述数据库负载特征处理方法的步骤。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例中,在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识,然后根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识;最后基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。如此,本实施例关注到反应数据库操作特征的会话类型、事务类型、语句类型等信息,基于此建立反映数据库负载特征信息的结构化数据关系模型,可以较为准确全面地刻画反映数据库的负载特征情况,从而利于后续的负载特征数据分析,为数据库管理员更好的配置数据库,使其工作在高效模式下提供较为准确全面的参考。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例数据库负载特征处理方法流程图;
图2为本公开实施例数据库负载特征的结构化数据关系模型示意图;
图3为本公开具体实施例数据库负载特征处理方法流程图;
图4为本公开实施例数据库负载特征处理装置示意图;
图5为本公开实施例实现数据库负载特征处理方法的电子设备示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
图1为本公开实施例示出的数据库负载特征处理方法流程图,该数据库负载特征处理方法可以包括以下步骤:
步骤S101:在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识。所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话。
步骤S102:根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识。
步骤S103:基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。
本公开实施例示出的上述数据库负载特征处理方法,关注到反应数据库操作特征的会话类型、事务类型、语句类型等信息,基于此建立反映数据库负载特征信息的结构化数据关系模型可以较为准确全面地刻画反映数据库的负载特征情况,从而利于后续的负载特征数据分析,为数据库管理员更好的配置数据库,使其工作在高效模式下提供较为准确全面的参考。
在本公开的一些实施例中,步骤S101中在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识。所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话。
示例性的,语句信息至少可以包括但不限于语句内容、语句执行耗时以及语句涉及的表信息中的一个或多个。语句内容例如可以是涉及查询,删除、更新等数据操作的内容。语句执行耗时是一条SQL语句开始执行到结束的时长。语句涉及的表信息可以是表名称,但不限于此。语句涉及的表可以是一个或多个,与语句内容相关,如由查询,删除、更新等数据操作的内容确定。另外,如下表1所示,通常一个会话(session)可以包含归属于该会话的一个或多个事务,如会话1包括事务1、事务2和事务3。一个事务又可以包括归属于该事务的一个或多个SQL语句,如事务1包括SQL语句1和SQL语句2。事务标识可以是事务号,表示一条SQL语句归属的事务,如SQL语句1和SQL语句2归属于事务1。会话标识可以是会话号,表示一条SQL语句归属的事务所归属的会话,如事务1、事务2和事务3归属于会话1,而事务4、事务5和事务6归属于会话2。
表1
Figure BDA0002645701420000081
本实施例中可以在每条SQL语句执行完成时,采集记录每条SQL语句相关语句信息、事务号和会话号。
具体的,作为一个示例,在每条SQL语句执行完成时,可以通过日志***获取每条SQL语句相关的语句信息、事务标识如事务号和会话标识如会话号。通过数据库日志***可以直接获取每条SQL语句相关语句信息、事务号和会话号,处理效率较高。
可选的,在本公开的一些实施例中,步骤S102中根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识,具体可以包括:对每条SQL语句的语句内容做参数化处理,然后对参数化处理后的内容做哈希计算,将得到的哈希值作为语句类型标识。
示例性的,语句类型标识如语句类型ID可以表示一条SQL语句的类型,如查询语句类型,删除语句类型或者更新语句类型等,不同的语句类型ID的取值如唯一数字编码等可以表示相应的不同语句类型,例如可预先配置建立语句类型ID的取值与SQL语句类型之间的对应关系,但不限于此。通过上述哈希计算的哈希值作为语句类型ID,可以提高后续特征提取分析时的数据获取查询效率。
在本公开的一些实施例中,可选的,步骤S102中对每条SQL语句的语句内容做参数化处理,具体可以包括:将每条SQL语句的语句内容的常量部分替换为预设字符。
具体的,作为示例,对语句内容做参数化处理,可以将语句内容的常量部分替换为预设字符如“?”,但预设字符并不限于此。例如将语句内容“where id>5”替换为“”where id>?”,然后对参数化后的内容做HASH计算,如基于内容中的字符串做HASH计算,将计算得到的哈希值作为语句类型标识入语句类型ID。可以理解的是,具体的哈希计算可以参考现有技术,此处以及下文均不再赘述。
可选的,在本公开的一些实施例中,步骤S102中根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识,具体可以包括下述步骤:
遍历每条SQL语句相关的事务标识,以确定归属于同一事务标识的SQL语句。
获取归属于同一事务标识的SQL语句的语句类型标识,对获取的语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
具体的,事务类型标识如事务类型ID表示一个事务的类型,不同的事务类型ID的取值可以表示不同类型的事务。一个会话包括多个事务时,各个事务的类型可能不完全相同,例如会话1包含的事务1和事务2的事务类型相同,而事务3的事务类型与事务1和事务2均不同,此处仅为举例说明,本实施例中不限于此。由于具有上述的例如表1所示的归属关系,本实施例中可以遍历每条SQL语句相关的事务号,以确定归属于同一事务号的SQL语句。例如比较判断SQL语句1和SQL语句2的事务号均为事务1,即相同,则可以确定归属于同一事务1的SQL语句。又例如,比较判断SQL语句4、SQL语句5和SQL语句6的事务号均为事务3,即相同,则可以确定归属于同一事务3的SQL语句。
之后,可以获取归属于同一事务号的SQL语句的语句类型标识,例如获取归属于事务3的SQL语句4、SQL语句5和SQL语句6各自对应的语句类型ID4、语句类型ID5和语句类型ID6。然后可以对该语句类型ID4、语句类型ID5和语句类型ID6做哈希计算,也即基于语句序列(SQL语句4、SQL语句5和SQL语句6)ID整体做哈希计算,将得到的哈希值作为事务3的事务类型标识如事务类型ID。
进一步可选的,在上述实施例的基础上,本公开的一些实施例中,该方法还可以包括如下步骤:
在归属于同一事务标识的SQL语句有多个时,获取归属于同一事务标识的多个SQL语句对应的多个语句类型标识。
去除该多个语句类型标识中的重复语句类型标识。
基于去除后的剩余语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
具体的,有些事务可能会不定次数的重复执行某些操作,可以将事务所包含的语句类型ID去重后做计算。继续以上述举例来说,获取归属于事务3的SQL语句有三个,如SQL语句4、SQL语句5和SQL语句6时,获取事务3所属的SQL语句4、SQL语句5和SQL语句6各自对应的语句类型ID4、语句类型ID5和语句类型ID6。在一些情况下,语句类型ID4、语句类型ID5和语句类型ID6可能存在重复语句类型标识,例如语句类型ID4、语句类型ID5的取值相同,表示相应的SQL语句4和SQL语句5是相同类型的语句,例如均是删除语句类型。此时去除重复的语句类型ID4和语句类型ID5中的任一个,基于去除后的例如语句类型ID4和语句类型ID6做哈希计算,将得到的哈希值作为事务3的事务类型标识如事务类型ID。如此可以减小待处理的数据量,提高数据库负载特征处理时的整体数据处理效率。
可选的,在上述实施例的基础上,本公开的一些实施例中,步骤S102中根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识,具体可以包括以下步骤:
遍历每条SQL语句相关的会话标识和事务标识,以获取归属于同一会话标识所属的M个事务类型标识;M为大于等于2的自然数。
去除同一会话标识所属的M个事务类型标识中的重复事务类型标识得到剩余N个事务类型标识。
基于该剩余N个事务类型标识做哈希计算,将得到的哈希值作为会话类型标识。
具体的,参考上述表1中所示,遍历每条SQL语句相关的会话号和事务号,以获取归属于同一会话号所属的M个事务类型标识如事务类型ID。例如获取归属于会话2所属的三个事务(如事务4、事务5、事务6)各自的事务类型ID。同时也可以获取会话1所属的3个事务(如事务1、事务2、事务3)各自的事务类型ID。
然后可以去除同一会话号所属的M个事务类型ID中的重复事务类型ID得到剩余N个事务类型ID。例如,归属于同一会话2所属的三个事务(如事务4、事务5、事务6)各自的事务类型ID可能有两个事务类型ID如事务4和事务5各自的事务类型ID相同,此时可以去除重复的事务类型ID。然后可基于例如剩余的事务5和事务6各自对应的事务类型ID做哈希计算,将得到的哈希值作为会话2的会话类型标识如会话类型ID。其他会话如会话1的会话类型ID的确定处理方式与此相同,此处不再赘述。
进一步可选的,在上述实施例的基础上,本公开的一些实施例中,该方法还可以包括如下步骤:
逐一比较相邻两个会话标识所属的剩余N个事务类型标识的重复比例,在该重复比例大于预设比例阈值时,确定该两个会话标识所表示的会话是同一会话;所述预设比例阈值是80%以上。
去除该两个会话标识所属的剩余2N个事务类型标识中的重复事务类型标识得到剩余P个事务类型标识。
基于该剩余P个事务类型标识做哈希计算,将得到的哈希值作为该同一会话的会话类型标识。
具体的,为了减少数据处理量以提高数据库负载特征处理时的整体数据处理效率。本实施例中对于涉及两个会话的类型相同时,可以合并相同类型的会话后进行哈希计算。继续以上述举例来说,逐一比较相邻两个会话号所属的剩余N个事务类型ID的重复比例,也即事务类型ID相似度,在该重复比例大于80%时,确定该两个会话号所表示的会话是同一会话。例如,假设会话2具有去重后剩余10个事务各自对应的事务类型ID,假设会话1具有去重后剩余11个事务各自对应的事务类型ID,此时若比较判断属于会话2的10个事务类型ID与属于会话1的11个事务类型ID中的9个事务类型ID相同,即有90%以上的事务类型ID相同,则可以认为会话1与会话2的会话类型相同。此时可以去除该两个会话1和会话2所属的21个事务类型ID中的9个重复事务类型ID得到剩余12个事务类型ID,基于该12个事务类型ID做哈希计算,将得到的哈希值作为该同一会话的会话类型ID。
可选的,在上述任一实施例的基础上,在本公开的一些实施例中,还可以包括如下步骤:
去除所有SQL语句的语句类型标识中的重复语句类型标识,得到剩余语句类型标识。
基于该剩余语句类型标识获取所属的SQL语句涉及的表信息,基于该表信息获取数据特征信息。
其中,所述数据特征信息至少可以包括但不限于表名、表容量、属性个数、页面数、元组数、统计(statistic)信息中的一个或多个。
具体的,基于上述实施例确定的属于会话1和会话2的所有SQL语句1至SQL语句10的语句类型ID,这其中可能存在重复的语句类型ID,即某两个或多个SQL语句的类型是相同的,此时可以去除10个SQL语句的语句类型ID中的重复语句类型ID,得到剩余语句类型ID。然后可基于该剩余语句类型ID获取相关SQL语句涉及的表信息,基于该表信息获取数据特征信息,如表名、表容量、属性个数、页面数、元组数和统计(statistic)信息等。
进一步可选的,在获取数据特征信息后,在本公开的一些实施例中,所述结构化数据关系模型还可以包括归属于语句特征信息的数据特征信息。如图2中所示结构化数据关系模型,该结构化数据关系模型可用以存储每种会话类型(会话类型1、会话类型2…会话类型N)的会话特征信息,归属于该会话特征信息的事务特征信息,归属于该事务特征信息的语句特征信息,以及归属于语句特征信息的数据特征信息。该结构化数据关系模型中每一级的特征信息以对应的会话类型ID、事务类型ID和语句类型ID作为索引关键字存储,从而可实现存储每种会话类型(如会话类型1、会话类型2…会话类型N)的相关联的特征信息。本实施例中该结构化数据关系模型还包括一个增加的数据特征维度的信息,基于此建立反映数据库负载特征信息的结构化数据关系模型可以更为准确全面地刻画反映数据库的负载特征情况,从而更利于后续的负载特征数据分析,为数据库管理员更好的配置数据库,使其工作在高效模式下提供更为准确全面的参考。
在本公开的一些实施例中,会话特征信息可以包括但不限于会话数量、会话耗时、事务类型数量和事务总数中的一个或多个。所述事务特征信息可以包括但不限于事务执行次数、事务执行耗时、事务所属执行语句序列中的一个或多个。所述语句特征信息可以包括但不限于语句执行次数、语句执行耗时和语句内容中的一个或多个。其中上一级的一些信息可以通过下一级的相关信息汇总得到。
在上述任一实施例的基础上,本公开的一些实施例中,为了便于处理负载特征数据,在所述根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识之前,还包括以下步骤:
将获取的每条SQL语句相关的语句信息、事务标识和会话标识并以预设文件格式记录写入日志文件中。
将所述日志文件以外部表的形式引入数据库中,并将该外部表转换为数据库自身引擎的表。
在转换后的该表中新增用以更新记录确定的会话类型标识、事务类型标识和语句类型标识的三个属性列。
具体的,本实施例中,最小采集粒度为语句级,因此原始采集信息的收集的粒度应不高于语句级,本实施例中可以对每一条SQL语句记录一条原始信息如语句信息、事务号和会话号等。由于需要收集的数据占用的空间会比较大,因此原始信息选用日志文件而非内存的方式做记录。是流行的,通过日志***将会话号、事务号、语句内容、语句执行耗时、语句涉及到的表信息以预设文件格式记录到日志文件中。预设文件格式具体可以是:每个属性以例如字符“||||”做分割,语句涉及到的表则以例如字符串“@@@@”做分割。如此可以便于后续的数据预处理,提高处理效率。
本实施例中将所述日志文件以外部表的形式引入数据库中,并将该外部表转换为数据库自身引擎的表,以便于数据库来进行后续数据处理。
最后在转换后的该表中新增用以更新记录确定的会话类型标识、事务类型标识和语句类型标识的三个属性列。然后基于上述实施例确定的会话类型ID、事务类型ID和语句类型ID即可在表中更新写入,从而构建最终的结构化数据关系模型。
在上述实施例的基础上,本公开的一些实施例中,还可以包括以下步骤:
获取待分析会话的会话类型标识。
基于所述待分析会话的会话类型标识以及所述结构化数据关系模型,查询获取该待分析会话所属的会话特征信息、事务特征信息以及语句特征信息和数据特征信息中的一个或多个。
具体的,例如获取待分析会话的会话类型ID,基于该待分析会话的会话类型ID以及所述结构化数据关系模型,查询获取该待分析会话所属的会话特征信息、事务特征信息以及语句特征信息和数据特征信息中。这样,基于结构化数据关系模型可以提取较为全面准确的数据库负载特征信息,利于后续的负载特征数据分析,为数据库管理员更好的配置数据库,使其工作在高效模式下提供较为准确全面的参考。
下面结合图3所示一个具体实施例说明本公开实施例的技术方案。在该具体实施例中主要包括如下三个处理流程:
1)数据采集流程:
步骤一:通过函数workload_capture_start开启负载特征采集流程。
步骤二:上层应用向数据库发送数据请求。
步骤三:数据库响应数据请求,在每一条SQL语句执行完的时候,通过日志***将相关会话号、事务号、语句内容、语句执行耗时、语句涉及到的表信息等记录到日志文件中。每个属性间以字符“||||”做分割,语句涉及到的表信息的子属性则以字符串“@@@@”做分割。
步骤四:通过workload_capture_stop结束采集流程。
2)预处理流程:
步骤一:将日志文件以sys_log外部表的方式引入到数据库中。
步骤二:将外部表转储为数据库自身引擎的表,在该表中新增会话类型ID、事务类型ID、语句类型ID三个属性列,将该表命名为sys_workload_quries。
步骤三:遍历表sys_workload_queries的每一条SQL语句的记录,对语句内容做参数化处理,具体操作为将语句内容的常量部分替换为“?”,例如将“where id>5”替换为“”where id>?”,然后对参数化后的内容做HASH计算,将得到的值作为语句类型ID更新到表sys_workload_queries里。
步骤四:遍历表sys_workload_queries中的所有事务号,将属于同一事务号内语句的语句类型ID做去重操作,然后合并处理后HASH计算得到哈希值作为事务类型ID,将事务类型ID更新到表sys_workload_queries里。
步骤五:遍历表sys_workload_queries的所有会话号,通过逐一比较两个会话包含的去重后事务类型ID的重复比例大于80%来判断是否为同一类会话,若是再将该两个会话的事务类型ID做去重合并后做HASH计算,将得到的哈希值做为会话类型ID更新到表里。
步骤六:新建sys_workload_tables表,列名包括表名、表ID、语句类型ID。将sys_workload_queries表里的语句类型ID做去重后,记录到该表中。
步骤七:将表sys_workload_queries中的语句类型ID做去重后,记录到该表sys_workload_tables中,如果一个SQL语句涉及多个表,则拆分为多条记录,并且通过***表查找多个表的表ID并更新至sys_workload_tables表中。
步骤八:结束预处理流程。
可以理解的是,预处理流程结束后,也即建立了结构化数据关系模型。
3)特征提取流程:
步骤一:通过函数workload_analyze_report进入特征提取流程
步骤二:以一个或多个会话类型ID为分组条件,聚集会话数量、会话耗时、事务类型数量、事务数量,得出会话级信息结果。
步骤三:对于每一种会话,以会话类型ID为过滤条件,通过事务类型ID分组,聚集执行次数、执行耗时、执行语句序列等,得出事务级信息结果。
步骤四:对于每一种会话,以会话类型ID为过滤条件,通过语句类型ID分组,聚集执行次数、执行耗时,得出语句级信息结果。
步骤五:对于每一种会话,以会话类型ID为过滤条件,通过连接sys_workload_queries和sys_workload_tables表中的语句类型ID,汇总得到该会话所涉及的所有表,然后查询***表后得到表名、表容量、属性个数、页面数、元组数、statistic信息等数据特征信息。
步骤六:基于提取的所有负载特征信息形成特征报告,结束特征提取流程。
本实施例中,遍历会话类型ID,对于每一种会话类型ID,分别以事务类型ID、语句类型ID为条件聚集出事务级、语句级信息,再以该会话类型ID所对应的语句类型ID找到会话涉及的所有表,通过***表查找获取其数据特征信息。
需要说明的是,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。另外,也易于理解的是,这些步骤可以是例如在多个模块/进程/线程中同步或异步执行。
基于同一构思,本公开实施例提供一种数据库负载特征处理装置,如图4中所示,该数据库负载特征处理装置40可以包括:数据采集模块401,用以在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识;所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话。数据预处理模块402,用以根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识。模型建立模块403,用以基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。
本公开实施例示出的上述数据库负载特征处理装置,关注到反应数据库操作特征的会话类型、事务类型、语句类型等信息,基于此建立反映数据库负载特征信息的结构化数据关系模型可以较为准确全面地刻画反映数据库的负载特征情况,从而利于后续的负载特征数据分析,为数据库管理员更好的配置数据库,使其工作在高效模式下提供较为准确全面的参考。
在本公开的一些实施例中,数据采集模块401在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识,具体可以包括:在每条SQL语句执行完成时,通过日志***获取每条SQL语句相关的语句信息、事务标识和会话标识;其中,所述语句信息至少包括语句内容、语句执行耗时以及语句涉及的表信息中的一个或多个。
在本公开的一些实施例中,数据预处理模块402根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识,具体可以包括:对每条SQL语句的语句内容做参数化处理,然后对参数化处理后的内容做哈希计算,将得到的哈希值作为语句类型标识。
在本公开的一些实施例中,数据预处理模块402对每条SQL语句的语句内容做参数化处理,具体可以包括:将每条SQL语句的语句内容的常量部分替换为预设字符。
在本公开的一些实施例中,数据预处理模块402根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识,具体可以包括:遍历每条SQL语句相关的事务标识,以确定归属于同一事务标识的SQL语句;获取归属于同一事务标识的SQL语句的语句类型标识,对该语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
在本公开的一些实施例中,数据预处理模块402还用以:在归属于同一事务标识的SQL语句有多个时,获取归属于同一事务标识的多个SQL语句对应的多个语句类型标识;去除该多个语句类型标识中的重复语句类型标识;基于去除后的剩余语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
在本公开的一些实施例中,数据预处理模块402根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识,具体可以包括:遍历每条SQL语句相关的会话标识和事务标识,以获取归属于同一会话标识所属的M个事务类型标识;M为大于等于2的自然数;去除同一会话标识所属的M个事务类型标识中的重复事务类型标识得到剩余N个事务类型标识;基于该剩余N个事务类型标识做哈希计算,将得到的哈希值作为会话类型标识。
在本公开的一些实施例中,数据预处理模块402还用以逐一比较相邻两个会话标识所属的剩余N个事务类型标识的重复比例,在该重复比例大于预设比例阈值时,确定该两个会话标识所表示的会话是同一会话;所述预设比例阈值是80%以上;去除该两个会话标识所属的剩余2N个事务类型标识中的重复事务类型标识得到剩余P个事务类型标识;基于该剩余P个事务类型标识做哈希计算,将得到的哈希值作为该同一会话的会话类型标识。
在本公开的一些实施例中,还可以包括数据特征获取模块,用以去除所有SQL语句的语句类型标识中的重复语句类型标识,得到剩余语句类型标识;基于该剩余语句类型标识获取所属的SQL语句涉及的表信息,基于该表信息获取数据特征信息。其中,所述数据特征信息至少包括表名、表容量、属性个数、页面数、元组数、统计信息中的一个或多个。
可选的,在本公开的一些实施例中,所述结构化数据关系模型还可以包括归属于语句特征信息的数据特征信息。所述会话特征信息可以包括但不限于会话数量、会话耗时、事务类型数量和事务总数中的一个或多个;所述事务特征信息可以包括但不限于事务执行次数、事务执行耗时、事务所属执行语句序列中的一个或多个;所述语句特征信息可以包括但不限于语句执行次数、语句执行耗时和语句内容中的一个或多个。
在本公开的一些实施例中,还可以包括信息转换处理模块,用以在所述根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识之前,将获取的每条SQL语句相关的语句信息、事务标识和会话标识并以预设文件格式记录写入日志文件中;将所述日志文件以外部表的形式引入数据库中,并将该外部表转换为数据库自身引擎的表;在转换后的该表中新增用以更新记录确定的会话类型标识、事务类型标识和语句类型标识的三个属性列。
在本公开的一些实施例中,还可以包括特征提取模块,用以获取待分析会话的会话类型标识;基于所述待分析会话的会话类型标识以及所述结构化数据关系模型,查询获取该待分析会话所属的会话特征信息、事务特征信息以及语句特征信息和数据特征信息中的一个或多个。
关于上述实施例中的装置,其中各个模块执行操作的具体方式以及带来的相应技术效果已经在有关该方法的实施例中进行了对应的详细描述,此处将不做详细阐述说明。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。作为模块或单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现木公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本公开实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项实施例所述数据库负载特征处理方法的步骤。
示例性的,该可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
本公开实施例还提供一种电子设备如数据库服务器,包括处理器以及存储器,存储器用于存储所述处理器的可执行指令。其中,所述处理器配置为经由执行所述可执行指令来执行上述任一项实施例中所述数据库负载特征处理方法的步骤。
下面参照图5来描述根据本发明的这种实施方式的电子设备600。图5显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同***组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述数据库负载特征处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示方法的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述数据库负载特征处理方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (15)

1.一种数据库负载特征处理方法,其特征在于,包括:
在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识;所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话;
根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识;
基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。
2.根据权利要求1所述的数据库负载特征处理方法,其特征在于,所述在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识,包括:
在每条SQL语句执行完成时,通过日志***获取每条SQL语句相关的语句信息、事务标识和会话标识;
其中,所述语句信息至少包括语句内容、语句执行耗时以及语句涉及的表信息中的一个或多个。
3.根据权利要求2所述的数据库负载特征处理方法,其特征在于,所述根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识,包括:
对每条SQL语句的语句内容做参数化处理,然后对参数化处理后的内容做哈希计算,将得到的哈希值作为语句类型标识。
4.根据权利要求3所述的数据库负载特征处理方法,其特征在于,所述对每条SQL语句的语句内容做参数化处理,包括:
将每条SQL语句的语句内容的常量部分替换为预设字符。
5.根据权利要求1所述的数据库负载特征处理方法,其特征在于,所述根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识,包括:
遍历每条SQL语句相关的事务标识,以确定归属于同一事务标识的SQL语句;
获取归属于同一事务标识的SQL语句的语句类型标识,对获取的语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
6.根据权利要求5所述的数据库负载特征处理方法,其特征在于,还包括:
在归属于同一事务标识的SQL语句有多个时,获取归属于同一事务标识的多个SQL语句对应的多个语句类型标识;
去除该多个语句类型标识中的重复语句类型标识;
基于去除后的剩余语句类型标识做哈希计算,将得到的哈希值作为事务类型标识。
7.根据权利要求1所述的数据库负载特征处理方法,其特征在于,所述根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识,包括:
遍历每条SQL语句相关的会话标识和事务标识,以获取归属于同一会话标识所属的M个事务类型标识;M为大于等于2的自然数;
去除同一会话标识所属的M个事务类型标识中的重复事务类型标识得到剩余N个事务类型标识;
基于该剩余N个事务类型标识做哈希计算,将得到的哈希值作为会话类型标识。
8.根据权利要求7所述的数据库负载特征处理方法,其特征在于,还包括:
逐一比较相邻两个会话标识所属的剩余N个事务类型标识的重复比例,在该重复比例大于预设比例阈值时,确定该两个会话标识所表示的会话是同一会话;所述预设比例阈值是80%以上;
去除该两个会话标识所属的剩余2N个事务类型标识中的重复事务类型标识得到剩余P个事务类型标识;
基于该剩余P个事务类型标识做哈希计算,将得到的哈希值作为该同一会话的会话类型标识。
9.根据权利要求1所述的数据库负载特征处理方法,其特征在于,还包括:
去除所有SQL语句的语句类型标识中的重复语句类型标识,得到剩余语句类型标识;
基于该剩余语句类型标识获取所属的SQL语句涉及的表信息,基于该表信息获取数据特征信息;
其中,所述数据特征信息至少包括表名、表容量、属性个数、页面数、元组数、统计信息中的一个或多个。
10.根据权利要求9所述的数据库负载特征处理方法,其特征在于,所述结构化数据关系模型还包括归属于语句特征信息的数据特征信息;所述会话特征信息包括会话数量、会话耗时、事务类型数量和事务总数中的一个或多个;所述事务特征信息包括事务执行次数、事务执行耗时、事务所属执行语句序列中的一个或多个;所述语句特征信息包括语句执行次数、语句执行耗时和语句内容中的一个或多个。
11.根据权利要求1~10任一项所述的数据库负载特征处理方法,其特征在于,在所述根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识之前,还包括:
将获取的每条SQL语句相关的语句信息、事务标识和会话标识并以预设文件格式记录写入日志文件中;
将所述日志文件以外部表的形式引入数据库中,并将该外部表转换为数据库自身引擎的表;
在转换后的该表中新增用以更新记录确定的会话类型标识、事务类型标识和语句类型标识的三个属性列。
12.根据权利要求10所述的数据库负载特征处理方法,其特征在于,还包括:
获取待分析会话的会话类型标识;
基于所述待分析会话的会话类型标识以及所述结构化数据关系模型,查询获取该待分析会话所属的会话特征信息、事务特征信息以及语句特征信息和数据特征信息中的一个或多个。
13.一种数据库负载特征处理装置,其特征在于,
数据采集模块,用以在每条SQL语句执行完成时采集记录每条SQL语句相关的语句信息、事务标识和会话标识;所述事务标识表示每条SQL语句归属的事务,所述会话标识表示每条SQL语句归属的事务所归属的会话;
数据预处理模块,用以根据每条SQL语句相关的语句信息确定每条SQL语句的语句类型标识;根据归属于同一事务标识的SQL语句的语句类型标识确定相应的事务类型标识;根据归属于同一会话标识的事务类型标识,确定相应的会话类型标识;
模型建立模块,用以基于确定的所有所述会话类型标识、事务类型标识以及语句类型标识,建立结构化数据关系模型;该结构化数据关系模型用以存储每种会话类型的会话特征信息,归属于该会话特征信息的事务特征信息以及归属于该事务特征信息的语句特征信息。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1~12任一项所述数据库负载特征处理方法的步骤。
15.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~12任一项所述数据库负载特征处理方法的步骤。
CN202010853809.4A 2020-08-24 2020-08-24 数据库负载特征处理方法、装置、介质和电子设备 Active CN111984625B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010853809.4A CN111984625B (zh) 2020-08-24 2020-08-24 数据库负载特征处理方法、装置、介质和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010853809.4A CN111984625B (zh) 2020-08-24 2020-08-24 数据库负载特征处理方法、装置、介质和电子设备

Publications (2)

Publication Number Publication Date
CN111984625A true CN111984625A (zh) 2020-11-24
CN111984625B CN111984625B (zh) 2023-09-15

Family

ID=73443971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010853809.4A Active CN111984625B (zh) 2020-08-24 2020-08-24 数据库负载特征处理方法、装置、介质和电子设备

Country Status (1)

Country Link
CN (1) CN111984625B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115914334A (zh) * 2022-12-05 2023-04-04 中国工商银行股份有限公司 数据库的访问会话处理方法、装置、设备及介质
CN116774970A (zh) * 2023-08-22 2023-09-19 北京启源问天量子科技有限公司 基于量子随机数的id生成方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140337283A1 (en) * 2013-05-09 2014-11-13 International Business Machines Corporation Comparing database performance without benchmark workloads
CN107480009A (zh) * 2017-08-18 2017-12-15 北京中电普华信息技术有限公司 一种事务恢复方法及装置
WO2018113534A1 (zh) * 2016-12-20 2018-06-28 阿里巴巴集团控股有限公司 一种数据库死锁的处理方法、装置和数据库***
CN111221869A (zh) * 2018-11-27 2020-06-02 北京京东振世信息技术有限公司 一种追踪数据库事务时间和分析数据库锁的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140337283A1 (en) * 2013-05-09 2014-11-13 International Business Machines Corporation Comparing database performance without benchmark workloads
WO2018113534A1 (zh) * 2016-12-20 2018-06-28 阿里巴巴集团控股有限公司 一种数据库死锁的处理方法、装置和数据库***
CN107480009A (zh) * 2017-08-18 2017-12-15 北京中电普华信息技术有限公司 一种事务恢复方法及装置
CN111221869A (zh) * 2018-11-27 2020-06-02 北京京东振世信息技术有限公司 一种追踪数据库事务时间和分析数据库锁的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王伟平;王子卿;: "Oracle用户SQL会话还原方法研究", 计算机工程与应用, no. 12 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115914334A (zh) * 2022-12-05 2023-04-04 中国工商银行股份有限公司 数据库的访问会话处理方法、装置、设备及介质
CN116774970A (zh) * 2023-08-22 2023-09-19 北京启源问天量子科技有限公司 基于量子随机数的id生成方法及装置

Also Published As

Publication number Publication date
CN111984625B (zh) 2023-09-15

Similar Documents

Publication Publication Date Title
JP6542785B2 (ja) 第一クラスデータベース要素としての半構造データの実装
US7480643B2 (en) System and method for migrating databases
WO2017019879A1 (en) Multi-query optimization
US20080140627A1 (en) Method and apparatus for aggregating database runtime information and analyzing application performance
JP2010524060A (ja) 分散コンピューティングにおけるデータマージング
CN112162983A (zh) 数据库索引建议处理方法、装置、介质和电子设备
CN111400338A (zh) Sql优化方法、装置、存储介质及计算机设备
CN111459698A (zh) 一种数据库集群故障自愈方法及装置
CN109213826B (zh) 数据处理方法和设备
CN107832333B (zh) 基于分布式处理和dpi数据构建用户网络数据指纹的方法和***
CN111984625B (zh) 数据库负载特征处理方法、装置、介质和电子设备
CN110795614A (zh) 一种索引自动优化方法及装置
CN110716950A (zh) 一种口径***建立方法、装置、设备及计算机存储介质
CN114817243A (zh) 数据库联合索引的建立方法、装置、设备及存储介质
CN106919566A (zh) 一种基于海量数据的查询统计方法及***
CN109101595B (zh) 一种信息查询方法、装置、设备及计算机可读存储介质
CN106776704B (zh) 统计信息收集方法和装置
CN115168389A (zh) 请求处理方法以及装置
Jiadi et al. Research on Data Center Operation and Maintenance Management Based on Big Data
CN115098029A (zh) 数据处理方法及装置
CN103577560B (zh) 一种输入数据库操作指令的方法和装置
CN110837508A (zh) 一种口径***建立方法、装置、设备及计算机存储介质
CN106776772B (zh) 一种数据检索的方法及装置
KR101638048B1 (ko) 맵리듀스를 이용한 sql 질의처리방법
CN117290355B (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
GR01 Patent grant
GR01 Patent grant