CC00015.elasticsearch——|Hadoop&ElasticSearch.V15|——|ELK.v15|集群|索引管理|文档增删改查及局部更新.V1|

一、文档增删改查及局部更新
### --- 文档增删改查及局部更新

~~~     文档,即索引库中的数据,会根据规则创建索引,将来用于搜索。
~~~     可以类比做数据库中的一行数据。
### --- 新增文档

~~~     新增文档时,涉及到id的创建方式,手动指定或者自动生成。
~~~     新增文档(手动指定id)
二、创建文档:手动指定ID
### --- 语法

~~~     # 语法
POST /索引名称/_doc/{id}
### --- 创建文档:手动指定id

~~~     # 创建示例
POST /yanqi-company-index/_doc/1
{
  "name" : "百度",
  "job" : "小度用户运营经理",
  "payment" : "30000",
  "logo" :
  "chrome://new-tab-page/icons/google_logo.svg"
}

POST /yanqi-company-index/_doc/2
{
  "name" : "百度",
  "job" : "小度用户运营经理",
  "payment" : "30000",
  "logo" :
  "chrome://new-tab-page/icons/google_logo.svg",
  "address":"北京市昌平区"
}

POST /yanqi-company-index/_doc/3
{
  "name1" : "百度",
  "job1" : "小度用户运营经理",
  "payment1" : "30000",
  "logo1" :
  "chrome://new-tab-page/icons/google_logo.svg",
  "address1":"北京市昌平区"
}
三、创建文档:自动生成ID
### --- 新增文档(自动生成id)

~~~     # 语法
POST /索引名称/_doc
{
    "field":"value"
}
### --- 创建示例:自定生成id
~~~     可以看到结果显示为: created ,代表创建成功。 
~~~     另外,需要注意的是,在响应结果中有个_id 字段,这个就是这条文档数据的唯一标识,
~~~     这个_id作为唯一标示,这里是Elasticsearch帮我们随机生成的id。

~~~     # 示例
POST /yanqi-company-index/_doc/
{
  "name" : "百度",
  "job" : "小度用户运营经理",
  "payment" : "30000",
  "logo" :
  "chrome://new-tab-page/icons/google_logo.svg"
}
二、查看单个文档
### --- 查看单个文档语法
### --- 文档元数据解读:

~~~     # 语法
~~~     GET /索引名称/_doc/{id}
~~~     # 示例
~~~     GET /yanqi-company-index/_doc/1
元数据项含义
_indexdocument所属index
_typedocument所属type,Elasticsearch7.x默认type为_doc
_id 代表document的唯一标识,与index和type一起,可以唯一标识和定位一个document
_versiondocument的版本号,Elasticsearch利用_version (版本号)的方式来
确保应用中相互冲突的变更不会导致数据丢失。需要修改数据时,
需要指定想要修改文档的version号,如果该版本不是当前版本号,请求将会失败
_seq_no严格递增的顺序号,每个文档一个,Shard级别严格递增,
保证后写入的Doc seq_no大于先写入的Doc的seq_no
_primary_termprimary_term也和seq_no一样是一个整数,每当Primary Shard发生重新分配时,
比如重启,Primary选举等,_primary_term会递增1
foundtrue/false,是否查找到文档
_source存储原始文档
三、查看所有文档
### --- 查看所有文档语法

~~~     # 语法
POST /索引名称/_search
{
  "query":{
  "match_all": {
    }
  }
}
### --- 创建示例

~~~     # 示例
POST /yanqi-company-index/_search
{
  "query":{
  "match_all": {
  }
  }
}
四、_source定制返回结果
### --- _source定制返回结果
### --- 查看示例:GET /yanqi-company-index/_doc/1?_source=name,job

~~~     某些业务场景下,我们不需要搜索引擎返回source中的所有字段,
~~~     可以使用source进行定制,如下,多个字段之间使用逗号分隔
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yanqi_vip

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值