3.文档的基本CRUD与批量操作

1.文档的CRUD

在这里插入图片描述

  • Type名,约定都用_doc
  • Create 如果ID已经存在,会失败
  • Index 如果ID不存在,创建新的文档,否则,先删除现有的文档,再创建新的文档,版本会增加
  • Update 文档必须已经存在,更新只会对相应字段做增量修改

1.1 CREATE 一个文档

支持自动生成文档ID 和 指定文档ID 两种方式

自动生成文档ID

通过调用”post /users/_doc 系统会自动生成document ID

POST users/_doc
{
  "user":"Mike",
    "post_date":"2019-07-10",
    "message":"trying out kibana"
}

运行成功结果

{
  "_index" : "users",
  "_type" : "_doc",
  "_id" : "vJXKIWwBd9mJYCU0J9hg", // 自动生成的文档ID
  "_version" : 1, 
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 2,
    "failed" : 0
  },
  "_seq_no" : 7,
  "_primary_term" : 2
}

指定文档ID

使用HTTP PUT user/_create/1创建时,URI中显示指定 _create ,此时如果该id的文档已经存在,操作失败

	PUT users/_create/1
	{
		"firstName":"jack",
		"lastName":"Johnson",
		"tags":["guiar","skateboard"]
	}
第一次运行 运行成功
		{
 			 "_index" : "users",
 			 "_type" : "_doc",
  			 "_id" : "3",
  			 "_version" : 1,
  			 "result" : "created",
 			 "_shards" : {
   			 "total" : 2,
   			 "successful" : 2,
   			 "failed" : 0
 		 },
 			 "_seq_no" : 4,
 			 "_primary_term" : 2
	}
	第二次运行相同的命令 出现错误
		{
	  "error": {
	    "root_cause": [
	      {
	        "type": "version_conflict_engine_exception",
	        "reason": "[3]: version conflict, document already exists (current version [1])",
	        "index_uuid": "90f6Tjm4RbiErbHWuSDKEw",
	        "shard": "0",
	        "index": "users"
	      }
	    ],
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值