(19)国家知识产权局
(12)发明 专利
(10)授权公告 号
(45)授权公告日
(21)申请 号 202210947847.5
(22)申请日 2022.08.09
(65)同一申请的已公布的文献号
申请公布号 CN 115033312 A
(43)申请公布日 2022.09.09
(73)专利权人 中化现代农业有限公司
地址 100069 北京市丰台区右安门街道西
铁营中路2号佑安国际大厦
(72)发明人 常庆伟 田兴 康林 毕旭东
马金良 蔡永维
(74)专利代理 机构 北京路浩知识产权代理有限
公司 11002
专利代理师 陈威
(51)Int.Cl.
G06F 9/448(2018.01)G06F 8/20(2018.01)
G06F 8/73(2018.01)
G06F 16/21(2019.01)
G06F 16/25(2019.01)
(56)对比文件
CN 108959 294 A,2018.12.07
CN 110543517 A,2019.12.0 6
US 2006129596 A1,20 06.06.15
猪之仆.“springboot操作es ”. 《https://
blog.csdn.net/article/detai ls/121143791》
.2021,
唐朝咖啡. ( “SpringBoot使用注解的方式构
建Elasticsearc h查询语句, 实现多条件的复杂
查询”. 《https://blog.csdn.net/u125 00848/
article/detai ls/100779286》 .2019,
审查员 王莉媛
(54)发明名称
ElasticSearc h数据操作方法及装置
(57)摘要
本发明涉及分布式数据存储技术领域, 提供
一种ElasticSearch数据操作方法及装置, 其方
法包括: 响应于数据操作接口下的操作请求, 获
取输入实参; 基于简化框架, 应用输入实参, 执行
数据操作接口对应的ES调用流程, 以完成操作 请
求对应的数据操作; ES调用流程是基于简化框
架, 应用数据 操作接口的注解信息, 输入 形参, 输
入形参的注 解信息, 以及数据操作接口对应实体
类的注解信息确定的; 实体类是基于输入形参
和/或数据操作接口对应的输出形参确定的, 实
现了仅需构建数据操作接口和实体类, 并标注注
解信息, 便可以完成对ES数据操作, 降低了ES数
据操作的使用门槛, 并降低了后续ES搜索业务的
开发和维护的难度。
权利要求书3页 说明书11页 附图3页
CN 115033312 B
2022.12.27
CN 115033312 B
1.一种ElasticSearc h数据操作方法, 其特 征在于, 包括:
响应于数据操作接口下的操作请求, 获取 所述数据操作接口对应的输入实参;
基于简化框架, 应用所述输入实参, 执行所述数据操作接口对应的ElasticSearch调用
流程, 以完成所述操作请求对应的数据操作;
所述ElasticSearch调用流程是所述简化框架基于所述数据操作接口的注解信息, 所
述数据操作接口对应的输入形参, 所述输入形参的注解信息, 以及所述数据操作接口对应
实体类的注解信息动态构建的; 所述实体类是基于所述输入形参和/或所述数据操作接口
对应的输出 形参确定的;
所述简化框架包括扫描模块和动态 代理模块;
所述ElasticSearc h调用流程的动态构建步骤如下, 包括:
在所述简化框架所在项目启动运行的情况下, 基于所述扫描模块, 扫描得到所述数据
操作接口; 并基于所述动态代理模块, 应用扫描得到的所述数据操作接口的注 解信息, 所述
数据操作接口对应的输入形参, 所述输入形参的注解信息, 以及所述数据操作接口对应实
体类的注解信息, 动态构建所述ElasticSearch调用流程, 并将所述ElasticSearch调用流
程注入到所述简化框架上 下文中;
所述基于所述动态代理模块, 应用扫描得到的所述数据操作接口的注解信息, 所述数
据操作接口对应的输入形参, 所述输入形参的注解信息, 以及所述数据操作接口对应实体
类的注解信息, 动态构建所述ElasticSearc h调用流程, 包括:
基于所述输入形参或者基于所述输入形参和所述输出 形参, 确定所述实体 类;
基于所述简化框架中的ES翻译函数, 应用所述数据操作接口的注解信息, 所述输入形
参, 所述输入形参的注解信息, 以及所述实体类的注解信息, 确定所述数据操作接口对应
ElasticSearc h操作请求接口和操作命令;
基于所述ElasticS earch操作请求接口和所述操作命令, 构建所述ElasticS earch调用
流程;
所述基于所述简化框架中的ES翻译函数, 应用所述数据操作接口的注解信息, 所述输
入形参, 所述输入形参的注解信息, 以及所述 实体类的注解信息, 确定所述数据操作接口对
应ElasticSearc h操作请求接口和操作命令, 包括:
基于所述数据操作接 口的注解信息, 确定所述数据操作接 口对应的ElasticSearch操
作请求接口;
将所述输入形参的注解信 息、 所述实体类的注解信 息和所述输入形参以对应的查询 构
建器进行封装, 并将封装得到的查询构建器和所述输入形参的注解信息中的必要性类型进
行组装, 得到所述数据操作接口对应的ElasticSearc h操作命令 。
2.根据权利要求1所述的ElasticSearch数据操作方法, 其特征在于, 所述基于所述
ElasticSearc h操作请求接口和所述操作命令, 构建所述ElasticSearc h调用流程, 包括:
若所述数据操作接口中包括所述输出形参, 则基于所述动态代理模块, 应用所述
ElasticSearch操作请求接口、 所述操作命令和输出封装流程, 构建所述ElasticSearch调
用流程; 所述输出封装流程包括将所述ElasticSearch操作请求接口执行所述操作命令的
请求结果封装成所述输出 形参的类型格式;
否则基于所述动态代理模块中的流程构建函数, 应用所述ElasticSearch操作请求接权 利 要 求 书 1/3 页
2
CN 115033312 B
2口和所述操作命令, 构建所述ElasticSearc h调用流程。
3.根据权利要求1或2所述的El asticSearch数据操作方法, 其特征在于, 所述数据操作
接口的注解信息包括数据操作类型和输出形参类型; 所述输入形参的注解信息包括查询条
件注解和/或查询排序注解; 所述查询条件注解包括数据字段名、 查询条件类型、 条件必要
类型、 查询类型、 范围类型和是否分组标签; 所述查询排序注解包括数据字段名和排序类
型; 所述实体类的注解信息包括类注 解信息和字段注解信息; 类注 解信息包括索引名; 所述
字段注解信息包括分词器 类型和字段别名。
4.根据权利要求2所述的ElasticSearch数据操作方法, 其特征在于, 所述基于简化框
架, 应用所述输入实参, 执 行所述数据操作接口对应的ElasticSearc h调用流程, 包括:
在当前监 听状态为正常的情况下, 基于所述简化框架, 应用所述输入实参, 执行所述数
据操作接口对应的ElasticSearch调用流程; 所述当前监听状态是基于所述动态代理模块
中的监听函数, 对ElasticSearc h服务端进行实时监听得到的。
5.一种ElasticSearc h数据操作装置, 其特 征在于, 包括:
响应模块, 用于响应于数据操作接口下的操作请求, 获取所述数据操作接口对应的输
入实参;
执行模块, 用于基于简化框架, 应用所述输入实参, 执行所述数据操作接口对应的
ElasticSearc h调用流程, 以完成所述操作请求对应的数据操作;
所述ElasticSearch调用流程是所述简化框架基于所述数据操作接口的注解信息, 所
述数据操作接口对应的输入形参, 所述输入形参的注解信息, 以及所述数据操作接口对应
实体类的注解信息动态构建的; 所述实体类是基于所述输入形参和/或所述数据操作接口
对应的输出 形参确定的;
所述简化框架包括扫描模块和动态 代理模块;
所述ElasticSearc h调用流程的动态构建步骤如下, 包括:
在所述简化框架所在项目启动运行的情况下, 基于所述扫描模块, 扫描得到所述数据
操作接口; 并基于所述动态代理模块, 应用扫描得到的所述数据操作接口的注 解信息, 所述
数据操作接口对应的输入形参, 所述输入形参的注解信息, 以及所述数据操作接口对应实
体类的注解信息, 动态构建所述ElasticSearch调用流程, 并将所述ElasticSearch调用流
程注入到所述简化框架上 下文中;
所述基于所述动态代理模块, 应用扫描得到的所述数据操作接口的注解信息, 所述数
据操作接口对应的输入形参, 所述输入形参的注解信息, 以及所述数据操作接口对应实体
类的注解信息, 动态构建所述ElasticSearc h调用流程, 包括:
基于所述输入形参或者基于所述输入形参和所述输出 形参, 确定所述实体 类;
基于所述简化框架中的ES翻译函数, 应用所述数据操作接口的注解信息, 所述输入形
参, 所述输入形参的注解信息, 以及所述实体类的注解信息, 确定所述数据操作接口对应
ElasticSearc h操作请求接口和操作命令;
基于所述Elastic
专利 ElasticSearch数据操作方法及装置
文档预览
中文文档
18 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-02-24 01:01:51上传分享