不同版本的Dev Tools基本使用语法
ES7版本之前
1、创建index
// 创建index
PUT /zhang
// 验证index是否存在
HEAD zhang
2、删除index
// 删除index
DELETE /zhang
// 删除所有index(将会导致kibana无法使用。需要重启kibana,慎用。)
DELETE /*
3、查询所有索引
// 查询所有的索引
GET /_cat/indices?v
4、创建Type
// 创建Type
put /zhang
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 1
},
"mappings": {
// nginxlog为一个Type, 可以有多个Type
"nginxlog": {
"properties": {
"prov": {
"type": "keyword"
},
"isp": {
"type": "keyword"
},
"dt": {
"type": "date"
},
"bd": {
"type": "float"
}
}
}
}
}
5、对Type的操作
// 查询type的mapping
GET /zhang/_mapping/nginxlog
// 创建document, 指定了_id为1, 可以根据_id查询document, 如若未指定则会自动生成_id
POST zhang/nginxlog/1
{
"prov": "湖南",
"isp": "联通",
"dt": "2021-10-26T18:09:00+08:00",
"bd": 1000
}
// 修改document,其他字段不变
// * 修改时, 如果不带_update, 会将剩余字段覆盖, 只留下修改的这个字段。
POST /zhang/nginxlog/1/_update
{
"doc": {
"prov": "上海",
"isp": "电信"
}
}
// * 批量时不会因为一个失败而全部失败,而是继续执行后续操作,批量在返回时按照执行的顺序开始返回
// 批量新增document
PUT /zhang/nginxlog/_bulk
{"index":{"_id":"2"}}
{"prov": "湖南", "isp": "电信", "dt": "2023-08-31T18:09:00+08:00", "bd": 500}
{"index":{"_id":"3"}}
{"prov": "湖南", "isp": "移动", "dt": "2023-08-31T18:09:00+08:00", "bd": 250}
// 批量新增修改删除
POST /zhang/nginxlog/_bulk
// 修改
{"update":{"_id":"1"}}
{"doc":{"name":"lisi"}}
// 删除
{"delete":{"_id": 2}}
//新增
{"index":{}}
{"name":"小青","address":"武汉"}
ES7版本之后
ES7已经将_mapping类型删除,7.0 开始,就被 Deprecated 了。一个索引只能创建一个 type,值为 _doc
1、索引
// 创建索引
// 一个索引只能创建一个tpye, 可以在创建时指定数据类型, 如若不指定, 则在传入数据时, 会自动根据数据使用所对应的数据类型
PUT sc15
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 1
},
"mappings": {
"properties": {
"prov": {
"type": "keyword"
},
"isp": {
"type": "keyword"
},
"dt": {
"type": "date"
},
"bd": {
"type": "float"
}
}
}
}
// 查看索引
GET sc15
// 查询所有索引
GET *
// 测试索引是否已存在
HEAD sc15
// 删除索引
DELETE sc15
2、数据
// 相当于_mapping只有一个type为 _doc
// 添加数据, 指定_id为1
POST sc15/_doc/1
{
"dt": "2023-08-31T18:09:00+08:00",
"prov": "北京",
"isp": "电信",
"bd": 1001,
"name": "张家鑫"
}
// 删除sc15索引下的指定_id的数据
DELETE sc15/_doc/1
// 修改sc15索引下指定_id的数据
POST /sc15/_update/1
{
"doc": {
"isp": "联通"
}
}
// 查看sc15索引下的所有数据
GET /sc15/_search
{
"query":{
"match_all":{}
}
}
// 批量添加数据
PUT /sc15/_bulk
{"index":{"_id":"2"}}
{"prov": "湖南", "isp": "电信", "dt": "2023-08-31T18:09:00+08:00", "bd": 500}
{"index":{"_id":"3"}}
{"prov": "湖南", "isp": "移动", "dt": "2023-08-31T18:09:00+08:00", "bd": 250}
// 批量新增修改删除数据
POST /sc15/_bulk
// 修改
{"update": {"_id": "1"}}
{"doc": {"prov": "湖南"}}
// 新增
{"index": {"_id": "4"}}
{"prov": "杭州", "isp": "电信", "dt": "2023-08-31T18:09:00+08:00", "bd": 550}
// 删除
{"delete":{"_id": "1"}}