一、ElasticSearch概述

(1)概念:开源的分布式全文检索引擎

(2)优点:近乎实时存储、检索数据,扩展性好,可扩展上百台服务器,处理PB级别的数据,基于Lucene核心,通过RestFul API使全文搜索变得简单

(3)谁在使用:维基百科,搜狐新闻,Github等等


二、es安装/head插件安装

 声明:安装条件,JDK1.8+

 1、es安装:

(1)es客户端:https://www.elastic.co/cn/downloads/elasticsearch

(2)head插件:https://github.com/mobz/elasticsearch-head/archive/master.zip

(1)安装步骤

elasticsearch-7.12.1-windows-x86_64.zip 解压即可。

(2)相关文件

bin:启动文件

config:配置文件

- - log4j2.properties:日志配置

- - elasticsearch.yml:es配置文件,默认9200端口

- - jvm.options:java虚拟机相关配置

lib:相关jar包

modules:功能模块

plugins:插件!如ik分词器等

logs:日志

(3)启动es

双击bin目录下elasticsearch.bat

 启动成功,默认访问9200端口

 浏览器访问:http://127.0.0.1:9200/ 返回相关配置信息

2、安装可视化界面:es head的插件

(1)解压缩:elasticsearch-head-master.zip

(2)安装node.js:https://nodejs.org/en/

cmd:node -v验证安装成功

(3)安装cnpm:

cmd安装淘宝镜像:npm install -g cnpm -registry=https://registry.npm.taobao.org

 cnpm -v验证安装成功

(4)安装依赖:

进入D:\elasticsearch\elasticsearch-head-master目录;执行cnpm install;

 (5)运行npm run start启动npm

 (6)浏览器访问:http://localhost:9100

 由于跨域无法访问:

(7)配置可跨域

配置conf下elasticsearch.yml新增配置

http.cors.enabled: true
http.cors.allow-origin: "*"

 重启es服务,再次访问,集群连接正常​​​​​​​


三、es核心概念

 1、elasticsearch是面向文档的(一切都是json),与关系型数据库的对比

RelationDB  -> Elasticsearch

数据库(database) -> 索引(indices)

表(tables) -> types(慢慢会被弃用)

行(rows) -> documents

字段(columns) -> fields

2、es物理设计:

elasticsearch在后台把每个索引划分成多个分片,每个分片在集群中的不同的服务间迁移。

默认的集群名就是elasticsearch

3、逻辑设计:

(1)文档:最小单位,即一条条数据

(2)类型:text、date等类型

(3)索引:数据库

4、es字段类型:

text:会被分词器解析

keyword:不会被分词器解析

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐