ES 文档与索引介绍

Python微信订餐小程序课程视频

https://blog.csdn.net/m0_56069948/article/details/122285951

Python实战量化交易理财系统

https://blog.csdn.net/m0_56069948/article/details/122285941
在之前的文章中,介绍了 ES 整体的架构和内容,这篇主要针对 ES 最小的存储单位 - 文档以及由文档组成的索引进行详细介绍。

会涉及到如下的内容:

  1. 文档的 CURD 操作。
  2. Dynamic Mapping 和显示 Mapping 的区别
  3. 常见 Mapping 类型与常见参数介绍
  4. Index Template 和 Dynamic Template

对文档进行操作

单个文档 CRUD

和常见的数据库类似,ES 也支持 CURD 操作:

下面展示了对单个 ES 文档的操作:

操作名称 URL 解释
Index image-20220406215957677 创建或者更新索引中的文档。在指定 id 的情况下,如果 id 存在,则会更新。如果不指定,则会创建。
Get image-20220406220223805 查询某个文档。
Delete DELETE //_doc/<_id> 删除某个指定的文档。
Update POST //_update/<_id> 更新某个文档中的内容,可以理解成 Patch 的更新。如果想完全替换文档,请使用 index.

下面是实际操作文档的例子, 打开 kibana 的开发者工具:

先来创建一个文档:

ES 在创建文档时,会有两种方式 index 和 create。index 与 create 不同在于,在指定 id 的情况下,如果 id 存在,index 会覆盖,同时版本号+1,而 create 会报错不让创建。

这里手动指定 id 为10,使用 index 方法,创建了一个文档,注意版本号为 1。

image-20220406222248162

注意再次发送同样的情况,可以看到正常执行,版本号变成 2了。

image-20220406222310526

但是使用 create 方法:

image-20220406222351472

这里报错,显示文档已经存在。

需要注意的 ES 这里的更新并不是正常理解的更新,而是先把老文档删掉,然后创建一个新文档出来。

接着对文档进行更新:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值