elasticsearch使用


Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Luncene的基础上,使用java开发,隐藏了Luncene的复杂性,提供了一套 RestFul Api。有兴趣的可以看下官方文档深入了解。

官方指南:https://www.elastic.co/guide/cn/elasticsearch/guide/current/intro.html

安装指南:安装包版本要保持一致

1.安装Elasticsearch,到官网下载适合自己的版本,高版本的接口现在使用已经非常方便快捷,安装完修改elasticsearch.yml,根据实际情况进行修改

   cluster.name: elasticsearch7.10  //集群名称
    node.name: es-node0       //节点名称
    path.data: /es/elasticsearch-7.10.0/data //数据路径
    path.logs: /es/elasticsearch-7.10.0/logs  //日志路径
    http.port: 9200    //服务端口
    network.host: 0.0.0.0   //服务访问IP
    cluster.initial_master_nodes: ["es-node0"]  //初始化需要的集群节点

2.安装Sence,Sence是一个Kibana应用,提供交互式控制台,方便对Elasticsearch中数据进行管理,安装完成修改kibana.yml

server.port: 5601     //服务端口
server.host: "0.0.0.0"    //服务访问IP
elasticsearch.hosts: ["http://192.168.1.2:9200"]    //es服务地址
kibana.index: ".kibana"
i18n.locale: "zh-CN"    //语言设置

3.安装Ik分词插件,把解压包放到Elasticsearch的安装路径plugin目录下即可(由于Elasticsearch默认中文使用单个分词,效果很差,需要使用插件提升搜索效率)

下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

需求注意的点:在实际使用中,参考官方文档提供的版本一致性方案,可以避免一些调试问题

运行环境:https://www.elastic.co/cn/support/matrix

Springboot版本:https://docs.spring.io/spring-data/elasticsearch/docs/4.0.1.RELEASE/reference/html/#preface.requirements

4.api接口调用示例

操作文档:https://www.elastic.co/guide/en/elasticsearch/client/java-rest/7.9/java-rest-high-supported-apis.html