我是靠谱客的博主 靓丽方盒,最近开发中收集的这篇文章主要介绍分布式搜索引擎-ES-基础语法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、基本操作

1. 查询集群信息

在postman工具中,使用get请求加IP http://192.168.1.6:9200/
注:这里的所有IP均为elasticsearch节点IP

2.查询集群健康状态
在postman工具中,使用get请求加IP http://192.168.1.6:9200/_cluster/health

3.删除索引库
在postman工具中,使用delete请求加IP http://192.168.1.6:9200/索引库名称

4.新建索引库
在postman工具中,使用put请求加IP http://192.168.1.6:9200/索引库名称
并且在body中输入参数为:

{
"settings":{
"index":{
"number_of_shards":"2",
"number_of_replicas":"0"
}
}
}

注:shards:表示master_shards 数量请根据实际需要自定义
replicas:表示replica_shards数量请根据实际需要自定义
5.查询指定的索引库
在postman工具中,使用get请求加IP http://192.168.1.6:9200/索引库名称
6.查询所有索引库概览信息
在postman工具中,使用get请求加IP http://192.168.1.6:9200/_cat/indices

或者 在postman工具中,使用get请求加IP http://192.168.1.6:9200/_cat/indices?v
返回结果时会带上列明

二、进阶操作

1.mappings自定义创建映射
在postman工具中,使用put请求加IP http://192.168.1.6:9200/索引库名称
此操作会创建索引,同时创建mappings
body中请求参数如下:

{
"mappings":{
"properties":{
"realname":{
"type":"text",
"index":true
},
"username":{
"type":"keyword",
"index":false
}
}
}
}

2.查看分词效果
在postman工具中,使用get请求加IP http://192.168.1.6:9200/索引库名称/_analyze
请求参数如下:

{
"field":"realname",
"text":"study is good"
}

3.为已存在的索引创建mapping
在postman工具中,使用post请求加IP http://192.168.1.6:9200/索引库名称/_mapping
body中请求参数如下:

{
"properties":{
"id":{
"type":"long"
},
"age":{
"type":"integer"
}
}
}

注:某个属性一旦建立就不能被修改了

三、主要数据类

1.text ,keyword,string
2.long,integer,short,byte
3.double,float
4.boolean
5.date
6.object
7.数组(数组中类型不能混,类型必须保持一致)
字符串
text:文字中需要被分词被倒排索引的内容,比商品名称详情等使用text
keyword:不会被分词的对象,比如qq号这种被精确匹配的数据

四、文档操作

1.创建文档
在postman工具中,使用post请求加IP http://192.168.1.6:9200/索引库名称/_doc/文档id
body中请求参数如下:

{
"id":1001,
"name":"study-1",
"desc":"study is very good, 学习非常牛!",
"create_date":"2020-07-12"
}

注:1.路径中如果没有指定id,elasticsearch会自动生成一个id
2.如果索引没有手动简历mappings,那么当插入文档数据时,会根据文档类型自动设置属性值。这个就是es的动态映射,这会帮助我们在index索引库中去建立数据结构的相关配置
3.使用"fields": { "keyword": { "ignore_above": 256, "type": "keyword" }可以对一个字段设置多种索引模式。如下:

"name": {
"type": "text",
"fields": {
"keyword": {
"ignore_above": 256,
"type": "keyword"
}
}
}

这里既可以对name属性进行text类型的全文检索,也可以使用keyword做聚合和排序
ignore_above:256 指字段索引最大长度为256,超过则被忽略
2.文档的删除与修改
删除:
在postman工具中,使用delete请求加IP http://192.168.1.6:9200/索引库名称/_doc/文档id

修改:
(1)修改单个字段:
在postman工具中,使用post请求加IP http://192.168.1.6:9200/索引库名称/_doc/文档/id_update
body中请求参数如下:

{
"doc":{
"name":"我是1"
}
}

(1)修改整个文档(即整行数据):
在postman工具中,使用put请求加IP http://192.168.1.6:9200/索引库名称/_doc/文档id
body中请求参数如下:

{
"id":1,
"name":"我是1"
....
}

注:这里要把所有字段都写出来
3.文档查询
(1)查询某一条数据(get请求)
http://192.168.1.6:9200/my_doc/_doc/文档id
(2)查询所有数据(get请求)
http://192.168.1.6:9200/my_doc/_doc/_search
(3)定制返回字段(get请求)
http://192.168.1.6:9200/my_doc/_doc/文档id?source=字段名1,字段名2
或http://192.168.1.6:9200/my_doc/_doc/_search?source=字段名1,字段名2
(4)查询数据是否存在(head请求)
http://192.168.1.6:9200/my_doc/_doc/文档id

最后

以上就是靓丽方盒为你收集整理的分布式搜索引擎-ES-基础语法的全部内容,希望文章能够帮你解决分布式搜索引擎-ES-基础语法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部