分布式搜索引擎-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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值