标签:update 下划线 size sha value 清理 get 元数据 请求
Elasticsearch版本:6.0
一、文档
一个文档不仅包含数据,也包含元数据,三个必须的元数据如下
_index:具有共同特性分到一起的文档集合,标示了文档的存放位置;
名字小写,不以下划线开头,不包含逗号。
_type:表示文档的类型,在索引中对数据进行逻辑分区;
名字大写或小写,不以下划线或句号开头,不包含逗号,并且长度限制256个字符。
_id:文档的唯一标识,和_index和_type组合可以唯一确定Elasticsearch中的一个文档;
可以自定义id值,或者由Elasticsearch来生成。
二、Rest风格
PUT /{index}/{type}/{id}{"field": "value"}POST:创建,不指定id时,Elasticsearch自动生成id,指定id时,如果文档存在,会返回409 Conflict;
PUT:可以创建/更新文档,更新时,旧文档被标记为删除,增加新文档,Elasticsearch后台清理这些标记删除的文档;
GET:搜索文档;
DELETE:删除文档,实际上是在.del文件中被标记删除,被删除的文档仍然可以被查询匹配到,但是它会在最终结果被返回前从结果集移除,更新操作类似;
部分更新文档
使用PUT整个更新文档时,需要检索并修改,再重新索引整个文档,而使用update API可以部分更行文档,需要用POST /_update操作,实际上它在内部依然进行了检索-修改-重建索引的过程,但是这个过程是发生在分片内部的,避免多次请求的网络开销。
三、搜索结果
1、hits:包含total字段表示匹配到的文档总数;
包含_index、_type、_id、_source字段,标记整个文档信息;
_score字段表示文档和查询的匹配程度,搜索结果默认按照_score降序排序;
max_score是_score的最大值;
2、took:执行整个搜索消耗了多少毫秒;
3、_shards:查询中参与分片的总数,以及分别成功和失败了多少个;
4、timed_out:查询是否超时true/false;
Elasticsearch默认查询分页,默认返回十条数据,可以指定分页参数
size:返回的结果数量,默认10
from:页数,默认0
分页的问题
Elasticsearch是分布式的,分页时会从各个分片产生结果集,最后汇总到协调节点重新排序获得结果集,对多余的结果进行抛弃,所以一般查询不要超过1000个结果。
标签:update 下划线 size sha value 清理 get 元数据 请求
原文地址:http://www.cnblogs.com/bigshark/p/7905983.html