本文最后编辑于 前,其中的内容可能需要更新。
ES 查询相关内容
基础变量信息
1 2 3
| @host=http://127.0.0.1:9200 @table=face
|
注 : 复制 json 注意删除注释
1、 table 操作相关
1.1、 查看表信息
查看表信息(相关配置项)
1 2
| GET {{host}}/{{table}} Content-Type: application/json
|
1.2、 aliases
查看所有表别名
1 2
| GET {{host}}/_aliases Content-Type: application/json
|
1.3、count
查看库中数据数量
1 2
| GET {{host}}/{{table}}/_count Content-Type: application/json
|
1
| GET {{host}}/_cat/count/{{table}}?v
|
1.4、 indices
获取所有表的信息
1
| GET {{host}}/_cat/indices
|
获取指定表信息
1
| GET {{host}}/_cat/indices/{{table}}?v&format=json
|
1.5、 refresh
刷新索引
修改 ES 数据之后,不会及时刷新。故可能会调用这个
index settings 配置文件中 index.refresh_interval 来指定refresh间隔
1
| GET {{host}}/{{table}}/_refresh
|
1.6、 获取指定表信息
获取指定表信息
1
| GET {{host}}/_cat/indices/{{table}}?v&format=json
|
1.7、 新建表
新建表
1 2
| PUT {{host}}/{{table}} Content-Type: application/json
|
json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| { "settings": { "index": { "number_of_shards": 1, "max_result_window": 50000, "max_ngram_diff": 10, "sort.field": [ "case_time" ], "sort.order": [ "desc" ] } }, "aliases": { "tab_zfjd_alarm_result": {} }, "mappings": { "properties": { "s_id": { "type": "keyword", "doc_values": true }, "case_time": { "type": "date", "doc_values": true }, "neglect": { "type": "integer", "doc_values": true } } } }
|
1.8、 清空表数据
清空表数据
1
| {{host}}/{{table}}/_doc/_delete_by_query
|
json
1 2 3 4 5
| { "query": { "match_all": {} } }
|
1.9、添加表字段
添加表字段
1 2
| POST {{host}}/{{table}}/_mapping?pretty Content-Type: application/json
|
json
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| { "{{table}}": { "properties": { "rightbtmx2": { "type": "integer", "index": true, "cql_collection": "singleton" }, "rightbtmx": { "type": "alias", "path": "rightbtmx2" } } } }
|
1.9、 删除库
删除库
1
| DELETE {{host}}/{{table}}
|
2、 表配置相关
2.1、 线程池
线程池
1
| GET {{host}}/_cat/thread_pool
|
2.2、 查询设置
查询设置
1
| GET {{host}}/_cluster/settings
|
2.3、 修改配置
修改配置
1 2
| PUT {{host}}/_cluster/settings Content-Type: application/json
|
json
1 2 3 4 5
| { "transient": { "search.max_buckets": 2000000 } }
|
3、 查询相关
3.1、 _doc (主键id查询)
主键id查询
1 2
| GET {{host}}/{{table}}/_doc/主键id Content-Type: application/json
|
3.2、 普通查询
普通查询
1 2
| GET {{host}}/{{table}}/_search Content-Type: application/json
|
条数查询
json
查询单个字段
json
warn_code : 字段名
0606009 : 实际值
1 2 3 4 5 6 7
| { "query": { "term": { "warn_code": "0606009" } } }
|
查询多个字段
json
sfsc : 字段名
0 : 实际值
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| { "query": { "bool": { "filter": [ { "term": { "sfsc": "0" } }, { "term": { "case_type": "01" } } ] } } }
|
时间类查询
json
dt_create_time : 字段名
gte : 大于
lte : 小于
2020-02-13T13:13:09 : 实际时间
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| { "query": { "bool": { "filter": [ { "range": { "dt_create_time": { "gte": "2022-01-01T00:00:00" } } }, { "range": { "dt_create_time": { "lte": "2022-02-23T23:59:59" } } } ] } } }
|
模糊查询
json
【wildcard】 用于分词查询
注意分词查询需要前后 + *
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| { "size": 30, "query": { "bool": { "filter": [ { "term": { "sfsc": "0" } }, { "term": { "case_type": "01" } }, { "range": { "dt_create_time": { "gte": "2022-01-01T00:00:00" } } }, { "range": { "dt_create_time": { "lte": "2022-02-23T23:59:59" } } } ] } }, "from": 0, "sort": [ { "dt_create_time": "desc" } ] }
|
排序
json
【sort】 排序
dt_create_time : 字段名
desc : asc | 正序、倒序
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| { "size": 30, "query": { "bool": { "filter": [ { "term": { "sfsc": "0" } } ] } }, "from": 0, "sort": [ { "dt_create_time": "desc" } ] }
|
模糊分词查询
json
【match_phrase】 非分词情况下的查询
s_extends_info : 字段名
$alarmId : 实际查询内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| { "size": 1, "query": { "bool": { "filter": [ { "match_phrase": { "s_extends_info": "$alarmId" } } ] } } }
|
3.3、 批量操作
批量操作
1 2
| GET {{host}}/{{table}}/_bulk Content-Type: application/json
|
json
1 2 3 4 5 6 7
| { "index" : { "_index" : "test", "_id" : "1" } } { "field1" : "value1" } { "delete" : { "_index" : "test", "_id" : "2" } } { "create" : { "_index" : "test", "_id" : "3" } } { "field1" : "value3" } { "update" : {"_id" : "1", "_index" : "test"} } { "doc" : {"field2" : "value2"} }
|
3.4、 特殊查询(date_histogram)
特殊查询(date_histogram)
用于查询查询 。例如统计按照每年每月,或者没小时统计
是否需要自动补 0 【min_doc_count】 配合 【extended_bounds】 使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| { "size": 0, "query": { "bool": { "filter": [ { "term": { "sfsc": "0" } }, { "term": { "case_type": "05" } }, { "bool": { "filter": [ { "range": { "dt_create_time": { "gte": "2022-01-01T00:00:00" } } }, { "range": { "dt_create_time": { "lte": "2022-02-22T23:59:59" } } } ] } } ] } }, "aggs": { "dt_create_time": { "date_histogram": { "field": "dt_create_time", "format": "yyyy-MM-dd", "interval": "month", "min_doc_count": 0, "extended_bounds": { "min": "2022-01-01", "max": "2022-02-22" } } } } }
|
4 、 分词查询
4.1 、 测试分词
测试分词
1 2
| POST {{host}}/{{table}}/_analyze Content-Type: application/json
|
1 2 3 4
| { "field":"whitespace", "text":"(30-9) and(31_6)," }
|
5、 ES 备份还原数据 !!!
es 数据备份还原
TODO - 待补充