[发明专利]一种基于Elasticsearch的数据库多表关联查询速度优化方法在审
申请号: | 202111532940.1 | 申请日: | 2021-12-15 |
公开(公告)号: | CN114385680A | 公开(公告)日: | 2022-04-22 |
发明(设计)人: | 刘小磊;戚林成;程伟华;承轶青;章路进;贺敬伟 | 申请(专利权)人: | 江苏电力信息技术有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/242;G06F16/27;G06F11/14 |
代理公司: | 南京汇盛专利商标事务所(普通合伙) 32238 | 代理人: | 陈扬 |
地址: | 210024 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 elasticsearch 数据库 关联 查询 速度 优化 方法 | ||
1.一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于,所述方法包括以下步骤:
S1、数据存储层优化步骤,基于Elasticsearch对数据存储层进行底层优化,提高检索速度时效;
S2、数据同步层优化步骤,根据预设同步策略,对优化后的数据存储层进行同步操作;
S3、数据检索层优化步骤,基于Elasticsearch的预设检索策略,根据用户需求,完成对同步后数据的检索,生成检索结果;
S4、数据引用层优化步骤,根据Elasticsearch当前占用的文件句柄以及支持命令的最大数量,提前将关联的检索信息进行索引,实现检索结果的存储,检索时提取检索结果;
S5、应用层优化步骤,承接数据检索层的所述检索结果,按照预设集成策略,完成应用层集成;
S6、计算查询请求的分页参数,并与分页阈值进行比较,根据比较的结果确定向Elasticsearch发送数据请求的方式,并发送数据查询请求;
S7、连接多张数据库表的查询,对多表连接查询的SQL进行抽取,用于查询数据库数据并同步到Elasticsearch的宽表中,当监听到SQL中所关联表的数据变更时,触发数据同步,把数据同步到Elasticsearch中,使用定时器,定时运行SQL,把数据从数据库批量同步到Elasticsearch中,使用拦截器,拦截到SQL的查询请求后,通过查询Elasticsearch的宽表以提高查询效率。
2.根据权利要求1所述的一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于:所述S2中数据同步层包括:
(1)获取单元,用于获取用户输入的检索数据查询指令;
(2)确定单元,用于根据所述检索数据查询指令确定聚合统计参数;
(3)生成单元,用于根据所述聚合统计参数和所述检索数据查询指令,生成综合查询语句;
(4)查询单元,用于根据所述综合查询语句进行基于Elasticsearch的查询,得到数据查询结果。
3.根据权利要求2所述的一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于:所述确定单元包括解析子单元,用于对查询语句进行解析处理,得到查询语句中的统计函数。
4.根据权利要求1所述的一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于:所述S2中数据同步层优化步骤包括,数据存储层的数据跑批情况,采取不同的同步策略:若跑批数据不变,可以采取一次全量同步的同步策略,若数据定时跑批,可以采取实时同步的同步策略。
5.根据权利要求1所述的一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于:所述S3中数据检索层优化步骤包括基于es-head插件、kibana的检索策略,借助api的检索策略,所述api的检索策略可以是javaapi中的es restclient api或transport client。
6.根据权利要求1所述的一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于:所述S5中应用层优化步骤包括rest服务集成策略,原项目中增加REST访问适配器和数据解析适配器,建立一个新项目作为es检索服务为原项目提供RESTAPI接口,jdk集成策略,将新检索编译为jar包集成入原项目。
7.根据权利要求1所述的一种基于Elasticsearch的数据库多表关联查询速度优化方法,其特征在于:所述S6中当分页参数小于分页阈值时,向Elasticsearch发送查询数据请求,当分页参数大于分页阈值时,则需要通过Redis数据库的二级缓存中获取,缓存无法命中的情况下,向Elasticsearch发送查询数据请求后进行缓存。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏电力信息技术有限公司,未经江苏电力信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111532940.1/1.html,转载请声明来源钻瓜专利网。