1. Kibana 的版本
- 服务器安装的ElasticSearch 和Kibana 的版本均为 6.5.4
2. Kibana 操作命令
2.1 索引的查询语句(简单的查询)
- 查询 所有索引的所有数据,执行命令:
GET _search
{
"query": {
"match_all": {}
}
}
2.查询指定索引goods的所有数据,执行命令:
GET /goods/_search
{
"query": {
"match_all": {}
}
}
3.查询指定索引指定类型指定ID的某些字段的数据,执行命令:
GET /goods/goods/2?_source=name
这个语句相当于 SELECT name FROM goods WHERE ID = 2
GET /goods/goods/2?_source=name,detail
这个语句相当于SELECT NAME,detail FROM goods WHERE ID = 2
4.查询 某个索引的某个类型的某个id的数据 (以下两种方式均可)
GET /goods/goods/2
或
GET /goods/goods/2?_source
5.设置查询返回的索引数据数量
GET /goods/_search
{
"query": {
"match_all": {
}
},
"from": 1,
"size": 2
}
6.按照指定字段name的值模糊查询相关数据
GET /goods/_search
{
"query": {
"match": {
"name": "Max"
}
}
}
7.查询内容排序(按照时间倒序排列)
GET /goods/_search
{
"query": {
"match": {
"name": "苹果Max"
}
},
"sort": [
{
"created_time": {
"order": "asc"
}
}
]
}
8. 获取所有的设置
GET _settings
9. 查询索引中的内容
GET goods/_analyze
{
"field": "text",
"text": "苹果"
}
10. 指定条件过滤查询
GET /goods/goods/_search
{
"query" : {
"bool": {
"must": {
"match" : {
"name" : "iphone"
}
},
"filter": {
"range" : {
"price" : { "gt" : 5000 }
}
}
}
}
}
2.2 新增数据
- 指定ID插入数据(相当于插入一条记录到一个数据库表中)
PUT /goods/goods/5
{
"detail" : "官方授权苹果 7Plus",
"@version" : "1",
"updated_time" : "2020-02-14T10:40:40.000Z",
"name" : "苹果 max",
"sub_images" : """{"imgages":[{"http://img.iblimg.com/photo-42/3020/1135120490_200x200.jpg"},{"http://img.iblimg.com/photo-42/3020/1135120490_200x200.jpg"}]}""",
"price" : null,
"stock" : null,
"category_id" : 11,
"main_image" : "http://img.iblimg.com/photo-42/3020/1135120490_200x200.jpg",
"created_time" : "2020-02-14T22:40:40.000Z",
"revision" : 1,
"status" : 0,
"subtitle" : "iPhone 7 Plus",
"created_by" : null,
"attribute_list" : "1,2,3",
"updated_by" : null,
"@timestamp" : "2020-02-14T22:51:00.270Z"
}
- 系统默认ID的插入方式
POST /goods/goods/
{
"detail" : "官方授权iPhone XS",
"@version" : "1",
"updated_time" : "2020-02-14T21:40:40.000Z",
"name" : "苹果 X",
"sub_images" : """{"imgages":[{"http://img.iblimg.com/0x200.jpg"},{"http://img.iblimg.com/0x200.jpg"}]}""",
"price" : 5288,
"stock" : null,
"category_id" : 11,
"main_image" : "http://img.iblimg.com/00.jpg",
"created_time" : "2020-02-14T21:40:40.000Z",
"revision" : 1,
"status" : 0,
"subtitle" : "iPhone XS",
"created_by" : null,
"attribute_list" : "1,2,3",
"updated_by" : null,
"@timestamp" : "2020-02-14T22:51:00.270Z"
}
2.3 索引的更新操作(相当于SQL的修改操作)
- 覆盖式修改索引文档
PUT /goods/goods/5
{
"detail" : "官方授权苹果 XR",
"@version" : "1",
"updated_time" : "2020-02-14T21:23:40.000Z",
"name" : "苹果 iPhone XR",
"sub_images" : """{"imgages":[{"http://img.iblimg.com/photo-42/3020/1135120490_200x200.jpg"},{"http://img.iblimg.com/photo-42/3020/1135120490_200x200.jpg"}]}""",
"price" : 5288,
"stock" : null,
"category_id" : 11,
"main_image" : "http://img.iblimg.com/photo-42/3020/1135120490_200x200.jpg",
"created_time" : "2020-02-14T21:40:40.000Z",
"revision" : 1,
"status" : 0,
"subtitle" : "iPhone XR",
"created_by" : null,
"attribute_list" : "1,2,3",
"updated_by" : null,
"@timestamp" : "2020-02-14T22:51:00.270Z"
}
该句相当于SQL的UPDATE goods SET NAME = ?,price= ?,subtitle= ?,detail= ? WHERE ID = 5
- 修改索引文档的某些字段的值
POST /goods/goods/2/_update
{
"doc":{
"price":6888
}
}
该句相当于SQL的 UPDATE goods SET price= 6888 WHERE ID =2
2.4 索引的删除操作
删除操作分为3种:
- 删除整个index(库)
DELETE goods
- 删除一个type(表)
DELETE goods/goods
- 删除一条记录
DELETE /goods/goods/5/
参考: Kibana 用户手册
Elasticsearch:权威指南
以及博客:Kibana+ElasticSearch实现索引数据的增删改查
后续更新…