栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Elaticsearch学习1

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Elaticsearch学习1

立个Flag2022年春节看完ES视频,技能掌握达到80%
说明:本文是学习千锋教育视频课程的个人笔记记录,视频链接如下。感谢千峰教育,感谢讲师的讲解和分享
千锋教育ElasticSearch教程(深入讲解,一套掌握)
视频地址:https://www.bilibili.com/video/BV1Zz4y1R7tq?p=5&spm_id_from=pageDriver
1-7节笔记:
1介绍
1.1引言
1.在海量数据中执行搜索功能时,如果使用mysql,效率太低;
2.如果关键字输入的不准确,一样可以搜索到想要的数据;
3.将搜索关键字,以红色的字体展示。
1.2ES的介绍
ES是一个使用Java语言并且基于Lucene编写的搜索引擎框架,它提供了分布式的全文搜索功能,提供了一个统一的基于RESTful风格的WEB接口,官方客户端也对多种语言都提供了相应的API。
Lucence:Lucene本身就是一个搜索引擎的框架。直接使用成本太高。apache的项目,solr
分布式:ES主要是为了突出他的横向扩展能力;
全文检索:将一段词语进行分词,并且将分出的单个词语统一放到一个分词库中,在搜索时,根据关键字去分词库中检索,找到匹配的内容。(倒排索引)效率高,不是直接检索内容,而是去检索分词库。
RESTful风格的WEB接口:操作ES简单,只需要发送一个HTTP请求,并且根据请求方式的不同,携带参不同,执行相应的功能。
应用广泛:github,wiki,gold man等。
1.3官网
1.4ES和slor
1效率:solr在查询死数据时,速度相对ES更快一些,但是数据如果是实时变化的,solr的查询速度会降低很多,ES的查询效率基本没有变化;
2默认都是单节点,如果搭建集群,则solr搭建基于需要依赖zookeeper来帮助管理。ES本身就支持集群搭建,不需要第三方介入;
3关于社区和文档,solr社区火爆,但国内文档很少,但ES社区更火爆,中文文档健全。
4.ES对现在的云计算和大数据支持的特别好。
1.5倒排索引
客户端 ES服务(分词库+存放数据)
分词:根据一定规则拆分语句,并存放在分词库
步骤:
1.query:根据输入的关键字,去分词库中检索内容。
2.fetch:根据分词库中检索到的id,直接拉去指定数据。
a将存放的数据,以一定的方式进行分词,并且将分词的内容存放到一个单独的分词库中;
b当用户去查询数据时,会将用户的查询关键词进行分词;
c然后去分词库中匹配内容,最终得到数据的id标识;
d根据id标识去存放数据的位置拉取到指定的数据。
2 ES安装
2.1安装ES&Kibana(图形化界面)
通过docker的conpose容器管理即可
准备docker conpose文件.yml
version:“3.1”
services:
elasticsearch:
image:daocloud.io/library/elasticsearch:6.5.4(去浏览器找 )
restart:always
container_name:elasticsearch
ports:
-9200:9200
kibana:
image:daocloud.io/library/kibana:6.5.4(去浏览器找 )
restart:always
container_name:kibana
ports:
-5601:5601
environment:
- elasticsearch_url =http://192.168.199.109:9200
depends_on:
- elasticsearch
版本一定要统一。

创建文件夹并进入
cd /opt/
ls
mkdir docker_es
ls
cd docker_es/

clear

编辑文件
ls
vi docker-compose.yml
写入上述内容,并保存:wp

运行文件
ls
docker-compose up -d

查看日志,确认启动成功后访问
docker-compose logs -f

访问路径
192.168.199.109:9200
结果:返回json字符串即可
192.168.199.109:5601
结果:打开页面
其中
1.Dev-Tools:访问ES的入口,使用resful风格发送请求,查看发送结果;
2.Management中:Index Management

2.2安装IK分词器
ES是全文检索方式,默认分词对中文不太友好,只会分字。
elasticesarch-analysis-ik(注意版本6.5.4)
下载路径:https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.4/elasticsearch-analysis-ik-6.5.4.zip
(将该地址放到ES容器内部,并且指定到插件内部)

clear
ls
docker ps(看一下ES的标识)
docker exec -it c1 bash(c1是id,模糊匹配)进入ES的目录
ls
cd bin/
其中elasticsearch-plugin
./elasticsearch-plugin install (ik的下载路径)
1由于网络问题,采用国内路径下载;
2进入ES容器内部,跳转到bin目录下,执行bin目录下的脚本文件
./elasticsearch-plugin install http://tomcat01.qfjava.cn:81/^
(这是进入容器安装的,es容器关则ik关)
查看ik安装效果:
在kibana中,Dev-Tools,测试:



这里报错,注意是IK安装完成后,需要重启ES才会生效。

退出当前容器:
exit
docker ps(可以单独重启ES,而不用重启kibana)
docker restart c1(稍等片刻,再次测试)
clear

重启ES比较慢,可以查日志看看
docker logs -f c1(start即为启动成功)


》to be continue

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/728538.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号