在ES中,每一个字段的数据都是默认被索引的,即,每一个字段专门有反向索引可以用来快速检索。
文档元数据
_index 文档存储的地方
_type 文档代表的对象的类
_id 文档的唯一标识
索引(index)名字必须全部小写,不能以下划线开头,不能包括逗号
类型(type)都有自己的映射(mapping)或者结构定义。
id仅仅是个字符串,可以自定义_id, 也可以让ES自动生成。检索文档
GET请求将返回文档的全部,存储在_source参数中,请求个别字段可以使用_source参数,多个字段使用逗号分隔。检查文档是否存在
用HEAD方法代替GET方法,请求不会返回响应体,只有HTTP头。存在在返回200 OK, 不存在返回404 NOT FOUND。更新整个文档
文档在ES中是不可变的,如果更新文档,ES的version会发生变化,自动加1。
更新文档的过程:
1. 从旧文档中检索JSON
2. 修改它
3. 删除旧文档
4.索引新文档创建一个新文档
使用 PUT方法来新建一个文档删除文档
使用DELETE方法来进行文档的删除
只是标记为删除,会再另外的时间点进行索引删除。更新文档
update请求表单接受一个局部文档参数 doc,它会合并到现有文档中,对象合并在一起,存在的标量字段被覆盖,新字段被调价。
更新可能不存在的文档
使用upsert参数定义文档使其不存在时被创建
更新和冲突
通过使用retry_on_conflict参数设置重试次数来自动完成检索多个文档
mget API参数是一个docs数组,合并多个请求可以避免每个的请求单独的网络开销
mget的话只要请求成功了,都会返回 200 OK,可以通过found标志来查看文档是否被成功检索到。批量操作
bulk API 可以实现单一请求多个文档的 create, index, update, 或者delete。
整个批量球球需要被加载到接受请求节点的内存里,,一般来说,请求的批次量的数据大小最好保持在5-15M最好。
ES学习笔记-数据操作
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 很少写技术博客,一是觉得自己技术有限,怕误人子弟;二是文笔较差,比较排斥写作之类的工作。话说不锻炼,哪会有进步呢,...
- 欢迎访问我的博客查看原文:http://wangnan.tech 注:文本整理自《ELKstack权威指南》 目录...
- 文档元数据 一个文档不仅仅包含它的数据 ,也包含 元数据 —— 有关 文档的信息。 三个必须的元数据元素如下: _...