一、ElasticSearch的倒排索引
1.1、数据库存在的问题
1.2、倒排索引
了解倒排索引的存储原理
-
使用新华字典查找汉字,先找到汉字的偏旁部首,再根据偏旁部首对应的目录(索引)找到目标汉字
-
ES样例
- 文档0(编号0):we like java java java
- 文档1(编号1):we like lucene lucene lucene
-
建立倒排索引的流程
-
小结
- 倒排索引:将每条数据中的内容进行分词,形成词条。然后记录词条和数据的唯一标识(id)的对应关系,形成的产物
二、ElasticSearch存储和搜索原理
理解ElasticSearch存储和搜索原理
三、ElasticSearch相关概念
理解ElasticSearch和关系型数据库的区别以及分工
3.1、介绍
- ElasticSearch是Java语言开发的,并作为Apache许可条款下的开放源码发布,基于Lucene实现,是一款分布式、高扩展、近实时的搜索服务,可以基于RESTful web接口进行操作
- 官网:https://www.elastic.co/
- 基于Lucene的产品
3.2、应用场景
- 海量数据的查询(京东,淘宝商品搜素)
- 日志数据分析(ELK ElasticSearch + Logstach + Kibana 搭建日志监控平台)
- 实时数据分析
3.3、ElasticSearch和MysqL的区别
-
我们可以把传统关系型数据库MysqL和ElasticSearch进行一下对比
-
MysqL Elasticsearch 说明 Database Index 索引(index),就是文档的集合,类似数据库(Database) Table Type 类型(Type),就是文档的类型,相当于数据库中的表(Table) Row Document 文档(Document),就是一条条的数据,类似数据库中的行(Row),文档都是JSON格式 Column Field 字段(Field),就是JSON文档中的字段,类似数据库中的列(Column) Schema Mapping Mapping(映射)是索引中文档的约束,例如字段类型约束。类似数据库的表结构(Schema) index Everything is indexed es对存储的所有数据都进行分词建立索引 sql DSL(Domain Specification Lanuage)
-
-
不难发现,两者均有其优势
-
因此在企业中,往往是两者结合使用
3.4、小结
四、ElasticSearch的安装
4.1、下载镜像
- 命令
docker pull elasticsearch:7.4.1@H_404_21@
- 如下所示
- Windows下载很简单,去官网下载,解压后启动即可使用
4.2、启动容器
-
命令
-
如下所示
4.3、浏览器访问
-
浏览器输入:http:宿主机IP:9200
-
如果发现启动失败问题(内存分配原因),可以参考下面这个链接
-
日常踩坑之elasticsearch docker 无法启动问题_不懂1417的博客-CSDN博客_docker无法启动elasticsearch]
-
也可以参考这个命令
-
sysctl -w vm.max_map_count=262144 docker run -di --name=elasticsearch -p 9200:9200 -e "ES_JAVA_OPTS=-xms512m -Xmx512m" -e "discovery.type=single-node" -v /root/elasticsearch/plugins:/usr/share/elasticsearch/plugins -v /root/elasticsearch/data:/usr/share/elasticsearch/data elasticsearch:7.4.1 @H_404_21@
-
-
如果报错信息为:
java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes@H_404_21@,可以参考以下的博客
-
-
如何查看报错信息
-
-
PS:如果访问不了,记得开放端口或者关闭防火墙
- 开放端口如下所示
-
五、Kibana的安装
5.1、拉取镜像
- 命令
docker pull kibana:7.4.1@H_404_21@
- 如下所示
5.2、创建容器
-
命令
-
docker run -id -p 5601:5601 --link elasticsearch --name=kibana -e "ELASTICSEARCH_URL=http://你的自己的ip地址:9200" kibana:7.4.0 @H_404_21@
-
-
如下所示
5.3、浏览器访问
- 浏览器访问:http://宿主机IP地址/5601
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。