[发明专利]一种多表联合查询效率提升方法有效
申请号: | 202010880649.2 | 申请日: | 2020-08-27 |
公开(公告)号: | CN112069207B | 公开(公告)日: | 2023-10-03 |
发明(设计)人: | 谢仙宝;袁锐;匡勇 | 申请(专利权)人: | 重庆攸亮科技股份有限公司 |
主分类号: | G06F16/2453 | 分类号: | G06F16/2453;G06F16/2455;G06F16/248 |
代理公司: | 重庆百润洪知识产权代理有限公司 50219 | 代理人: | 程宇 |
地址: | 401336 *** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 联合 查询 效率 提升 方法 | ||
本发明涉及多表联合查询技术领域,特别涉及一种多表联合查询效率提升方法;包括以下步骤:步骤一:用户在前端页面提交请求参数;步骤二:前端页面获取用户提交的请求参数,采用异步请求调用后端站点,后端站点接收到请求参数后,请求后端服务进行查询;步骤三:后端服务在接收到查询分页数据和查询总数的请求后,检查任务缓存中是否包含对应的计算页码任务缓存;步骤四:前端页面在接收分页结构数据后,生成数据表格。本发明通过对查询总数和查询特定分页数据的过程进行优化,能够加快查询速度,提高查询效率。
技术领域
本发明涉及多表联合查询技术领域,特别涉及一种多表联合查询效率提升方法。
背景技术
该方法主要解决数据变化不大情况下,数据库水平分表分页查询效率问题。数据变化不大,是指数据库中很少更新相关字段或删除数据行。数据库采用水平分表,可采用按时间、按取值范围、取值Hash等方式。
众所周知,分页查询前端展示主要分为两个部分:数据表格显示和分页页码显示。构造前端需要的数据,需要在后端执行查询总数sql和查询当前分页sql,查询当前分页sql的结果返回当前分页数据,查询总数sql用于返回总数并构造页码。
采用水平分表存储方案,可避免单表存储数据量过大时存储检索问题。水平分表分页查询处理原理:根据特定条件检索遍历分表,查询总数和查询分页数据。查询水平分表分页主要需要解决检索范围未知和查询结果合并的问题。分表分页sql查询一般的处理情况是,在单个请求中对分表进行union处理,然后进行查询条件筛选,最后获取总数和分页数据。采用这种方式从实际应用来看,查询缓慢、效率不够高效。
为此,提出一种多表联合查询效率提升方法。
发明内容
本发明的目的在于提供一种多表联合查询效率提升方法,该方法通过对查询总数和查询特定分页数据的过程进行优化,能够加快查询速度,提高查询效率。
为了实现上述目的,本发明的技术方案如下:
一种多表联合查询效率提升方法,包括以下步骤:
步骤一:用户在前端页面根据查询需求,提交包括查询条件和排序条件的请求参数;
步骤二:前端页面获取用户提交的请求参数,采用异步请求调用后端站点,后端站点接收到请求参数后,请求后端服务进行查询,查询过程包括查询分页数据和查询总数两个过程;
步骤三:后端服务在接收到查询分页数据和查询总数的请求后,检查任务缓存中是否包含对应的计算页码任务缓存,如果包含对应的计算页码任务缓存,从任务缓存中获取对应的计算页码任务进行计算和查找,如果未包含对应的计算页码任务缓存,创建计算总数任务,生成完总数任务后,使用单独的调度线程对任务缓存中的计算页码任务进行查找和后续计算分配,后端服务处理后得到分页结构数据,并将分页结构数据返回给前端页面;
步骤四:前端页面在接收分页结构数据后,生成数据表格。
具体的,所述步骤一中查询条件包括字段、操作符和查询值。
具体的,所述步骤一中排序条件包括字段和排序符号。
具体的,所述步骤二中后端站点包括后端站点分页查询接口和后端站点总数接口,所述后端服务为后端服务分页查询接口,所述任务缓存为内存数据字典。
具体的,所述步骤三中查询分页数据的具体过程:
(51)采用异步请求调用后端站点分页查询接口,后端站点分页查询接口收到请求参数后,添加当前会话编号,请求后端服务分页查询接口;
(52)后端服务分页查询接口接收到请求参数后,根据请求参数中的查询条件使用哈希算法创建任务编号;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆攸亮科技股份有限公司,未经重庆攸亮科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010880649.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种氮气柜自动开合门密封机构
- 下一篇:一种铜线退火镀锡机的上油装置