ElasticSearch 学习
本文最后更新于 2022年4月16日 下午
ElasticSearch
Elasticsearch 是一个分布式、RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。 作为 Elastic Stack 的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。
学习课程:https://www.bilibili.com/video/BV1Sy4y1G7LL
相关书籍:
安装和配置ElasticSearch
下载:
在https://www.elastic.co/cn/downloads/past-releases#elasticsearch 选择对应的版本
本笔记基于ElasticSearch 7.17.2
配置:
ElasticSearch设置elasticsearch.yml:
1
2
3
4
5cluster.name: my-application
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"]JVM虚拟机设置jvm.options:
1
2-Xms1g
-Xmx1g不设置JVM的话,ES会占用太多的内存,当然生产环境需要按照需求配置
ElasticSearch入门
一些概念
index 索引
是具有某种相似特性的文档集合,可以理解为一个数据库。索引由一个名称(必须全部是小写)标识,当对其中的文档执行索引、搜索、更新和删除操作时,该名称指向这个特定的索引。
document 文档
是可以被索引的基本信息单元,一个文档相当于关系型数据库的一行,用JSON表示
mapping 映射
映射的功能是完成字段的定义,包括数据类型、存储属性、分析器等。
ES基于RESTful风格,即一个url对应一个资源,使用不同的Method可以对资源进行增删改查的操作。
倒排索引
ES的一些基本操作(API)
查看集群健康状态:
1 |
|
查看节点状态:
1 |
|
index操作
创建一个为user
的index:
1 |
|
删除index:
1 |
|
查询user
索引信息:
1 |
|
查询节点索引信息:
1 |
|
Mapping操作
添加映射:
1 |
|
添加索引时添加mapping:
1 |
|
查询索引:
1 |
|
添加字段(更改):
1 |
|
Document操作
新建or修改文档:
表示在序列为user新建or修改ID为1的文档
1 |
|
不指定ID系统会随机创建
查询文档:
1 |
|
查询所有文档:
1 |
|
查询操作
- match
- term