第01章-Elasticsearch入门
# 一、Elasticsearch 入门
# 1.1 Elasticsearch 配置说明
- elasticsearch.yml 关键配置
- cluster.name 集群名称,以此判断是否属于同一集群
- node.name 节点名称,区分同一集群的不同节点
- network.host/http.port 网络地址和端口,用于http和transport服务使用
- path.data 数据存储地址
- path.log 日志存储地址
- Development与Production模式说明
- Development模式下启动会以warning的方式提示配置检查异常
- Production模式下在启动时会以error的方式提示配置检查异常并退出
- 以transport的地址是否绑定localhost为判断标准 network.host
- 参数修改的第二种方式
- bin/elasticsearch -Ehttp.port=19200
# 1.2 Elasticsearch 本地集群启动
# 依次执行以下三条命令
bin/elasticsearch
bin/elasticsearch -Ehttp.port=8200 -Epath.data=node2
bin/elasticsearch -Ehttp.port=7200 -Epath.data=node3
1
2
3
4
2
3
4
- 节点信息:
http://localhost:9200/_cat/nodes?v
- 集群信息:
http://localhost:9200/_cluster/stats
# 1.3 常用术语
- Document:文档,用户存储在es中的数据文档
- Index:索引,由具有相同字段的文档列表组成
- Node:节点,一个Elasticsearch的运行实例,是集群的构成单元
- Cluster:集群,由一个或多个节点组成,对外提供服务
每一个文档都有一个唯一标识id,可以指定,也可以自动生成
元数据,用于标注文档的相关信息,含义如下:
_index
:文档所在的索引名_type
:文档所在的类型名_id
:文档唯一 id_uid
:组合id,由_type
和_id
组成(6.x版本_type
不再起作用,同_id
一样)_source
:文档的原始Json数据,可以从这里获取每个字段的内容_all
:整合所有字段内容到该字段,默认禁用
索引(Index)中存储具有相同结构的文档(Document)每个索引都有自己的mapping定义,用于定义字段名和类型,一个集群可以有多个索引
# 1.4 Rest Api
索引api
动作 | 请求 |
---|---|
创建索引 | PUT /test_index |
查看现有索引 | GET _cat/indices |
删除索引 | DELETE /test_index |
文档api
动作 | 请求 | 备注 |
---|---|---|
创建文档指定id | PUT /test_index/_doc/1 | 如果索引不存在,会自动创建 |
创建文档不指定id | POST /test_index/_doc | 注意请求方式和指定id的不同 |
查询文档 | GET /test_index/_doc/1 | |
搜索文档 | GET /test_index/_doc/_search |
批量操作api
批量更新:es允许一次创建多个文档,从而减少网络传输开销,提升写入速率-endpoint为_bulk,如下:
操作类型:
- index:覆盖更新,无论文档是否存在
- update:更新
- create:创建,如果已存在报错
- delete:删除
批量查询
编辑 (opens new window)
上次更新: 2023/06/04, 12:34:19