System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种分布式数据库的语句执行方法、装置、存储介质及电子设备制造方法及图纸_技高网

一种分布式数据库的语句执行方法、装置、存储介质及电子设备制造方法及图纸

技术编号:42613473 阅读:7 留言:0更新日期:2024-09-03 18:20
本发明专利技术公开了一种分布式数据库的语句执行方法、装置、存储介质及电子设备。其中方法包括:获取待执行语句,所述待执行语句包括至少一个子语句,每一所述子语句包括变量信息;在语句模板缓存库中确定每一所述子语句命中的语句模板,所述语句模板中包括变量标识;确定所述语句模板对应的执行计划缓存数据,基于所述语句模板中变量标识对应的变量信息在所述执行计划缓存数据中确定每一子语句对应的执行计划信息;基于至少一个子语句分别对应的执行计划信息确定所述待执行语句对应的目标执行计划信息;基于所述目标执行计划信息执行所述待执行语句。简化了待执行语句的目标执行计划信息的确定过程,降低了待执行语句的执行耗时。

【技术实现步骤摘要】

本专利技术涉及计算机,尤其涉及一种分布式数据库的语句执行方法、装置、存储介质及电子设备


技术介绍

1、在分布式数据库的分库分表场景下,需确定待执行语句的执行计划,此处的待执行语句的执行计划可以是分库分表的路由信息。

2、在实现本专利技术的过程中,发现现有技术中至少存在以下技术问题:待执行语句的执行计划的确定过程存在一定的耗时,尤其是在大量待执行语句包括重复或类似的语句的情况下,频繁执行重复或类似语句的执行计划导致待执行语句的执行耗时高,影响对数据库的访问性能。


技术实现思路

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、应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。

本文档来自技高网...

【技术保护点】

1.一种分布式数据库的语句执行方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述在语句模板缓存库中确定每一所述子语句命中的语句模板,包括:

3.根据权利要求1或2所述的方法,其特征在于,所述语句模板缓存库中包括顺序排布的多个语句模板;

4.根据权利要求1所述的方法,其特征在于,所述语句模板与执行计划缓存数据关联存储,所述执行计划缓存数据中包括所述语句模板的变量标识设置为不同变量信息情况下分别对应的执行计划信息。

5.根据权利要求4所述的方法,其特征在于,在不同的子语句命中同一语句模板的情况下,所述语句模板中的变量标识对应不同子语句中的变量信息;在一个子语句命中一个语句模板的情况下,所述语句模板中的变量标识对应所述子语句中的变量信息;

6.根据权利要求1所述的方法,其特征在于,所述执行计划信息中包括分库名和分表名的一项或多项;

7.根据权利要求1所述的方法,其特征在于,所述方法还包括:

8.一种分布式数据库的语句执行装置,其特征在于,包括:

9.一种电子设备,其特征在于,所述电子设备包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的分布式数据库的语句执行方法。

...

【技术特征摘要】

1.一种分布式数据库的语句执行方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述在语句模板缓存库中确定每一所述子语句命中的语句模板,包括:

3.根据权利要求1或2所述的方法,其特征在于,所述语句模板缓存库中包括顺序排布的多个语句模板;

4.根据权利要求1所述的方法,其特征在于,所述语句模板与执行计划缓存数据关联存储,所述执行计划缓存数据中包括所述语句模板的变量标识设置为不同变量信息情况下分别对应的执行计划信息。

5.根据权利要求4所述的方法,其特征在于,在不同的子语句命中同一语句模板的情况下,所述语句模板中的变量标识对应不同子语...

【专利技术属性】
技术研发人员:张俊杰
申请(专利权)人:京东科技信息技术有限公司
类型:发明
国别省市:

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

1