ElasticSearch 常用操作
#创建索引
PUT dba_test
{"settings": {"number_of_shards" : 1, "number_of_replicas" : 0 } }
#设置mapping
PUT dba_test/_mappings
{"properties":{
"user_name":{"type":"text","analyzer": "ik_max_word","search_analyzer": "ik_smart"},
"gender":{"type":"keyword","null_value":"NULL"},
"age":{"type":"long"},
"role":{"type":"keyword"},
"create_time":{"type":"date","format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd"}
}
}
查看mapping
POST _sql?format=txt
{"query": "show columns in dba_test"}
查看索引信息
GET dba_test
删除索引
DELETE dba_test
单条添加数据
POST dba_test/_doc/1
{"user_name":"AAA","gender":"男","age":18,"role":"dba","create_time":"2022-01-01 00:00:00"}
批量添加数据
POST _bulk
{"index":{"_index":"dba_test","_id":2}}
{"user_name":"BBB","gender":"男","age":18,"role":"developer","create_time":"2022-01-01 12:00:00"}
{"index":{"_index":"dba_test","_id":3}}
{"user_name":"CCC","gender":"男","age":19,"role":"developer","create_time":"2022-01-02 00:00:00"}
{"index":{"_index":"dba_test","_id":4}}
{"user_name":"DDD","gender":"男","age":20,"role":"tester","create_time":"2022-01-03 00:14:00"}
{"index":{"_index":"dba_test","_id":5}}
{"user_name":"EEE","gender":"男","age":18,"role":"developer","create_time":"2022-01-04 18:00:00"}
{"index":{"_index":"dba_test","_id":6}}
{"user_name":"FFF","gender":"男","age":19,"role":"developer","create_time":"2022-01-05 16:00:00"}
{"index":{"_index":"dba_test","_id":7}}
{"user_name":"GGG","gender":"女","age":20,"role":"developer","create_time":"2022-01-01 20:00:00"}
{"index":{"_index":"dba_test","_id":8}}
{"user_name":"HHH","gender":"女","age":18,"role":"developer","create_time":"2022-01-02 16:00:00"}
{"index":{"_index":"dba_test","_id":9}}
{"user_name":"III","gender":"女","age":19,"role":"tester","create_time":"2022-01-03 15:00:00"}
{"index":{"_index":"dba_test","_id":10}}
{"user_name":"JJJ","gender":"女","age":20,"role":"tester","create_time":"2022-01-04 17:00:00"}
{"index":{"_index":"dba_test","_id":11}}
{"user_name":"KKK","gender":"女","age":18,"role":"developer","create_time":"2022-01-05 12:00:00"}
{"index":{"_index":"dba_test","_id":12}}
{"user_name":"秋实","gender":"男","age":18,"role":"dba","create_time":"2022-01-01 00:00:00"}
{"index":{"_index":"dba_test","_id":13}}
{"user_name":"陈秋实","gender":"男","age":18,"role":"dba","create_time":"2022-01-01 00:00:00"}
查询所有数据
GET /_sql?format=txt
{"query": "SELECT * FROM dba_test"}
GET dba_test/_search
GET dba_test/_search
{"query":{"match_all":{}}}
根据主键查询
GET dba_test/_doc/1
单条件查询
GET dba_test/_search
{
"_source":["user_name","gender","age"],
"query":{
"match":{
"gender":"男"
}
},
"sort":{
"age":{"order":"asc"}
},
"from":0,
"size":10
}
GET /_sql?format=txt
{"query": "SELECT user_name,gender,age FROM dba_test WHERE gender='男' order by age asc limit 10 "}
多条件查询
GET dba_test/_search
{
"_source":["gender","age","role"],
"query":{
"bool":{
"must":[
{"match":{"gender":"男"}},
{"match":{"role":"developer"}}
],
"filter":{
"range":{
"age":{"gt":17}
}
}
}
},
"sort":{
"gender":{"order":"asc"},
"age":{"order":"asc"}
},
"from":0,
"size":10
}
GET /_sql?format=txt
{"query": "SELECT gender,age,role FROM dba_test WHERE gender='男' and role='developer' and age>17 order by gender asc ,age asc limit 10 "}
全文检索
GET dba_test/_search
{"query":{"match_phrase":{"user_name":"陈秋实"}}}
全量覆盖修改文档
PUT dba_test/_doc/1
{"user_name":"AAAA","gender":"男","age":18,"role":"dba","create_time":"2022-01-01T00:00:00"}
部分更新
POST dba_test/_update/1
{"doc":{"user_name":"AAA","age":19}}
批量部分更新
暂无
删除单个文档
DELETE dba_test/_doc/1
查询删除(批量删除)
POST dba_test/_delete_by_query
{ "query":{ "match":{"age":18} } }
Elasticsearch SQL是一个X-Pack组件,它允许针对Elasticsearch实时执行类似SQL的查询。无论使用REST接口,命令行还是JDBC,任何客户端都可以使用SQL对Elasticsearch中的数据进行原生搜索和聚合数据。可以将Elasticsearch SQL看作是一种翻译器,它可以将SQL翻译成Query DSL。
ES SQL语法(只支持单index,不支持分页,不支持主键(_id)查询)
GET /_sql?format=[ txt|json ]
{"query": "SQL"}
SELECT select_expr
[ FROM table_name」
[ WHERE condtion]
[ GROUP BY grouping_element]
[ HAVING condition ]
[ ORDER BY expression [ASC|DESC]
[ LIMIT[ count]]
GET /_sql?format=txt
{"query": "SELECT * FROM dba_test LIMIT 10"}
GET /_sql?format=json
{"query": "SELECT * FROM dba_test LIMIT 10"}
查看集群配置信息
GET _cluster/settings
查看集群健康状态
GET _cluster/health
查看集群当前运行状态
GET _cluster/stats
查看集群所有节点运行状态
GET _nodes/stats
查看集群挂起的任务
GET _cluster/pending_tasks
查看各节点磁盘使用情况
GET /_cat/allocation?v
查看各个索引的健康
GET _cluster/health?level=indices
查看yellow索引
GET /_cat/indices?v&health=yellow
查看red索引
GET /_cat/indices?v&health=red
到底索引的哪个分片出现了红色或者黄色问题
GET _cluster/health?level=shards
到底什么原因导致了集群变成红色或者黄色呢
GET _cluster/allocation/explain
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbgiag
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01