文章目录
ES搜索引擎之ES介绍,安装以及辅助插件Kibana的安装
ElasticSearch介绍
1.1为什么会有ElasticSearch搜索引擎
1.在海量的数据中执行搜索功能时,如果使用MySQL,效率太低,如下图:
2.如果关键字输入的不准确,一样可以搜索到想要的数据,如下图:
3.将搜索关键字,以红色的字体展示,如下图:
1.2ES的介绍
ES是一个使用Java语言并且基于Lucene编写的搜索引擎框架,他提供了分布式的全文搜索功能,提供了一个统一的基于RESTful风格的WEB接口,官方客户端也对多种语言都提供了相应的API。
Lucene:Lucene本身就是一个搜索引擎的底层。
分布式:ES主要是为了突出他的横向扩展能力。
全文检索:将一段词语进行分词,并且将分出的单个词语统一的放到一个分词库中,在搜索时,根据关键字去分词库中检索,找到匹配的内容。(倒排索引,就像平常在查字典的时候,先找目录,然后再找具体某一页的具体内容。)
RestFul风格的WEB接口:操作ES很简单,只需要发送一个HTTP请求,并且根据请求方式的不同,携带参数的不同,执行相应的功能。
1.3什么是倒排索引
倒排序就是我们会先把存放的数据进行分词,就比如说"我是中国人"这条数据,会被分词成"我",“是”,“中国”,“人”,然后会把这些分词都存放到分词库里面,并且会加上相关的索引,这样当我们客户端输入关键词"谁分词"的时候,ES服务会分成两步,第一步是对关键字进行分词"谁",“中国”,然后第二步是得到分词库中对应的索引然后去存放数据的地方通过索引寻找数据,“谁”,”中国“对应的索引是1,2,3,所以在存放数据的地方查询到的数据是"我是谁",“中国”,“我是中国人”,具体分析过程,如下图:
ElasticSearch的安装
下载elasticsearch安装包
解压到linux系统的/opt目录
# 将elasticsearch安装包解压到/opt文件夹下,-C 大写
tar -zxvf elasticsearch-7.16.2-linux-x86_64.tar.gz -C /opt
创建普通用户
因为安全问题,Elasticsearch不允许root用户直接运行,所以要创建新用户,在root用户中创建新用户,执行如下命令:
useradd wangxuan #新增wangxuan用户
passwd wangxuan #为wangxuan用户设置密码
修改elasticsearch.yml文件
配置信息的含义:
cluster.name:配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称
node.name:节点名,elasticsearch会默认随机指定一个名字,建议指定一个有意义的名称,方便管理
network.host:设置为0.0.0.0允许外网访问
http.port:Elasticsearch的http访问端口
cluster.initial_master_nodes: 初始化新的集群时需要此配置来选举master
启动ES
在bin目录中通过elasticsearch可执行文件启动ES,但是刚开始启动的时候会报一个错误,如下图:
报错原因,如下图:
修改ES的所属用户,如下图:
切换到wangxuan用户,并启动ES,如下图:
进行内存的配置:
#需要修改三个文件中的内容,如下:
#在第一个文件后加上下面的内容
vim /etc/security/limits.conf
#在文件末尾增加下面内容
wangxuan soft nofile 65536
wangxuan hard nofile 65536
#在第二个文件后加上下面内容
vim /etc/security/limits.d/20-nproc.conf
#在文件末尾中增加下面内容
wangxuan soft nofile 65536
wangxuan hard nofile 65536
* hard nproc 4096
# 注: *代表Linux所有用户名称
#在第三个文件后加上下面内容
vim /etc/sysctl.conf
# 在文件中增加下面内容
vm.max_map_count=655360
# 重新加载,输入下面命令
sysctl -p
修改完上面的配置文件之后,重新切换到wangxuan用户,然后启动ES,如下图:
启动成功之后去浏览器访问
访问自己的阿里云服务器中的ES,如下图:
Elasticsearch辅助插件的安装
Kibana安装
Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索,查看交互存储在Elasticsearch索引中的数据。使用Kibana,可以通过各种图表进行高级数据分析及展示。
Kibana让海量数据更容易理解。它操作简单,基于浏览器的用户界面可以快速创建仪表板(dashboard)实时显示Elasticsearch查询动态。
解压Kibana
tar -zxvf kibana-7.16.2-linux-x86_64.tar.gz -C /opt
修改kibana配置
server.port: 5601
server.host: "0.0.0.0"
server.name: "kibana-itcast"
elasticsearch.hosts: ["http://182.92.210.39:9200"]
elasticsearch.requestTimeout: 99999
server.port: http访问端口号
server.host: ip地址,0.0.0.0表示可远程访问
server.name: kibana服务名
elasticsearch.hosts: elasticsearch地址
elasticsearch.requestTimeout: 请求elasticsearch超时时间,默认为30000,此处可根据情况设置
启动kibana
正确的启动方式,如下图:
注意:启动kibana的时候,一定要先把ElasticSearch给启动。
但是启动kibana的时候遇到了一个问题,就是启动kibana之后,ElasticSearch服务自杀killed了?纳尼,如下图:
原因:具体是什么原因造成的呢?是因为默认的堆内存是2g,但是我的机器的堆内存没有那么大,所以我修改一下,把堆内存改成200m就可以了,如下图:
刚开始我改成了512m,不过结果还是不行,后来我又修改了一下,把堆内存改成了200m就可以了。
重新启动es服务,kibana服务,发现kibana服务可以在浏览器上访问了,如下图:
本文转自 https://blog.csdn.net/qq_45950109/article/details/122439559,如有侵权,请联系删除。