CN117951221A - 多模语句处理方法、装置、计算机设备及存储介质 - Google Patents
多模语句处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN117951221A CN117951221A CN202410121029.9A CN202410121029A CN117951221A CN 117951221 A CN117951221 A CN 117951221A CN 202410121029 A CN202410121029 A CN 202410121029A CN 117951221 A CN117951221 A CN 117951221A
- Authority
- CN
- China
- Prior art keywords
- sentence
- template
- original
- processing
- comparison
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 137
- 238000003672 processing method Methods 0.000 title claims abstract description 37
- 238000000034 method Methods 0.000 claims abstract description 32
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 25
- 238000006467 substitution reaction Methods 0.000 claims abstract description 10
- 230000015654 memory Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000006978 adaptation Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了多模语句处理方法、装置、计算机设备及存储介质,包括:装载预设的语句处理信息;语句处理信息中包含内置算法、语句处理组,语句处理组中均包含语句比对模板、语句目标模板、参数替换链;获取原始语句,确定对应的原始语句模板;计算出原始语句模板的特征值,并将原始语句模板的特征值与各个语句处理组中对应的语句比对模板的特征值进行比对;判断所有的语句处理组中是否存在与原始语句模板匹配的语句比对模板;若存在,则将原始语句中提取出的所有参数按照匹配的语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成分布式数据库可执行的目标语句。本发明方法可实现对于分布式数据中的多模语句进行快速及高效的处理。
Description
技术领域
本发明涉及分布式数据库技术领域,具体涉及一种多模语句处理方法、装置、计算机设备以及非易失性计算机可读存储介质。
背景技术
分布式数据库(DDB,Distributed Database)是一种数据库,其中数据存储在不同的物理位置,它可能存储在位于同一物理位置(例如数据中心)的多台计算机中,或者可能分散在互连计算机的网络中。分布式数据库一般由多个存储节点和计算节点构成,由于过去的商业数据库有多种类型,它们在标准SQL基础上进行了一些拓展;这其中,尤其是甲骨文Oracle数据库,拓展了PLSQL标准。PLSQL支持了多种高级数据库对象,如包、包体、存储过程等,在语法方面也在标准的SQL基础上进行了一些拓展。在分布式数据库出现后,应用程序迁移到分布式数据库时经常会出现语法不兼容、或者是执行效率差的情况,导致需要对应用层进行代码修改以适配数据库,或者是数据库层面对语法进行兼容以适配应用层。这两种适配方法都非常繁琐,且均需要代码的编译和反复验证,极大增加了业务替换数据库的难度。
当前的SQL语句处理方式,主要聚焦于不兼容语句的转换方面,一般分为下述几种类型:一种是倾向于在数据库之外提供一个语法转换的工具,将不兼容的SQL语句进行改写,之后将完成转换的工具添加到应用的代码中;另一种则是在数据库中内置一个关键字搜索引擎,根据对语句的关键字检索来对SQL语句中的关键字进行替换;还有一种则是将SQL语句进行解析,将其中的部分片段进行替换。以上现有的这些SQL语句处理方式,针对的目标都是符合SQL语法的数据库结构化查询语句,都需要进行完整的语法解析流程,将SQL语句中所有的操作子句和操作词法解析出来,才能够进行后续的替换。即现有的SQL语句处理方式无法解决在客户端请求语句无法解析、或者客户端请求语句不是任意一种已知的SQL语句时,对语句进行处理的问题。
基于此,如何提供一种多模语句处理方法、装置、计算机设备以及非易失性计算机可读存储介质,可实现对于分布式数据中的多模语句进行快速及高效的处理,是目前本领域技术人员亟待解决的问题。
发明内容
鉴于上述现有技术的不足之处,本发明的目的在于提供一种多模语句处理方法、装置、计算机设备以及非易失性计算机可读存储介质,可实现对于分布式数据中的多模语句进行快速及高效的处理。
为了达到上述目的,本发明采取了以下技术方案:
一种多模语句处理方法,应用于分布式数据库,其中,所述方法包括:
装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;
获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;
根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;
基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;
若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
在进一步的技术方案中,所述的多模语句处理方法,其中,所述装载预设的语句处理信息,包括:
在所述分布式数据库链路初始化时,装载预设的语句处理信息。
在进一步的技术方案中,所述的多模语句处理方法,其中,所述装载预设的语句处理信息,包括:
在接收到用户的操作指令时,在所述分布式数据库已经存在的链路上动态装载预设的语句处理信息。
在进一步的技术方案中,所述的多模语句处理方法,其中,所述获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板,包括:
获取客户端请求发送的原始语句;
确定并记录所述原始语句中所有参数的位置并根据序号从零开始排序;
提取所述所有参数,并将所述原始语句中提取后的原参数位置均替换为特定符号,以得到所述原始语句对应的原始语句模板。
在进一步的技术方案中,所述的多模语句处理方法,其中,所述根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对,包括:
根据预设的所述内置算法,分别计算出所述原始语句模板、以及各个所述语句处理组中对应的语句比对模板的特征值;
将所述原始语句模板的特征值分别与各个所述语句处理组中对应的语句比对模板的特征值进行逐条比对;
生成所述原始语句模板与各个所述语句处理组中对应的语句比对模板的特征值比对结果。
在进一步的技术方案中,所述的多模语句处理方法,其中,所述若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句,包括:
若存在与所述原始语句模板匹配的语句比对模板,则表示所述原始语句模板所对应的原始语句与所述语句比对模板所对应的语句处理组完成匹配;
则按照该语句处理组中对应的参数替换链给定的顺序,将所述原始语句中提取出的所述所有参数依序替换入该语句处理组中对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
在进一步的技术方案中,所述的多模语句处理方法,其中,所述若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句之后,包括:
将所述目标语句在所述分布式数据库中进行执行,并将执行结果返回给所述客户端。
一种多模语句处理装置,应用于分布式数据库,其中,所述装置包括:
装载模块,用于装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;
获取模块,用于获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;
计算模块,用于根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;
判断模块,用于基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;
替换模块,用于若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
一种计算机设备,其中,所述计算机设备包括至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器上存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行时,可实现如上述任一项所述的多模语句处理方法。
一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时,可实现如上述任一项所述的多模语句处理方法。
相较于现有技术,本发明提供了一种多模语句处理方法、装置、计算机设备以及非易失性计算机可读存储介质,应用于分布式数据库,其中,所述方法包括:装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。这样,通过本发明的方法可实现对于分布式数据中的多模语句进行快速及高效的处理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种多模语句处理方法的流程示意图。
图2为本发明实施例提供的一种多模语句处理装置的功能模块示意图。
图3为本发明实施例提供的一种计算机设备的硬件结构示意图。
具体实施方式
为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
在本发明的描述中,所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本申请的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
下面结合附图,详细说明本发明的各种非限制性实施方式。
分布式数据库(DDB,Distributed Database)是一种数据库,其中数据存储在不同的物理位置,它可能存储在位于同一物理位置(例如数据中心)的多台计算机中,或者可能分散在互连计算机的网络中。分布式数据库一般由多个存储节点和计算节点构成,由于过去的商业数据库有多种类型,它们在标准SQL基础上进行了一些拓展;这其中,尤其是甲骨文Oracle数据库,拓展了PLSQL标准。PLSQL支持了多种高级数据库对象,如包、包体、存储过程等,在语法方面也在标准的SQL基础上进行了一些拓展。在分布式数据库出现后,应用程序迁移到分布式数据库时经常会出现语法不兼容、或者是执行效率差的情况,导致需要对应用层进行代码修改以适配数据库,或者是数据库层面对语法进行兼容以适配应用层。这两种适配方法都非常繁琐,且均需要代码的编译和反复验证,极大增加了业务替换数据库的难度。
当前的SQL语句处理方式,主要聚焦于不兼容语句的转换方面,一般分为下述几种类型:一种是倾向于在数据库之外提供一个语法转换的工具,将不兼容的SQL语句进行改写,之后将完成转换的工具添加到应用的代码中;另一种则是在数据库中内置一个关键字搜索引擎,根据对语句的关键字检索来对SQL语句中的关键字进行替换;还有一种则是将SQL语句进行解析,将其中的部分片段进行替换。以上现有的这些SQL语句处理方式,针对的目标都是符合SQL语法的数据库结构化查询语句,都需要进行完整的语法解析流程,将SQL语句中所有的操作子句和操作词法解析出来,才能够进行后续的替换。即现有的SQL语句处理方式无法解决在客户端请求语句无法解析、或者客户端请求语句不是任意一种已知的SQL语句时,对语句进行处理的问题。
基于此,如何提供一种多模语句处理方法、装置、计算机设备以及非易失性计算机可读存储介质,可实现对于分布式数据中的多模语句进行快速及高效的处理,是目前本领域技术人员亟待解决的问题。
因此,为了解决上述问题,请参阅图1,本发明实施例提供了一种多模语句处理方法,应用于分布式数据库,其中,所述方法包括步骤:
S100、装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法f、以及一个或者多个语句处理组(O-T-S),每个所述语句处理组(O-T-S)中均包含有一个语句比对模板O、一个与之对应的语句目标模板T、以及所述语句比对模板O与所述语句目标模板T之间对应的参数替换链S;
具体地,其中,所述装载预设的语句处理信息,包括:
在所述分布式数据库链路初始化时,装载预设的语句处理信息;
具体地,其中,所述装载预设的语句处理信息,包括:
在接收到用户的操作指令时,在所述分布式数据库已经存在的链路上动态装载预设的语句处理信息;
具体实施时,本实施例中,即在所述分布式数据库链路初始化时,装载预设的语句处理信息,或者,在接收到用户的操作指令时,在所述分布式数据库已经存在的链路上动态装载预设的语句处理信息;
其中,所述语句处理信息中包含有内置算法f、以及一个或者多个语句处理组(O-T-S),每个所述语句处理组(O-T-S)中均包含有一个语句比对模板O、一个与之对应的语句目标模板T、以及所述语句比对模板O与所述语句目标模板T之间对应的参数替换链S;
S200、获取原始语句P,确定并记录所述原始语句P中所有参数V(1..n)的位置,并将所述所有参数V(1..n)提取后均替换为特定符号,以得到所述原始语句P对应的原始语句模板P*;
具体地,其中,所述获取原始语句P,确定并记录所述原始语句P中所有参数V(1..n)的位置,并将所述所有参数V(1..n)提取后均替换为特定符号,以得到所述原始语句P对应的原始语句模板P*,包括:
获取客户端请求发送的原始语句P;
确定并记录所述原始语句P中所有参数V(1..n)的位置并根据序号从零开始排序;
提取所述所有参数V(1..n),并将所述原始语句P中提取后的原参数位置均替换为特定符号,以得到所述原始语句P对应的原始语句模板P*;
具体实施时,本实施例中,先获取客户端请求发送的原始语句P,其中,原始语句P可以是一种数据库结构化查询语句(SQL),也可以是一段非SQL的程序语言(C语言/JAVA语言等程序语言)代码,或者是一段自然语言,语句的格式本身无任何限制;
然后,再确定并记录所述原始语句P中所有参数V(1..n)的位置并根据序号从零开始排序,最后,提取所述所有参数V(1..n),并将所述原始语句P中提取后的原参数位置均替换为一个特定符号,以此得到所述原始语句P对应的原始语句模板P*;
即,本实施例中,在对原始语句P进行处理时,不会通过分布式数据库解析流程,也不需要判断原始语句P中是否包含有数据库SQL语法关键字或预设语句片段,也不需要进行词法分析,仅需要识别出原始语句P中所有参数V(1..n)的位置并将其提取出,然后再将提取后的原参数位置均替换为一个特定符号,并去除语句中所有的空格,将所有字符统一转换为大写或小写,由此生成的是一串无空格的字符,也就是一个不包含具体参数值的语句模板(即原始语句模板P*);
S300、根据所述内置算法f,计算出所述原始语句模板P*的特征值f(P*),并将所述原始语句模板P*的特征值f(P*)与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值f(O)进行比对;
具体地,其中,所述根据所述内置算法f,计算出所述原始语句模板P*的特征值f(P*),并将所述原始语句模板P*的特征值f(P*)与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值f(O)进行比对,包括:
根据预设的所述内置算法f,分别计算出所述原始语句模板P*、以及各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值f(O);
将所述原始语句模板P*的特征值f(P*)分别与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值f(O)进行逐条比对;
生成所述原始语句模板P*与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值比对结果;
具体实施时,本实施例中,先根据预设的所述内置算法f,分别计算出所述原始语句模板P*、以及各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值f(O),然后,再将所述原始语句模板P*的特征值f(P*)分别与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值f(O)进行逐条比对,最后,以此生成所述原始语句模板P*与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值比对结果;
S400、基于特征值比对结果,判断所有的所述语句处理组(O-T-S)中是否存在与所述原始语句模板P*匹配的语句比对模板O;
具体实施时,本实施例中,在生成所述原始语句模板P*与各个所述语句处理组(O-T-S)中对应的语句比对模板O的特征值比对结果之后,然后,再基于所述特征值比对结果,判断所有的所述语句处理组(O-T-S)中是否存在与所述原始语句模板P*匹配的语句比对模板O;
S500、若存在,则将所述原始语句P中提取出的所述所有参数V(1..n)按照匹配的所述语句处理组(O-T-S)中对应的参数替换链S替换入对应的语句目标模板T中,以生成所述分布式数据库可执行的目标语句;
具体地,其中,所述若存在,则将所述原始语句P中提取出的所述所有参数V(1..n)按照匹配的所述语句处理组(O-T-S)中对应的参数替换链S替换入对应的语句目标模板T中,以生成所述分布式数据库可执行的目标语句,包括:
若存在与所述原始语句模板P*匹配的语句比对模板O,则表示所述原始语句模板P*所对应的原始语句P与所述语句比对模板O所对应的语句处理组(O-T-S)完成匹配;
则按照该语句处理组(O-T-S)中对应的参数替换链S给定的顺序,将所述原始语句P中提取出的所述所有参数V(1..n)依序替换入该语句处理组(O-T-S)中对应的语句目标模板T中,以生成所述分布式数据库可执行的目标语句;
具体实施时,本实施例中,若存在与所述原始语句模板P*匹配的语句比对模板O,则表示所述原始语句模板P*所对应的原始语句P与所述语句比对模板O所对应的语句处理组(O-T-S)完成匹配;则按照该语句处理组(O-T-S)中对应的参数替换链S给定的顺序,将所述原始语句P中提取出的所述所有参数V(1..n)依序替换入该语句处理组(O-T-S)中对应的语句目标模板T中,以生成所述分布式数据库可执行的目标语句;其中,所述目标语句为SQL语句。这样,通过本实施例的方法即可保证分布式数据库对于任意一种由客户端请求发送的原始语句(即多模语句,包括SQL、非SQL的代码语言、自然语言等),无需对其语法、语法模式、关键字等进行识别或解析,就可以直接进行快速及高效的处理,执行效率高。
进一步地,在本发明一可选实施例中,所述的多模语句处理方法,其中,所述若存在,则将所述原始语句P中提取出的所述所有参数V(1..n)按照匹配的所述语句处理组(O-T-S)中对应的参数替换链S替换入对应的语句目标模板T中,以生成所述分布式数据库可执行的目标语句之后,包括:
将所述目标语句在所述分布式数据库中进行执行,并将执行结果返回给所述客户端。
具体实施时,本实施例中,即在生成所述分布式数据库可执行的目标语句之后,然后,再将所述目标语句在所述分布式数据库中进行执行,并将执行结果返回给所述客户端。
由以上方法实施例可知,本发明提供的多模语句处理方法,应用于分布式数据库,其中,所述方法包括:装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。这样,通过本发明的方法可实现对于分布式数据中的多模语句进行快速及高效的处理。
应该理解的是,虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤,这些操作步骤并不是必然按照实施例或流程图的顺序依次执行。实施例或流程图中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。需要说明的是,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施例的描述可以理解,不同实施例中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。而且,实施例或流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流、交替或者同步地执行。
基于上述实施例,请参阅图2,本发明另一实施例还提供了一种多模语句处理装置,应用于分布式数据库,其中,所述装置包括:
装载模块11,用于装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;
获取模块12,用于获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;
计算模块13,用于根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;
判断模块14,用于基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;
替换模块15,用于若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
具体实施方式见上述方法实施例,此处不再赘述。
基于上述实施例,请参阅图3,本发明另一实施例还提供了一种计算机设备,其中,所述计算机设备10包括:
存储器120以及一个或多个处理器110,图3中以一个处理器110为例进行介绍,处理器110和存储器120可以通过通信总线或者其他方式连接,图3中以通过通信总线连接为例。
处理器110用于完成计算机设备10的各种控制逻辑,其可以为通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、单片机、ARM(Acorn RISCMachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其它这种配置。
存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的多模语句处理方法对应的计算机程序。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行计算机设备10的各种功能应用以及数据处理,即实现上述方法实施例中的多模语句处理方法。
存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,可实现如上述任一项方法实施例中的多模语句处理方法,例如,可实现以上描述的图1中的方法步骤S100至步骤S500。
本领域技术人员可以理解,图3中示出的硬件结构示意图,仅仅是与本发明方案相关的部分结构的示意图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多的部件,或者组合某些部件,或者具有不同的部件布置。
基于上述实施例,本发明还提供了一种非易失性计算机可读存储介质,其中,所述非易失性计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时,可实现如上述任一项方法实施例中的多模语句处理方法,例如,可实现以上描述的图1中的方法步骤S100至步骤S500。
作为示例,非易失性存储介质能够包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦ROM(EEPROM)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(RAM)。通过说明并非限制,RAM可以以诸如同步RAM(SRAM)、动态RAM、(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、Synch link DRAM(SLDRAM)以及直接Rambus(兰巴斯)RAM(DRRAM)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。
本发明的另一种实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,可实现如上述任一项方法实施例中的多模语句处理方法,例如,可实现以上描述的图1中的方法步骤S100至步骤S500。
以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)执行各个实施例或者实施例的某些部分的方法。
除了其他之外,诸如“能够”、“能”、“可能”或“可以”之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地还旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。
已经在本文中、在本说明书和附图中描述的内容包括能够提供一种多模语句处理方法、装置、计算机设备以及非易失性计算机可读存储介质的示例。当然,不能够出于描述本公开的各种特征的目的来描述元件和/或方法的每个可以想象的组合,但是可以认识到,所公开的特征的许多另外的组合和置换是可能的。因此,显而易见的是,在不脱离本公开的范围或精神的情况下能够对本公开做出各种修改,但是,所有这些各种修改都应属于本发明所附权利要求的保护范围。此外,或在替代方案中,本公开的其他实施例从对本说明书和附图的考虑以及如本文中所呈现的本公开的实践中可能是显而易见的。意图是,本说明书和附图中所提出的示例在所有方面被认为是说明性的而非限制性的。尽管在本文中采用了特定术语,但是它们在通用和描述性意义上被使用并且不用于限制的目的。
Claims (10)
1.一种多模语句处理方法,应用于分布式数据库,其特征在于,所述方法包括:
装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;
获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;
根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;
基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;
若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
2.根据权利要求1所述的多模语句处理方法,其特征在于,所述装载预设的语句处理信息,包括:
在所述分布式数据库链路初始化时,装载预设的语句处理信息。
3.根据权利要求1所述的多模语句处理方法,其特征在于,所述装载预设的语句处理信息,包括:
在接收到用户的操作指令时,在所述分布式数据库已经存在的链路上动态装载预设的语句处理信息。
4.根据权利要求1、2或3所述的多模语句处理方法,其特征在于,所述获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板,包括:
获取客户端请求发送的原始语句;
确定并记录所述原始语句中所有参数的位置并根据序号从零开始排序;
提取所述所有参数,并将所述原始语句中提取后的原参数位置均替换为特定符号,以得到所述原始语句对应的原始语句模板。
5.根据权利要求4所述的多模语句处理方法,其特征在于,所述根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对,包括:
根据预设的所述内置算法,分别计算出所述原始语句模板、以及各个所述语句处理组中对应的语句比对模板的特征值;
将所述原始语句模板的特征值分别与各个所述语句处理组中对应的语句比对模板的特征值进行逐条比对;
生成所述原始语句模板与各个所述语句处理组中对应的语句比对模板的特征值比对结果。
6.根据权利要求5所述的多模语句处理方法,其特征在于,所述若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句,包括:
若存在与所述原始语句模板匹配的语句比对模板,则表示所述原始语句模板所对应的原始语句与所述语句比对模板所对应的语句处理组完成匹配;
则按照该语句处理组中对应的参数替换链给定的顺序,将所述原始语句中提取出的所述所有参数依序替换入该语句处理组中对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
7.根据权利要求6所述的多模语句处理方法,其特征在于,所述若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句之后,包括:
将所述目标语句在所述分布式数据库中进行执行,并将执行结果返回给所述客户端。
8.一种多模语句处理装置,应用于分布式数据库,其特征在于,所述装置包括:
装载模块,用于装载预设的语句处理信息;其中,所述语句处理信息中包含有内置算法、以及一个或者多个语句处理组,每个所述语句处理组中均包含有一个语句比对模板、一个与之对应的语句目标模板、以及所述语句比对模板与所述语句目标模板之间对应的参数替换链;
获取模块,用于获取原始语句,确定并记录所述原始语句中所有参数的位置,并将所述所有参数提取后均替换为特定符号,以得到所述原始语句对应的原始语句模板;
计算模块,用于根据所述内置算法,计算出所述原始语句模板的特征值,并将所述原始语句模板的特征值与各个所述语句处理组中对应的语句比对模板的特征值进行比对;
判断模块,用于基于特征值比对结果,判断所有的所述语句处理组中是否存在与所述原始语句模板匹配的语句比对模板;
替换模块,用于若存在,则将所述原始语句中提取出的所述所有参数按照匹配的所述语句处理组中对应的参数替换链替换入对应的语句目标模板中,以生成所述分布式数据库可执行的目标语句。
9.一种计算机设备,其特征在于,所述计算机设备包括至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器上存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行时,可实现如权利要求1-7任一项所述的多模语句处理方法。
10.一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机程序,所述计算机程序被至少一个处理器执行时,可实现如权利要求1-7任一项所述的多模语句处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410121029.9A CN117951221A (zh) | 2024-01-29 | 2024-01-29 | 多模语句处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410121029.9A CN117951221A (zh) | 2024-01-29 | 2024-01-29 | 多模语句处理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117951221A true CN117951221A (zh) | 2024-04-30 |
Family
ID=90791959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410121029.9A Pending CN117951221A (zh) | 2024-01-29 | 2024-01-29 | 多模语句处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117951221A (zh) |
-
2024
- 2024-01-29 CN CN202410121029.9A patent/CN117951221A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108717470B (zh) | 一种具有高准确度的代码片段推荐方法 | |
EP4007951A2 (en) | Multi-lingual line-of-code completion system | |
JP4427500B2 (ja) | 意味解析装置、意味解析方法および意味解析プログラム | |
US9811321B1 (en) | Script compilation | |
JP6849741B2 (ja) | モデル駆動型ドメイン固有検索を実行する方法及びシステム | |
US20050091588A1 (en) | Device for structured data transformation | |
EP4204968B1 (en) | Unit test case generation with transformers | |
US9754083B2 (en) | Automatic creation of clinical study reports | |
US20240070053A1 (en) | Automatic generation of assert statements for unit test cases | |
US20230342287A1 (en) | Automating test-driven development with transformers | |
JP2022091685A (ja) | プログラミング言語コーパスの生成 | |
US20090119652A1 (en) | Computer Program Functional Partitioning System for Heterogeneous Multi-processing Systems | |
CN113190675A (zh) | 文本摘要生成方法、装置、计算机设备和存储介质 | |
Sharma et al. | Lerna: transformer architectures for configuring error correction tools for short-and long-read genome sequencing | |
US10884996B1 (en) | Systems and methods for optimizing automatic schema-based metadata generation | |
CN112148392B (zh) | 一种函数调用链获取方法、装置及存储介质 | |
CN117951221A (zh) | 多模语句处理方法、装置、计算机设备及存储介质 | |
US7505904B2 (en) | Database construction apparatus and method | |
CN116383234A (zh) | 一种搜索语句生成方法、装置、计算机设备及存储介质 | |
CN110704437B (zh) | 数据库查询语句的修改方法、装置、设备和存储介质 | |
CN113076089A (zh) | 一种基于对象类型的api补全方法 | |
Renders et al. | Approximate pattern matching using search schemes and in-text verification | |
CN113031952A (zh) | 深度学习模型的执行代码的确定方法、装置及存储介质 | |
CN112416431B (zh) | 一种基于编码序列表示的源代码片段成对比较方法 | |
CN114969131B (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 |