ES查询工具简介
Head基本查询
1> 选择需要查询的索引;
2> 对选中的字段可以进行term、range等查询;
3> 勾选可以显示此次查询执行的语句, 在复合查询时可以根据此格式自由拼接查询条件;
4> 当进行多个条件并行查询时,需要包含在一层bool中;
5> 显示查询的结果集;
注意: 可以从以上执行的语句中复制json在复合查询中根据需要自行组合条件
Head复合查询
1> 此处为es的连接信息;
2> 查询的索引名;
3> 查询关键字;
4> Rest请求的类型;
5> 验证输入的请求body格式是否正确;
6> 发起请求,获取结果集
Kibana简介
DevTool
进入kibana,点击Dev Tools,此处可以编写es的查询语句;
Index Management
点击Management可以进入index的管理界面。
ES常用命令
查看节点状态
GET /_cat/health?v
前两个是时间戳,其余含义如下:
-
cluster , 集群名称
-
status, 集群状态 green代表健康;yellow代表分配了所有主分片,但至少缺少一个副本,此时集群数据仍旧完整;red代表部分主分片不可用,可能已经丢失数据。
-
node.total, 代表在线的节点总数量
-
node.data, 代表在线的数据节点的数量
-
shards, active_shards 存活的分片数量
-
pri,active_primary_shards 存活的主分片数量 正常情况下 shards的数量是pri的两倍。
-
relo, relocating_shards 迁移中的分片数量,正常情况为 0
-
init, initializing_shards 初始化中的分片数量 正常情况为 0
-
unassign, unassigned_shards 未分配的分片 正常情况为 0
-
pending_tasks, 准备中的任务,任务指迁移分片等 正常情况为 0
-
max_task_wait_time, 任务最长等待时间
-
active_shards_percent, 正常分片百分比 正常情况为 100%
查看索引
GET /_cat/indices?v
含义:
-
health 索引健康状态
-
status 索引的开启状态
-
index 索引名称
-
uuid 索引uuid
-
pri 索引主分片数
-
rep 索引副本分片数量
-
docs.count 索引中文档总数
-
docs.deleted 索引中删除状态的文档
-
store.size 主分片+副本分分片的大小
-
pri.store.size 主分片的大小
查看节点列表
GET /_cat/nodes?v
返回字段 含义
ip ip
heap.percent 堆内存占用百分比
ram.percent 内存占用百分比
cpu CPU 占用百分比
load_1m 1分钟的系统负载
load_5m 5分钟的系统负载
load_15m 15分钟的系统负载
node.role node节点的角色
master 是否是master节点
name 节点名称
增加索引
PUT /test01
查询指定索引所有数据
POST /employees/_search
{ "query": { "match_all": { } } }
查询指定索引符合条件的数据
等值条件: age=25
POST /employees/_search
{ "query": { "term": { "age": { "value": "25" } } } }
区间条件: 20 =< age <= 30
POST /employees/_search
{ "size": 20, "query": { "range": { "age": { "gte": 20, "lte": 30 } } } }
组合条件: age=25, gender=male
POST /employees/_search
{ "query": { "bool": { "filter": [ { "term": { "age": "25" } }, { "term": { "gender": "male" } } ] } } }
删除索引
DELETE /test01
删除索引中的单个文档
DELETE /employees/_doc/1
1为索引 _id
删除符合条件的数据
POST /employees/_delete_by_query { "query": { "match": { "message": "some message" } } }
类似sql: delete from table_name where id= ‘123456’
删除指定索引下所有数据
POST /employees/_delete_by_query { "query": { "match_all": {} } }
通过指定字段进行区间数据删除
POST /employees /_delete_by_query { "query": { "range" : { "age" : { "gte" : 10 } } } }
通过指定字段值进行数据删除
POST /employees /_delete_by_query { "query": { "term": { "user": "kimchy" } } }
查看Mapping
GET movie_index/_mapping
用以查看索引字段的类型等
猜你喜欢
网友评论
- 搜索
- 最新文章
- 热门文章