四、ES基于索引的基本操作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了四、ES基于索引的基本操作相关的知识,希望对你有一定的参考价值。

参考技术A 我们可以创建一个索引:

我们在创建一个索引,并且副本数选择1

然后在回到概览就可以看到节点1的变化了,出现了一个新的索引,并且集群的健康值也变成了黄色,其中有5个副本sharp是灰色的,没有分配值,下面是官网关于集群状态的描述

当然我们也可以根据官网提供的接口来获取集群的健康状态信息:

通过调用接口的方式设计一个文档结构:

text和keyword代表的都是字符串类型,不一样的是text是可以模糊匹配的,在es中就是可以被索引且可以倒排查询的,而keyword是精确匹配的类型,例如状态或者微信号等不允许模糊匹配的。

下面我们查询测试ES是怎么分词的:

结构是他把所有的单词都给拆分出来了,如果你查询的字段是username的话,那么分词的结构就是整句话: immoc is very good~!

如图我们在接口的url路径上写明了我们要新增文档到my_doc这个索引里,这条数据的id是1,这条数据的具体信息就是图中的数据,如果不写明数据id的话,es就会自动为我们的数据随机分配一个id

然后在谷歌插件的es-head上查看数据:

可以看到数据已经存储上来了,我们在索引状态里面查看下:

可以看到如果要查询一个文档是如图那么的拼接url

如果想要查询所有的文档数据就如下调用接口:

如果希望展示出来的数据仅仅展示几个字段,可以这么定义:

在source后面以逗号隔开多个想要的属性即可。

如果你仅想要判断某个文档是否存在就可以使用head的接口请求方式来查询,这样的方式也是最优的方法,因为get是把所有符合请求的数据抓去过来,而head仅仅返回一个状态码,我们通过状态码是404还是200来判断是否有符合要求的文档即可。

以上是关于四、ES基于索引的基本操作的主要内容,如果未能解决你的问题,请参考以下文章

架构师成长记_第八周_04_ES-head 与 postman基于索引的基本操作

ES系列3-ES中基本概念

ElasticSearch系列四 CURD

php elasticsearch (四) 索引管理 --- 2022-04-02

架构师成长记_第八周_08_ES-文档的基本操作

架构师成长记_第八周_08_ES-文档的基本操作