ElasticSearch
Posted ettisi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch相关的知识,希望对你有一定的参考价值。
elasticsearch的核心API
搜索:
GET /xx/_search
{
query:{},
from: 0,
size: 10,
sort:{},
highlight:{},
aggs: {},
suggest:{},
_source: {}
}
- 请求DSL构建
-
- SearchRequest#source(), 构建完整的搜索DSL的
-
- SearchRequest#source().query(QueryBuilders), QueryBuilders包含各种各样的query
QueryBuilders#matchQuery()\\termQuery()\\rangeQuery()\\boolQuery()\\functionScoreQueury()
- SearchRequest#source().query(QueryBuilders), QueryBuilders包含各种各样的query
-
- SearchRequest#source().from(0).size(10) 分页
-
- SearchRequest#source().sort("fieldName", SortOrder.ASC) 排序
-
- SearchRequest#source().highlight(new HighlightBuilder().field("xx").requiredFieldMatch(false))高亮
-
- SearchRequest#source().aggs(AggregationBuilders.term("xx").field(""))
-
- SearchRequest#source().suggest(
new SuggestBuilder().addSuggestion("",
SuggestBuilders.completionSuggestion("field").size(10).prefix("s").skipDuplicates(true)))
- SearchRequest#source().suggest(
-
- 结果解析
参考结果的JSON,从外到内,逐层解析。需要注意两个:- 聚合时,聚合结果要转型 Aggregation --> Terms、Stats
- 补全时,补全结果要转型:Suggestion --> CompletionSuggestion
使用Nacos时:
- 依赖: Nacos-Discovery
- yaml文件中的nacos地址
使用Feign:
- 依赖:OpenFeign
- 启动类注解@EnableFeignClients
- 编写Feign客户端
使用Gateway:
- 依赖:gateway、Nacos-Discovery
- yaml配置:路由、nacos地址
以上是关于ElasticSearch的主要内容,如果未能解决你的问题,请参考以下文章