ElasticSearch&Kibana

1.介绍

Elaticsearch,简称为 es, es 是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据。(es 是使用 java 开发的)

Kibana 是一个开源分析和可视化平台,方便我们与 es 进行交互

2.应用部署

2.1 docker-compose

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
version: "3.8"
services:
elasticsearch:
image: elasticsearch:7.14.0
container_name: elasticsearch
ports:
- "9200:9200"
- "9300:9300"
networks:
- "es"
environment:
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
volumes:
- data:/usr/share/elasticsearch/data
- es_config:/usr/share/elasticsearch/config
- plugin:/usr/share/elasticsearch/plugins

kibana:
image: kibana:7.14.0
container_name: kibana
ports:
- "5601:5601"
networks:
- "es"
volumes:
- kibana_config:/usr/share/kibana/config

volumes:
data:
es_config:
kibana_config:
plugin:

networks:
es:

这边使用 docker-compose 的方式一键部署,版本为7.14.0 ,es 默认端口 9000,kibana 默认端口 5601。

kibana 需要 es 的连接地址,在上面我们已经把 kibana 配置文件映射出来了

image-20221218144455468

我们这里配置了两个服务在同一个 network 下,通过服务名就能找到对应主机,所以这里不需要修改 elasticsearch.hosts

image-20221218143821593

image-20221218143650083

分别访问对应服务 如图所示就部署成功了

3.概念

3.1索引(Index)

简单理解为Mysql的数据库。一个ES节点可以有多个索引

3.2映射(Mapping)

mapping 定义了每个字段的类型等信息。相当于关系型数据库中的表结构

3.3文档(Document)

一个document相当于关系型数据库中的一⾏记录

3.4数据类型

3.4.1 text

用于全文索引,该类型的字段将通过分词器 进⾏分词

3.4.2 keyword

不分词,只能搜索该字段的完整的值

4.RestFul API

PUT


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!