ElasticSearch学习笔记(四):ElasticSearch集群健康检查以及文档快速的CRUD操作

一、简单的集群健康状况查询

es提供了一套api,叫做cat api,在上一节中dev tools中的控制台中输入,可以查看es中各种各样的数据

  1. 快速检查集群的健康状况:GET /_cat/health?v
epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1558192208 23:10:08  elasticsearch yellow          1         1      6   6    0    0        6             0                  -                 50.0%

status属性代表健康状况:

  • green:每个索引的primary shard和replica shard都是active状态的
  • yellow:每个索引的primary shard都是active状态的,但是部分replica shard不是active状态,处于不可用的状态
  • red:不是所有索引的primary shard都是active状态的,部分索引有数据丢失了
  1. 快速查看集群中有哪些索引:GET /_cat/indices?v
  2. 增加索引:PUT /test_index?pretty(test_index为自己定义的索引名)
  3. 删除索引:DELETE /test_index?pretty

二、简单案例演示文档的CRUD操作

  1. 新增商品:新增文档,建立索引
    格式:
PUT /index/type/id
{
	"json数据"
}

例:

PUT /shop/product/1
{
  "name":"lanqiu",
  "desc":"wan de lan qiu",
  "price":"30",
  "tags":["play","test"]
}

ElasticSearch会自动建立index和type,不需要提前创建,而且es默认会对document每个field都建立倒排索引,让其可以被搜索。

  1. 新增商品:检索文档
格式:GET /index/type/id

例: GET /shop/product/1

结果:{
  "_index": "shop",
  "_type": "product",
  "_id": "1",
  "_version": 1,
  "found": true,
  "_source": {
    "name": "lanqiu",
    "desc": "wan de lan qiu",
    "price": "30",
    "tags": [
      "play",
      "test"
    ]
  }
}
  1. 修改商品:替换文档
  • 方式一:
与新增一样:
PUT /index/type/id
{
	"json数据"
}
但是此时必须每个field都带上(不论修不修改),否则没带上的字段会丢失
  • 方式二:
格式 :
POST /index/type/id/_update
{
	"doc":{
		"field":"value"
	}
}

例:
POST /shop/product/1/_update
{
	"doc":{
		"name":"zuqiu"
	}
}
  1. 删除商品
格式:
DELETE /index/type/id

例:
DELETE /shop/product/1

返回结果:
{
  "found": true,
  "_index": "shop",
  "_type": "product",
  "_id": "1",
  "_version": 2,
  "result": "deleted",
  "_shards": {
    "total": 2,
    "successful": 1,
    "failed": 0
  }
}

参考资料:中华石杉

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值