Elasticsearch之文档的基本操作

@[TOC]文档的基本操作

一、添加文档数据

1.新建索引my_doc
2.添加文档数据

POST /my_doc/_doc/1 ---> {索引名}/_doc/{索引ID}
参数:
{
    "id": 1001,
    "name": "xx-1",
    "desc": "xx is very good, x网非常牛!",
    "create_date": "2019-12-24"
}

指索引在es中的id,而不是这条记录的id,比如记录的id从数据库来是1001,并不是这个。如果不写,则自动生成一个字符串。建议和数据id保持一致>
浏览中使用工具展示:
在这里插入图片描述注:如果索引没有手动建立mappings,那么当插入文档数据的时候,会根据文档类型自动设置属性类型。这个就是es的动态映射,帮我们在index索引库中去建立数据结构的相关配置信息。
“fields”: {“type”: “keyword”}
对一个字段设置多种索引模式,使用text类型做全文检索,也可使用keyword类型做聚合和排序
“ignore_above” : 256
设置字段索引和存储的长度最大值,超过则被忽略

二、删除文档数据

DELETE /my_doc/_doc/1

删除数据时要指定文档索引的id
• 注:文档删除不是立即删除,文档还是保存在磁盘上,索引增长越来越多,才会把那些曾经标识过删除的,进行清理,从磁盘上移出去。

三、修改文档数据

1.局部修改

	POST /my_doc/_doc/1/_update
	参数:
	{
      "doc": {
        "name": "蟹黄"
	    }
	}

2.全量替换

	PUT /my_doc/_doc/1
	参数:
	{
	    "id": 1001,
	    "name": "test-1",
	    "desc": "12 is very good",
	    "create_date": "2019-12-24"
	}

注:每次修改后,version会更改

四、查询文档数据

1.普通查询

GET /index_demo/_doc/1      查某个索引
GET /index_demo/_doc/_search   查全部数据

查询结果:

{
    "_index": "my_doc",
    "_type": "_doc",
    "_id": "2",
    "_score": 1.0,
    "_version": 9,
    "_source": {
        "id": 1002,
        "name": "hello-2",
        "desc": "hello is fashion",
        "create_date": "2019-12-25"
    }
}

结果集字段说明:
• _index:文档数据所属那个索引,理解为数据库的某张表即可。
• _type:文档数据属于哪个类型,新版本使用_doc。
• _id:文档数据的唯一标识,类似数据库中某张表的主键。可以自动生成或者手动指定。
• _score:查询相关度,是否契合用户匹配,分数越高用户的搜索体验越高。
• _version:版本号。
• _source:文档数据,json格式。

2.定制结果集查询

返回id为1的文档数据的定制结果
GET /index_demo/_doc/1?_source=id,name   
返回全部文档数据的定制结果集
GET /index_demo/_doc/_search?_source=id,name

3.判断文档是否存在

HEAD /index_demo/_doc/1

不返回数据集,文档存在数据状态为200,不存在数据状态是404,该接口可以大大减少查询时间和空间,只判断文档是否存在。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值