
elastaticSearch
elastaticSearch
乐之者v
快乐编程,一生编程。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
es 查询多个索引的文档
可以用 * 模糊匹配。比如 book* ,表示查询所有 book开头的 索引。给索引添加 别名后, 可以统一用别名查询。索引加别名,使用别名搜索。多个索引,用逗号隔开。原创 2023-11-13 00:44:01 · 709 阅读 · 0 评论 -
es 7.0常用的命令
详细的 查询见: https://www.cnblogs.com/expiator/p/13843957.html。es 7.0中只有索引和文档(document),没有类型(type)了。注意:是 _search返回结果中的 _id, 而不是文档中的字段id。PUT 加索引名称 ,比如以下的 PUT /book_2023_09。type 表示字段类型。id、order_no 这些是字段名。原创 2023-11-13 00:43:31 · 399 阅读 · 0 评论 -
ElastaticSearch -- es之Filters aggregation 先过滤再聚合
使用es时,有时我们需要先过滤后再聚合,但如果直接在query的filter中过滤,不止会影响到一个聚合,还会影响到其他的聚合结果。这时可以使用Filters aggregation。也就是在aggregations中先过滤后再聚合。比如,我们想要统计深圳市某个品牌的总销售额,以及该品牌的女款衣服的销售额。直接filter过滤款式为女,那么就无法统计总销售额了。原创 2023-11-13 00:42:57 · 914 阅读 · 0 评论 -
ElastaticSearch -- es深度分页 searchAfter
可以调整es配置的index.max_result_window这个参数,来查询更多的数据,但这并不是很好的办法,最好使用 searchAfter.原创 2023-11-13 00:42:14 · 245 阅读 · 0 评论 -
ElastaticSearch -- es客户端RestHighLevelClient
RestClient、 TransportClient不适合高版本的es,官方推荐使用RestHighLevelClient.es的客户端有 RestClient、 TransportClient 、 RestHighLevelClient,如果有现成的kibana,可以直接在kibana中创建es索引。如果没有,那可以跳过这部分,用后面的java代码去创建。原创 2023-11-13 00:41:34 · 470 阅读 · 0 评论 -
ElastaticSearch -- es批量插入数据
对象集合可以转换成 List,再批量插入es,就能统一成通用的方法了。上面的例子使用的是具体的对象集合 List。原创 2023-11-13 00:40:39 · 699 阅读 · 0 评论 -
ElastaticSearch ---java查看es索引是否存在
以上的 client,改成项目中使用的 es client即可。原创 2023-11-13 00:40:02 · 515 阅读 · 0 评论 -
ElastaticSearch ---es客户端 TransportClient
TransportClient客户端,官方在es 7.0版本中将弃用TransportClient客户端,且在8.0版本中完全移除它.es 7.0及以上的版本,请使用 RestHighLevelClient。如果项目中使用的es版本不高,可以使用 TransportClient。原创 2023-11-13 00:39:17 · 720 阅读 · 0 评论 -
ElasticSearch---es用should表示or的逻辑
minimum_should_match是最低匹配度, minimum_should_match为1, 表示should条件中,至少有一项符合。should,可以配合 minimum_should_match 使用。在使用es时,如果需要用到or逻辑,可以使用should。原创 2023-11-13 00:38:46 · 1296 阅读 · 0 评论 -
ElasticSearch---查询es集群状态、分片、索引
后面加上pretty,能让返回的json格式化。原创 2023-11-13 00:38:14 · 1694 阅读 · 0 评论 -
ElasticSearch---es之Post Filter,聚合后过滤
而且"key"为red的doc_count只有一条,而不是两条,品牌为dior的red衬衫已经去掉了。我们看一下"aggregations"的结果,可以看到color聚合结果中,是存在blue的,用post_filter过滤出color为红色的衬衫,所以"hits"的结果是没有blue的。平常我们使用es,都会先查询、过滤后再进行聚合,但有时也需要在聚合后再过滤,用filter过滤出gucci品牌的衬衫,用aggs对color进行聚合。说明是先filter,再agg,最后再postFilter的。原创 2023-11-13 00:37:27 · 741 阅读 · 0 评论 -
ElastaticSearch----top_hits,es获取聚合的相关文档结果
比如统计各个地区编码的营业额,得到了聚合的统计结果,还想知道query结果中对应的地区名称,并根据营业额进行排序,使用es聚合时,有时还需要获取query(或filter) 的相关文档结果(数据)。这时可以使用 top_hits。原创 2023-11-13 00:36:29 · 725 阅读 · 0 评论 -
ElastaticSearch--- es多字段聚合
在使用es时,我们经常会用到聚合查询。简单的聚合查询,已经在前面介绍过,详情见: https://www.cnblogs.com/expiator/p/13843969.html有时,也会用到多字段聚合查询。类似于Mysql的Group By多个字段。比如,查询统计各个地区的各个日期,各自的订单总量。原创 2023-11-13 00:35:46 · 975 阅读 · 0 评论 -
ElastaticSearch--- es常用的java api
es多字段聚合,对性能要求不高的话,可以使用script。原创 2023-11-13 00:34:59 · 133 阅读 · 0 评论 -
ElastaticSearch---- es聚合查询
Metric Aggregation, 度量聚合,对文档数据的聚合结果进行运算,类似SQL中的聚合函数(比如 max min avg 等)另外还有一个stas聚合,可以返回包括min,max,avg,sum,count等统计信息。Matrix Aggreagation,矩阵聚合,提供对多个字段聚合操作的支持。Pipeline Aggregation,管道聚合,对聚合结果进行二次聚合。比如,分组求平均值avg,求最大max,最小min等。聚合名称1和2需要自己命名,同样会在返回结果中显示。原创 2023-11-12 22:16:30 · 331 阅读 · 0 评论 -
ElastaticSearch-----es的DSL查询与过滤
过滤上下文 是在使用filter参数时候的执行环境,比如在bool查询中使用Must_not或者filter。答案很简单,是或者不是。它不会去计算任何分值,也不会关心返回的排序问题,因此效率会高一点。DSL主要分为查询DSL(query DSL)和过滤DSL(filter DSL)。另外,经常使用过滤器,ES会自动的缓存过滤器的内容,这对于查询来说,会提高很多性能。filter只返回是否匹配,而query会返回相关度的分数score,并进行排序。DSL,把查询条件写在JSON里面,然后进行相关的查询。原创 2023-11-12 22:15:47 · 657 阅读 · 0 评论 -
ElastaticSearch ---- es基础概念及命令
Elasticsearch 是一个高度可扩展且开源的全文检索和分析引擎。可以快速且近实时地存储,检索以及分析海量数据。原创 2023-11-12 22:15:00 · 498 阅读 · 0 评论