ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana

一、什么是ElasticSearch

Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到近实时搜索,稳定,可靠,快速
Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasticsearch 数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再将返回结果呈现给用户。

二、为什么要用ElasticSearch

Elasticsearch 可以让你存储所有类型的数据。
你可能认为搜索是关于文本的,的确,Elasticsearch 精通索引和查询文本。
但是,那不是全部,你还可以存储数字类型的数据、Geo 地理类型的数据。
Elasticsearch 不仅可以查询数据,还可以做汇总、聚合等等操作。
Elasticsearch 是免费、开源的、易扩展。

1、对比Solr和ES

Elasticsearch的优缺点:
优点:
Elasticsearch是分布式的。不需要其他组件,分发是实时的,被叫做”Push replication”。
Elasticsearch 完全支持 Apache Lucene 的接近实时的搜索。
处理多租户不需要特殊配置,而Solr则需要更多的高级设置。
Elasticsearch 采用 Gateway 的概念,使得完备份更加简单。
各节点组成对等的网络结构,某些节点出现故障时会自动分配其他节点代替其进行工作。
缺点:
只有一名开发者(当前Elasticsearch GitHub组织已经不只如此,已经有了相当活跃的维护者)
还不够自动(不适合当前新的Index Warmup API)
Sorl的优缺点:
优点:
Solr有一个更大、更成熟的用户、开发和贡献者社区。
支持添加多种格式的索引,如:HTML、PDF、微软 Office 系列软件格式以及 JSON、XML、CSV 等纯文本格式。
Solr比较成熟、稳定。
不考虑建索引的同时进行搜索,速度更快。
缺点:
建立索引时,搜索效率下降,实时索引搜索效率不高。

2、对比传统数据库与ES

ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第1张图片
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第2张图片
2、1 对比文本搜索
Mysql中查询文本

select name title from book where title like %java规范手册%

如果数据少,可以使用,在数据大时查询缓慢,因为like全文匹配,从第一条记录匹配到最后一条
ElasticSearch查询文本
因为es使用的是倒排索引,所以查询很快
关于倒排索引概念查看

基于windows安装ElasticSearch

安装要求:本地 jdk版本不能低于1.8
官网下载地址https://www.elastic.co/cn/downloads/elasticsearch
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第3张图片
下载后解压
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第4张图片

bin  启动文件
config 配置文件
		log4j2.properties 	日志文件
		jvm.options 	 java虚拟机配置文件
		elasticsearch.yml  elasticsearch配置文件
data 数据
jdk
logs 日志
lib jar包
modules 功能模块
plugins 插件

运行elasticsearch
点击 /bin/elasticsearch.bat
访问 localhost:9200
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第5张图片

安装head插件

检查本地是否有node环境

因为head是一个Node.js项目。所以,如果没有安装nodejs需要先安装Node.js
node -v

ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第6张图片
下载地址
https://github.com/mobz/elasticsearch-head/tree/master

下载后解压
在根目录下执行 
使用国内镜像进行安装
cnpm install
启动
npm run start

ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第7张图片
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第8张图片
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第9张图片
解决跨域问题

修改配置文件 elasticsearch.yml
添加配置
http.cors.enabled: true
http.cors.allow-origin: "*"

ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第10张图片## 安装Kibana
下载地址 https://www.elastic.co/cn/downloads/kibana
Kibana和elasticsearch版本一致
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第11张图片
解压文件
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第12张图片

修改配置文件 kibana.yml
设置kibana为中文
i18n.locale: "zh-CN"

运行kibana
点击 /bin/kibana.bat文件
在这里插入图片描述
访问localhost:5601
ElasticSearch7.6.2学习记录(一)安装ES,Head,Kibana_第13张图片

你可能感兴趣的:(ElasticSearch)