【Elasticsearch】【基础操作使用

网友投稿 765 2022-05-29

使用环境:kibana - Dev Tools

包含了全部基本的es增删改查相关操作,其中还有一些高级检索操作

# 1. 查看所有索引 GET /_cat/indices?v # 2. 创建索引,语法:PUT /索引 PUT /huahua_index_1 # 3. 删除索引,语法:DELETE /索引 DELETE /huahua_index_1 # 4. 新增/更新文档,语法:PUT /索引/类型/文档id PUT /huahua_index_1/blog/3 { "blog_name": "huahuaBolg3", "article_qty": 3, "age" : 3, "about":"this only a blog", "interests": ["java","python","linux"] } # 5. 删除文档,语法:DELETE /索引/类型/文档id DELETE /huahua_index_1/blog/3 # 6. 简单搜索(使用查询字符串参数),查询指定索引和类型下的文档记录(默认返回前10笔记录),语法:GET /索引/类型/_search GET /huahua_index_1/blog/_search # 6.1 简单搜索(使用查询字符串参数),查询指定文档ID记录,语法: GET /索引/类型/文档ID GET /huahua_index_1/blog/1 # 7.轻量搜索(使用查询字符串参数),将查询数据进行字段筛选,语法:GET /索引/类型/_search?q=字段key:字段value GET /huahua_index_1/blog/_search?q=age:7 # 查询age等于7的所有文档 # 7.1 轻量搜索(使用查询字符串参数),将查询数据进行字段筛选并按字段排序,语法:GET /索引/类型/_search?q=字段key:字段value&sort=字段key:desc/asc GET /huahua_index_1/blog/_search?q=blog_name:huahuaBolg7&sort=age:desc # 8. 高级DSL搜索(使用查询body),使用match查询所有文档记录,语法: # GET /索引/类型/_search # { # "query":{ # "match_all": {} # } # } GET /huahua_index_1/blog/_search { "query":{ "match_all": {} } } # 8.1 查询结果中指定返回条数 GET /huahua_index_1/blog/_search { "query":{ "match_all": {} }, "size":5 } # 8.2 分页查询 GET /huahua_index_1/blog/_search { "query":{ "match_all": {} }, "from":5, "size":1 } # 8.3 查询结果中返回指定字段 GET /huahua_index_1/blog/_search { "query":{ "match_all": {} }, "_source":["blog_name","age"] } # 8.4 关键字查询,使用term GET /huahua_index_1/blog/_search { "query":{ "term": { "age": { "value": "22" } } } } # 8.4 范围查询,使用range,gt大于,lt小于 GET /huahua_index_1/blog/_search { "query":{ "range": { "age": { "gt": 6, "lt": 23 } } } } # 8.6 前缀查询,使用prefix,查询包含分词为前缀的文档记录 GET /huahua_index_1/blog/_search { "query":{ "prefix": { "about": { "value": "hua" } } } } # 8.7 通配符查询,使用wildcard GET /huahua_index_1/blog/_search { "query":{ "wildcard": { "blog_name": { "value": "hua*" } } } } # 8.8 模糊查询,使用fuzzy,也是按照分词来查询 GET /huahua_index_1/blog/_search { "query":{ "fuzzy": { "about": { "value": "huahua" } } } } # 8.9 根据指定字段查询,使用multi_match GET /huahua_index_1/blog/_search { "query":{ "multi_match": { "query": "华", "fields":["blog_name","about"] } } } # 9. 高级DSL搜索(使用查询body),使用match/match_phrase将查询数据进行字段筛选(包含精准检索和全文检索),语法: # GET /索引/类型/_search # { # "query":{ # "match/match_phrase": { # "字段key": "字段value" # } # } # } # 9.1 精准检索,查询字段age=7的所有文档记录 GET /huahua_index_1/blog/_search { "query":{ "match": { "age": "7" } } } # 9.2 全文检索,在ES的映射类型中keyword , date ,integer, long , double , boolean or ip这些类型不分词,只有text类型分词。:about字段包含huahua和华等分词的所有文档记录,查询结果按照匹配程度进行排序评分,在_score字段记录评分 GET /huahua_index_1/blog/_search { "query":{ "match": { "about": "huahua 华" } } } # 9.3 短语检索,查询匹配连续的短语 GET /huahua_index_1/blog/_search { "query":{ "match_phrase": { "about": "huahua is human" } } } GET /huahua_index_1/blog/_search { "query":{ "match_phrase_prefix": { "about": "huahua is " } } } # 10. 高级DSL搜索(使用查询body),使用match/match_phrase/highlight将结果中匹配到的关键字高亮 GET /huahua_index_1/blog/_search { "query":{ "match_phrase": { "about": "huahua is human" } }, "highlight":{ "fields":{ "about":{} } } } # 11. 高级DSL搜索(使用查询body),使用bool和fiter将查询数据进行组合筛选,实现复杂筛选,语法: # GET /索引/类型/_search # { # "query":{ # "bool": { # "must/must_not": {查询条件}, # "filter": {过滤条件} # } # } # } # 12. 使用bool的must筛选指定的字段名,同时使用filter进行范围筛选,也可以分开使用 GET /huahua_index_1/blog/_search { "query":{ "bool": { "must":{ "match":{ "blog_name":"huahuaBolg7" } }, "filter":{ "range":{ "age":{"gt":7} } } } } } # 13. 高级DSL搜索(使用查询body),使用聚合aggs在查询数据中生成复杂的分析统计,像sql中的group by但功能更强大 # 如果聚合的字段被禁止聚合操作请执行下面语句,开启聚合功能,不过会增加内存的消耗 PUT /huahua_index_1/_mapping { "properties":{ "interests":{ "type":"text", "fielddata":true } } } GET /huahua_index_1/blog/_search { "query":{ "match": { "blog_name": "huahuaBolg7" } }, "aggs":{ "all_interests":{ "terms":{ "field": "interests" }, "aggs":{ "avg_age":{ "avg":{ "field": "age" } } } } } }

【Elasticsearch】【基础】操作使用

elasticsearch

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:云计算行业应用—大数据@音视频(一)
下一篇:ElasticSearch全文检索__ElasticSearch Java API
相关文章