Elasticsearch入门

1.Elasticsearch入门

在企业级项目中,如果需要完成数量级较大搜索服务,传统数据库搜索会显得力不从心,性能和速度达不到真实业务需求,一般我们都会使用全文检索技术来进行替代。
常见的全文检索技术有:Solr、Elasticsearch等。
今天,我们要讲的是其中之一:Elasticsearch

1.1Elastic 概述

Elastic官网:https://www.elastic.co/cn/

Elastic有一条完整的产品线:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。

Logstash 是动态数据收集管道,拥有可扩展的插件生态系统。也就是数据的收集,处理和储存。
Elasticsearch 是一个基于 JSON 的分布式搜索和分析引擎。也就是数据的检索和分析。
Kibana 可视化 Elastic Stack 的窗户(工具)。探索数据并管理堆栈。也就是数据的可视化

1.2ElasticSearch介绍

1.2.1什么时候ElasticSearch

ElasticSearch是一个基于Lucene的搜索服务器,提供了一个分布式的全文搜索引擎。
Elasticsearch是用Java开发的,基于RESTful web接口,一个开源项目。
Elasticsearch是当前流行的企业级搜索引擎,能够达到实时搜索,且稳定,可靠,快速。

1.2.2下载

最新版本下载:https://www.elastic.co/cn/start

历史版本下载
https://www.elastic.co/cn/downloads/past-releases
https://www.elastic.co/cn/downloads/past-releases#elasticsearch

1.2.3安装

解压即可

1.3ElasticSearch使用

1.3.1启动

确定启动文件,bin目录下elasticsearch.bat命令,是用于启动elasticsearch的
在这里插入图片描述
步骤1:启动,双击启动程序


启动成功后,绑定的端口
9300:集群节点间通讯接口
9200:客户端访问接口

步骤2:访问,http://localhost:9200/

1.3.2无法启动

黑窗口闪烁后关闭
修改config\ elasticsearch.yml文件,添加如下内容

xpack.ml.enabled: false

1.4ElasticSearch常见配置

1.4.1JVM参数

Elasticsearch基于Lucene的,而Lucene底层是java实现,学习过程中,建议将jvm参数修改小一些。
修改 config/jvm.options,

1.4.2修改绑定IP(可选)

默认只允许本机访问

修改为0.0.0.0后则可以远程访问

network.host: 0.0.0.0

在这里插入图片描述
启动elasticsearch异常(黑窗口一闪关闭)
在这里插入图片描述
修改JDK配置
在这里插入图片描述
再次访问

1.5Kibana介绍

1.5.1什么是Kibana

Kibana是一个基于Node.js的Elasticsearch索引库数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。
而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。

1.5.2Kibana下载

下载历史版本:
https://www.elastic.co/cn/downloads/past-releases#kibana

1.5.3Kibana安装

解压zip即可
在这里插入图片描述

1.6Kibana使用

1.6.1启动

双击 /bin/kibana.bat 进行启动
在这里插入图片描述
启动成功
在这里插入图片描述

1.6.2访问

http://localhost:5601在这里插入图片描述

1.6.3控制台

点击左侧菜单“Dev Tools”就可以访问 ElasticSearch的控制台
在这里插入图片描述

1.6.4基本使用

在这里插入图片描述

1.7中文分词器

分词与分词器
分词 Analysis:对文本进行分析,将全文本转换一系列单词的过程。
分词器Analyzer :分词Analysis通过分词器Analyzer实现的。
默认es不会对中文进行分词

POST _analyze 
{
  "text": ["我是中国人"]  
}

在这里插入图片描述
使用ik_max_word 进行分词

POST _analyze 
{
  "analyzer": "ik_max_word", 
  "text": ["我是中国人"]  
}

在这里插入图片描述
安装IK分词器(支持中文分词)
IK分词器提供了源代码(maven项目),通过打包生产zip文件
https://github.com/medcl/elasticsearch-analysis-ik/releases


使用Kibana进行测试

POST _analyze
{
  "analyzer": "ik_max_word", 
  "text": ["我是中国人"]
}

在这里插入图片描述

1.8Kibana常见配置

1.8.1整合Elasticsearch(可选)

通过 config/kibana.yml文件,可以修改elasticsearch的服务地址

elasticsearch.url: "http://localhost:9200"

在这里插入图片描述
在这里插入图片描述

1.9head服务(可选)

1.9.1基本配置在这里插入图片描述

在这里插入图片描述
访问head服务,查阅以后索引信息

http://localhost:8084/head/index.html

在这里插入图片描述
使用head进行分词测试
在这里插入图片描述

1.9.2跨域问题:elasticsearch支持跨域

在elasticsearch的config目录下,修改elasticsearch.yml文件,添加跨域内容
在这里插入图片描述

#Cross domain
http.cors.enabled: true
http.cors.allow-origin: "*"

如果没有配置跨域,不能访问
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ElasticSearch是一个开源的分布式搜索引擎,基于Lucene库。它可以快速地存储、搜索和分析大量的数据。ElasticSearch被广泛用于日志分析、全文搜索、安全分析和商业智能等领域。 以下是ElasticSearch入门指南: 1. 安装ElasticSearch:你可以从ElasticSearch官网下载并安装ElasticSearch。根据你的操作系统选择相应的版本。 2. 启动ElasticSearch:启动ElasticSearch非常简单。只需在终端中运行elasticsearch命令即可。 3. 探索ElasticSearch:通过在浏览器中输入http://localhost:9200/,可以访问ElasticSearch的REST API,并能看到ElasticSearch的基本信息。 4. 创建索引:在ElasticSearch中,数据被存储在索引中。你可以通过发送PUT请求来创建一个新的索引。例如,你可以使用以下命令来创建一个名为“my_index”的新索引: ``` PUT /my_index { "settings": { "number_of_shards": 1, "number_of_replicas": 0 } } ``` 5. 添加文档:在ElasticSearch中,文档是指一个JSON对象。你可以使用以下命令将文档添加到“my_index”索引中: ``` PUT /my_index/_doc/1 { "title": "Elasticsearch入门", "author": "John", "content": "Elasticsearch是一个开源的分布式搜索引擎" } ``` 6. 搜索文档:你可以使用以下命令来搜索“my_index”索引中的所有文档: ``` GET /my_index/_search ``` 7. 进行查询:你可以使用查询语句来搜索“my_index”索引。例如,你可以使用以下命令来搜索标题包含“Elasticsearch”的所有文档: ``` GET /my_index/_search { "query": { "match": { "title": "Elasticsearch" } } } ``` 这就是ElasticSearch入门指南。对于更深入的学习,你可以查看ElasticSearch官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值