数据库系统的语句处理方法、存储介质与设备技术方案

技术编号:35569628 阅读:19 留言:0更新日期:2022-11-12 15:53
本发明专利技术提供了一种数据库系统的语句处理方法、存储介质与设备,语句处理方法包括:获取所述数据库的应用系统发送的数据访问语句;使用语句识别模型确定所述数据访问语句的读写属性,所述语句识别模型通过对所述数据访问语句及其读写属性的样本数据训练得到;根据所述数据访问语句的读写属性将获取到的所述数据访问语句发送至所述数据库系统对应的节点,以由所述对应的节点进行处理。通过使用预先训练得到的语句识别模型确定数据访问语句的读写属性,能够准确识别应用系统发送的数据访问语句的读写属性,对于一些应用系统功能变化不大的数据库系统来说,采用语句识别模型有助于简化程序,从而优化性能。从而优化性能。从而优化性能。

【技术实现步骤摘要】
数据库系统的语句处理方法、存储介质与设备


[0001]本专利技术涉及数据库
,特别是涉及一种数据库系统的语句处理方法、存储介质与设备。

技术介绍

[0002]在读写分离数据库集群中,通常会提供特制的中间件或驱动程序分发应用系统发送过来的SQL(Structured Query Language,结构化查询语言)语句到主节点或者备节点,因为只有主节点才可以处理写请求的SQL语句,备节点作为集群的冗余备份节点对外提供只读服务,做了SQL语句读写的分发后可以大幅降低主节点的压力,从而提升集群整体的性能。
[0003]其中,判定SQL语句的读写属性是实现读写分离的关键。在现有技术中,通常有两种方式判断SQL语句的读写属性。一种是引入SQL解析器判断SQL语句的读写属性,这种方式会造成中间件或驱动程序过度臃肿,同时庞大的解析器带来了性能的浪费,并且数据库外部的解析器不做查询的话无法真正解析视图函数等数据库对象。另一种是关键字匹配结合配置参数共同判断SQL语句的读写属性,关键字主要使用INSERT(插入)、UPDATE(更新)、DELETE(删除)等SQL语句的语法关键字,配置参数可以针对性的将某些SQL语句、某些表的操作标记为读或者写,这种方式判定逻辑简陋且易误判。

技术实现思路

[0004]本专利技术的一个目的是要提供一种能够简化程序的数据库系统的语句处理方法、存储介质与设备。
[0005]本专利技术一个进一步的目的是要便于及时对语句识别模型进行更新。
[0006]特别地,本专利技术提供了一种数据库系统的语句处理方法,包括:
[0007]获取所述数据库的应用系统发送的数据访问语句;
[0008]使用语句识别模型确定所述数据访问语句的读写属性,所述语句识别模型通过对所述数据访问语句及其读写属性的样本数据训练得到;
[0009]根据所述数据访问语句的读写属性将获取到的所述数据访问语句发送至所述数据库系统对应的节点,以由所述对应的节点进行处理。
[0010]可选地,所述数据库系统包括:
[0011]至少一个主节点,所述主节点用于处理写属性的数据访问语句;
[0012]至少一个备节点,所述备节点用于处理读属性的数据访问语句。
[0013]可选地,所述语句识别模型的训练步骤包括:
[0014]获取所述数据库的应用系统的数据访问语句样本数据;
[0015]将所述样本数据中的数据访问语句默认标记为读属性,并将所述数据访问语句发送至所述备节点执行;
[0016]判断所述备节点是否报错,若是,判定所述数据访问语句为写属性并修正所述语
句识别模型,若否,判定所述数据访问语句为读属性并记入所述语句识别模型。
[0017]可选地,获取所述数据库的应用系统的数据访问语句样本数据的步骤包括:
[0018]触发所述应用系统的所有流程;
[0019]获取所述数据库处理所述流程的日志;
[0020]从所述日志中抓取每个所述流程对应的数据访问语句,将抓取到的所有所述数据访问语句作为样本数据。
[0021]可选地,获取所述数据库的应用系统的数据访问语句样本数据的步骤之后包括:
[0022]将所述数据访问语句标准化处理。
[0023]可选地,所述语句识别模型配置为将无法识别的数据访问语句判定为读属性。
[0024]可选地,根据所述数据访问语句的读写属性将获取到的所述数据访问语句发送至所述数据库系统对应的节点的步骤之后包括:
[0025]记录所述备节点的报错信息。
[0026]可选地,记录所述备节点的报错信息的步骤之后包括:
[0027]判断所述报错信息的计数是否超过阈值,若是,输出更新所述语句识别模型的提醒。
[0028]根据本专利技术的另一个方面,还提供了一种机器可读存储介质,其上存储有机器可执行程序,所述机器可执行程序被处理器执行时实现上述任一项中的语句处理方法。
[0029]根据本专利技术的又一个方面,还提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的机器可执行程序,并且所述处理器执行所述机器可执行程序时实现上述任一项中的语句处理方法。
[0030]本专利技术的语句处理方法,获取所述数据库的应用系统发送的数据访问语句,使用语句识别模型确定数据访问语句的读写属性,根据数据访问语句的读写属性将获取到的数据访问语句发送至数据库系统对应的节点,以由对应的节点进行处理。其中,语句识别模型通过应用系统的数据访问语句样本数据预先训练得到。因此,语句识别模型能够准确识别应用系统发送的数据访问语句的读写属性,而且采用预先训练的语句识别模型识别数据访问语句的读写属性能够简化工作过程中的判断流程。所以,对于一些应用系统功能变化不大的数据库系统来说,采用语句识别模型有助于简化数据库系统的程序,从而优化数据库系统的运行性能,并且有效地减少了人工干预。
[0031]进一步地,本专利技术的语句处理方法,通过使语句识别模型将无法识别的数据访问语句判定为读属性,并且记录备节点的报错信息。也就是说,若应用系统发生功能变化,使得语句识别模型获取到了未训练识别过的数据访问语句,就会将这种无法识别的数据访问语句判定为读属性,继而发送至备节点执行。因为备节点用于处理读属性的数据访问语句,所以当语句识别模型无法识别的数据访问语句实际为写属性时,备节点无法对实际为写属性的数据访问语句进行处理,备节点就会报错。通过记录备节点的报错信息,既使得操作人员能够人工查询到备节点的报错信息记录情况,也可以在报错信息的技术超过阈值时输出提醒,从而使得操作人员能够及时对语句识别模型进行更新,进而保证数据库系统的正常运行。
[0032]根据下文结合附图对本专利技术具体实施例的详细描述,本领域技术人员将会更加明了本专利技术的上述以及其他目的、优点和特征。
附图说明
[0033]后文将参照附图以示例性而非限制性的方式详细描述本专利技术的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
[0034]图1是根据本专利技术一个实施例的数据库系统的的示意图;
[0035]图2是根据本专利技术一个实施例的数据库系统的语句处理方法的示意性流程图;
[0036]图3是根据本专利技术一个实施例的数据库系统的语句处理方法中的语句识别模型的训练步骤的示意性流程图;
[0037]图4是根据本专利技术另一个实施例的数据库系统的语句处理方法的示意性流程图;
[0038]图5是根据本专利技术又一个实施例的数据库系统的语句处理方法的示意性流程图;
[0039]图6是根据本专利技术一个实施例的机器可读存储介质的示意图;
[0040]图7是根据本专利技术一个实施例的计算机设备的示意图。
具体实施方式
[0041]本领域技术人员应当理解的是,下文所描述的实施例仅仅是本专利技术的一部分实施例,而不是本专利技术的全部实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库系统的语句处理方法,包括:获取所述数据库的应用系统发送的数据访问语句;使用语句识别模型确定所述数据访问语句的读写属性,所述语句识别模型通过对所述数据访问语句及其读写属性的样本数据训练得到;根据所述数据访问语句的读写属性将获取到的所述数据访问语句发送至所述数据库系统对应的节点,以由所述对应的节点进行处理。2.根据权利要求1所述的数据库系统的语句处理方法,其中,所述数据库系统包括:至少一个主节点,所述主节点用于处理写属性的数据访问语句;至少一个备节点,所述备节点用于处理读属性的数据访问语句。3.根据权利要求2所述的数据库系统的语句处理方法,其中,所述语句识别模型的训练步骤包括:获取所述数据库的应用系统的数据访问语句样本数据;将所述样本数据中的数据访问语句默认标记为读属性,并将所述数据访问语句发送至所述备节点执行;判断所述备节点是否报错,若是,判定所述数据访问语句为写属性并修正所述语句识别模型,若否,判定所述数据访问语句为读属性并记入所述语句识别模型。4.根据权利要求3所述的数据库系统的语句处理方法,其中,获取所述数据库的应用系统的数据访问语句样本数据的步骤包括:触发所述应用系统的所有流程;获取所述数据库处理所述流程的日志;从所...

【专利技术属性】
技术研发人员:王明军李翔
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1