行业标准网
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211135223.X (22)申请日 2022.09.19 (71)申请人 中电云数智科技有限公司 地址 430058 湖北省武汉市蔡甸区经济技 术开发区人工智能科技园N栋研发楼3 层N3013号 (72)发明人 刘晓敏  (74)专利代理 机构 北京尚钺知识产权代理事务 所(普通合伙) 11723 专利代理师 王海荣 (51)Int.Cl. G06F 16/242(2019.01) G06F 16/22(2019.01) (54)发明名称 一种在分库分表模式下可视化SQL请求路由 的方法 (57)摘要 本发明涉及数据库技术领域, 提供一种在分 库分表模式下可视化SQL请求路由的方法, 包括: 根据用户的链路追踪请求, 创建SQL请求; 向创建 的SQL请求中添加链路追踪注解, 将添加链路追 踪注解的SQL请求发送至分库分表系统; 解析分 库分表系统接收的添加链路追踪注解的SQL请 求, 获得链路唯一标识和片段唯一标识; 采用链 路唯一标识和片段唯一标识构造链路追踪上下 文, 将获得的链路追踪上下文在分库分表系统中 执行SQL请求的方法中传递; 通过在分库分表系 统中执行SQL请求的方法中传递的链路追踪上下 文向物理数据库发送SQL请求。 本发明在分库分 表模式下可视化SQL请求路由的方法, 可以在链 路追踪系统中看到SQL请求最终在哪些物理数据 库上执行, 执行耗时是多少。 权利要求书1页 说明书4页 附图1页 CN 115455030 A 2022.12.09 CN 115455030 A 1.一种在分库分表模式下 可视化SQ L请求路由 的方法, 其特 征在于, 所述方法, 包括: 步骤S1: 根据用户的链路追踪请求, 创建SQ L请求; 步骤S2: 向创建的SQL请求中添加链路追踪注解, 将添加链路追踪注解的SQL请求发送 至分库分表系统; 步骤S3: 解析分库分表系统接收的添加链路追踪注解的SQL请求, 获得链路 唯一标识和 片段唯一标识; 步骤S4: 采用步骤S3获得的链路唯一标识和片段唯一标识构造链路追踪上下文, 将获 得的链路追踪上 下文在分库分表系统中执 行SQL请求的方法中传递; 步骤S5: 通过在分库分表系统中执行SQL请求的方法中传递的链路追踪上下文向物理 数据库发送SQ L请求。 2.根据权利要求1所述的在分库分表模式下可视化SQL请求路由的方法, 其特征在于, 步骤S2中, 链路追踪注解由版本号、 链路唯一标识、 片段唯一标识以及当前跟踪标志组成。 3.根据权利要求2所述的在分库分表模式下可视化SQL请求路由的方法, 其特征在于, 步骤S2中, 链路追踪注解的当前跟踪标志用于标记 链路数据是否被追踪采样。 4.根据权利要求1所述的在分库分表模式下可视化SQL请求路由的方法, 其特征在于, 步骤S3, 包括: 在添加链路追踪注解的SQL请求中截取链路追踪注解, 并对链路追踪注解字 符串进行分割, 得到链路唯一标识和片段唯一标识的字符串。 5.根据权利要求1所述的在分库分表模式下可视化SQL请求路由的方法, 其特征在于, 步骤S4中, 将获得的链路追踪上 下文在分库分表系统中执 行SQL请求的方法中传递, 包括: 当链路追踪上下文传递到每个执行SQL请求的方法时, 在当前执行SQL请求的方法执行 之前, 向所述链路追踪上下文中加入当前执行SQL请求的方法 的名称、 执行开始时间, 生成 一个新的链路追踪上 下文; 将新的链路追踪上 下文传递至下一个执 行SQL请求的方法; 在下一个执行SQL请求的方法执行结束后, 回到当前执行SQL请求的方法继续执行, 当 前执行SQL请求的方法执行结束后, 在当前执行SQL请求的方法对应的链路追踪 上下文中加 入当前执行SQL请求的方法的执 行结束时间。 6.根据权利要求1所述的在分库分表模式下可视化SQL请求路由的方法, 其特征在于, 步骤S5, 包括: 当链路追踪上下文传递至物理数据库请求方法时, 向物理数据库 发送SQL请 求, 在传递至物理数据库请求方法的链路追踪上 下文中加入物理数据库的名称。 7.根据权利要求1所述的在分库分表模式下可视化SQL请求路由的方法, 其特征在于, 所述方法, 包括: 通过分库分表系统中每个执行SQL请求的方法的链路追踪 上下文追踪对应 的物理数据库以及查看SQ L请求在物理数据库上的执 行耗时。 8.一种计算机存储介质, 其特征在于, 所述计算机存储介质上存储计算机程序, 所述计 算机程序被执 行时, 执行如权利要求1 ‑7任一所述的方法。 9.一种计算机设备, 其特征在于, 所述计算机设备包括存储器、 处理器及存储在所述存 储器上并可在所述处理器上运行的计算机程序, 所述处理器执行所述程序时执行如权利要 求1‑7任一所述的方法。权 利 要 求 书 1/1 页 2 CN 115455030 A 2一种在分库分表模式下可视化SQL 请求路由的方 法 技术领域 [0001]本发明涉及数据库技术领域, 尤其涉及一种在分库分表模式下可视化SQL请求路 由的方法。 背景技术 [0002]在大数据、 高并发的场景下, 由于数据库单机可能存在IO瓶颈和CPU瓶颈, 会导致 数据库的响应变慢, 极端情况下, 甚至可能导致数据库宕机。 分库分表技术在这种情况下诞 生。 [0003]根据我们对性能或者容量的要求, 对单表进行拆分, 使原来存储在一张表的数据 均匀分布到若干分片表中, 然后将这些分片表均匀分布到物理数据库中。 比如, 一张用户 表, 规划容量为存储1亿条数据, 将其拆分为100张分片用户表, 每张分片用户表存储100万 数据。 如图1所示, 将这 100张分片用户表分布到10个物理数据库中, 每个物理数据库承载10 张分片用户表。 分库分表后, 数据在物理数据库和分片表中均匀分布。 数据分片后, 一个SQL 请求经过分库分表系统计算后, 会将这个SQL请求改写, 然后路由到具体的物理数据库上去 执行, 有可能路由到一个物理数据库执行, 也有 可能路由到多个物理数据库执行。 物理数据 库的执行结果, 在分库分表系统汇总后返回给请求发起 者。 [0004]由于分库分表系统的复杂性, 其在实际应用中存在以下不足: 1.使用分库分表系 统的开发者在发起SQL请求后无法辨识返回的结果从何而来; 2.当返回的请求结果不符合 预期时无法进行排 查。 [0005]因此, 如何提供一种分库分表系统中SQL请求路由可视化的方法, 使开发者可以根 据路由信息, 去对应的物理数据库上执行SQL请求验证分库分表系统返回的结果, 成为亟待 解决的技 术问题。 发明内容 [0006]有鉴于此, 为了克服现有技术的不足, 本发明提供一种在分库分表模式下可视化 SQL请求路 由的方法, 使开发者能够识别和查看SQL请求被路 由到哪些物理数据库, 使开发 者可以验证SQL请求结果如何产生, 便于开发者查看SQL请求在物理数据库上执行的耗时, 对物理数据库的性能进行评估。 [0007]一方面, 本发明提供一种在分库分表模式下 可视化SQ L请求路由 的方法, 包括: [0008]步骤S1: 根据用户的链路追踪请求, 创建SQ L请求; [0009]步骤S2: 向创 建的SQL请求中添加链路追踪注解, 将添加链路追踪注解 的SQL请求 发送至分库分表系统; [0010]步骤S3: 解析分库分表系统接收的添加链路追踪注解的S QL请求, 获得链路唯一标 识和片段唯一标识; [0011]步骤S4: 采用步骤S3获得的链路唯一标识和片段唯一标识构造链路追踪上下文, 将获得的链路追踪上 下文在分库分表系统中执 行SQL请求的方法中传递;说 明 书 1/4 页 3 CN 115455030 A 3

.PDF文档 专利 一种在分库分表模式下可视化SQL请求路由的方法

文档预览
中文文档 7 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共7页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种在分库分表模式下可视化SQL请求路由的方法 第 1 页 专利 一种在分库分表模式下可视化SQL请求路由的方法 第 2 页 专利 一种在分库分表模式下可视化SQL请求路由的方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 11:31:44上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。