Elasticsearch之索引和文档、文档API

pushpin 文档Document

用户存储在es中的数据文档,相当于mysql的表中的一行,Json结构形式,由字段组成,常见数据类型如下:

  • 字符串:text、keyword,text是分词,keyword是不分词的
  • 数值型:long、integer、short、byte、double、float、half_float、scaled_float
  • 布尔:boolean
  • 日期:date
  • 二进制:binary
  • 范围类型:integer_range、float_range、long_range、double_range、date_range

books  文档的元数据:用于标注文档的相关信息

  • _index:文档所在的索引名
  • _type:文档所在的类型名
  • _id:文档唯一id
  • _score:相关性算分
  • _uid:组合id,有_type和_id组成(从6.x开始_type不再起作用,同_id一样)
  • _source:文档的原始json数据,可以从这里获取每个字段的内容
  • _all:整合所有字段内容到该字段,默认下禁用

books  文档相关API

es的欢迎语就是"you know,for search",所以es的主要api就是集中在查询一块,下面所讲的只是最简单、最基础的一部分,后续还会深入es的search api,如Query DSL、es的Java Api等。

1、创建文档,test_index1为索引名,mydoc指上面说到的_type,均为自定义,1指_id,如果未指定,会自动生成

2、查询文档,其中的_search表示查询该索引下的全部文档记录

3、批量操作文档,第一列的index表示新增,如果存在则覆盖,其余的两个是update修改和delete删除

4、删除文档

5、一次性查询多个文档


pushpin 索引 Index

由具有相同字段的文档列表组成,相当于mysql中的表。

  • 每个索引都有自己的mapping定义,用于定义字段名和类型
  • 索引中存储着具有相同结构的文档

books  节点Node:一个Elasticsearch的运行实例,集群的其中一个构成单元。


books  正排索引:维护文档id到内容、单词的关联关系,例如

books  倒排索引:维护单词到文档id的关联关系,例如

这个时候比如来个需求,获取包含"领事馆"的文档id,则先根据倒排索引得到包含领事馆的文档id为1,再根据正排索引找到相应的文档内容,并将其返回即可。因为在es的索引中,每一个文档对应的数据结构都是json结构形式,每个json中的字段都会维护自己的倒排索引(未开启的除外,比如设置了index=false),所以查找起来也非常快。


上一篇:Elastic Search入门与安装

下一篇:Elastic Search之倒排索引

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值