最近,因为接触ES(elasticSearch),在使用过程中需要做一些改进,想法不是那么成熟,现在还在试验阶段,有些地方可能说的不是很全面,还望各位担待,当然如果有好的建议,也欢迎留言!!!
一、遇到的问题
之前由于各个系统使用的ES都是各个系统自己负责,所以面临的问题就是管理起来比较麻烦,比如各个系统使用的版本不兼容,容量规划不能做到全局最优,各个系统业务和搜索耦合度高,当然还有数据的一致性问题
二、优化方案
此次介绍主要围绕的一个问题是,业务系统和搜索服务的高度耦合,搜索服务常用的操作无非是增删改查,我们只要把这些给解耦了,这个问题自然迎刃而解,我们先说说查询。目前的一个想法是通过sql转query dsl,各个业务系统自己编写sql,然后调用es的封装服务获取结果,这样查询就是业务系统自己来写,达到解耦的目的,初期打算使用开源的工具 https://github.com/NLPchina/elasticsearch-sql/blob/master/README.md(如果有别的好的欢迎推荐)
三、插件的使用
按照官方文档描述那样,直接用es 插件那种安装方式,直接不行
坑爹啊,只能凭经验来了,之前安装其他插件都是再 es 安装目录下 plugins 目录里放插件的,好吧,源码打包吧,打包完了之后,在plugins 目录下新建这些东东,就可以运行了
运行结果
四、插件的自定义
看着源码,不禁细想了下,自定义插件的实现过程(以上面的开源工程为例,个人理解)
第一步定义插件和处理模块
第二步,增加es-plugin.properties 文件
第三步,打成需要的包和依赖包,放到/plugins 目录下即可
五、后续
基于这样的插件,我们封装到我们自己的搜索服务中,实现插件式接口,顺利解决了查询耦合的问题。
相关推荐
本篇文章将重点讲解“ES同义词插件”——elasticsearch-analysis-dynamic-synonym-6.5.1,这是针对Elasticsearch 6.x版本的一个定制化插件,用于实现同义词处理功能。 标题中的"ES同义词插件 elasticsearch-...
标签中提到的`chrome`、`elasticsearch`和`es-head`分别对应了使用的浏览器类型、与之配合的数据库服务以及插件名称。这提示我们这个过程主要涉及Chrome浏览器和Elasticsearch的交互。 通过Elasticsearch Head,你...
本篇将详细介绍如何在Elasticsearch 7.17.8版本上安装和使用分词器插件。 **一、分词器插件的重要性** 在Elasticsearch中,分词器(Analyzer)负责对索引和查询的文本进行分析,将其拆分成一系列的分词。对于中文...
分享一套完整版视频课程——分布式搜索引擎Elasticsearch开发实战基础篇 (ElasticSearch、ELK、搜索引擎、Lucene),本教程旨在带领大家进入搜索引擎领域,从无到有,深入浅出的讲解了什么是搜索引擎,搜索引擎的...
本篇将详细介绍如何安装和使用Elasticsearch 5.6.4以及`head`插件。 ### 安装Elasticsearch 5.6.4 首先,我们需要下载Elasticsearch的5.6.4版本。通常,可以从Elasticsearch官方网站或者通过wget命令在线下载。...
ElasticSearch搜索引擎教程实战篇是ElasticSearch搜索引擎的实践教程,旨在帮助读者从基础知识到高级应用掌握ElasticSearch搜索引擎的使用。该教程涵盖了ElasticSearch搜索引擎的基础概念、安装、配置、使用Kibana、...
8. **插件与扩展**:了解Elasticsearch的生态系统,学习使用各种插件增强功能,如Kibana用于数据可视化,Logstash用于数据收集和处理,Beats用于轻量级数据发送。 9. **多租户支持**:探讨如何在同一个Elastic...
Elasticsearch 使用说明书整合篇详细解析 Elasticsearch(ES)是一种分布式、RESTful风格的搜索和数据分析引擎,常用于大数据分析和实时搜索场景。它不依赖传统的SQL数据库语句,而是采用JSON文档格式和HTTP协议...
本篇文章将深入探讨Elasticsearch插件的相关知识点。 ### 1. 插件类型 Elasticsearch插件分为两大类:官方插件和社区插件。官方插件由Elastic公司维护,与Elasticsearch版本保持同步更新,确保兼容性和稳定性;...
本篇文章将深入探讨如何调用ElasticSearch的Head插件,以及它在微服务项目中的应用。 Head插件是一个基于浏览器的轻量级界面,通过HTTP RESTful API与Elasticsearch集群交互。它的主要功能包括: 1. **集群状态...
9. **Kibana集成**: Kibana是Elasticsearch的数据可视化工具,通常与之配合使用。同样也有Windows版本,你可以下载并安装Kibana-7.17.6-windows-x86_64.zip,配置好连接Elasticsearch的地址,实现数据的可视化分析。...
本篇文章将详细介绍如何将Mybatis的Mapper方式与Elasticsearch的DSL(Domain Specific Language)查询相结合,以及如何通过CGlib实现动态代理来优化这一过程。 首先,让我们理解什么是Mybatis的Mapper方式。Mybatis...
"ElasticSearch 入门篇" ElasticSearch 是一个基于 Lucene 的搜索服务器,提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。ElasticSearch 是用 Java 开发的,并作为 Apache 许可条款下的开放...
- 描述:`ES head`是Elasticsearch的一个可视化管理插件,提供了用户友好的界面,方便查看索引、节点、文档等信息。 - 安装:将下载的head插件解压至`plugins`目录下,如`C:\elasticsearch\elasticsearch-1.4.4\...
- **安装插件**: 使用ElasticSearch的插件管理命令进行安装。 - **配置分词器**: 在ElasticSearch配置文件中启用并配置IK分词器。 **5.2 IK 分词器测试** - **测试分词效果**: 创建包含中文内容的文档,并使用IK...
4. **脚本和插件**:掌握如何编写和使用脚本进行复杂计算,以及安装和使用社区开发的插件来扩展Elasticsearch的功能。 5. **弹性伸缩**:了解如何在需求变化时动态调整集群规模,实现自动扩展和收缩。 6. **故障...
在搜索引擎和文本分析领域,Elasticsearch(简称ES)是一个广泛使用的开源解决方案,它提供了强大的全文检索、实时分析以及高可用性。为了更好地处理中文文档,Elasticsearch 提供了多种插件,其中最著名的就是 IK ...
Elasticsearch RTF (Rich Text Format) 是一个针对 Elasticsearch 的插件,专为处理和索引包含富文本数据的文档而设计。在1.6.0版本中,这个插件提供了更高效和灵活的方式来管理和检索具有复杂格式的文本内容,如...