![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
elasticSearch
文章平均质量分 57
萝卜7
全菜开发工程师
展开
-
ES 多桶排序
ES 多桶排序当我们使用多值桶(terms、histogram和date_histogram)时,会动态生成很多桶,ES默认的会按照doc_count降序排列内置排序需求:做一个 terms 聚合但是按 doc_count 值的升序排序GET /cars/transactions/_search{ "size" : 0, "aggs" : { "colors" : { "terms" : { "fiel原创 2022-03-28 21:00:00 · 2067 阅读 · 0 评论 -
ES 聚合和过滤
ES 聚合和过滤聚合范围限定还有一个自然的扩展就是过滤。因为聚合是在查询结果范围内操作的,任何可以适用于查询的过滤器也可以应用在聚合上。数据准备PUT cars{ "mappings": { "transactions": { "properties": { "color": { "type": "keyword" }, "make": { "type"原创 2022-03-26 19:00:00 · 1907 阅读 · 0 评论 -
ES 时间聚合
ES 时间聚合数据准备PUT cars{ "mappings": { "transactions": { "properties": { "color": { "type": "keyword" }, "make": { "type": "keyword" }, "price": { "type"原创 2022-03-24 18:54:06 · 1177 阅读 · 0 评论 -
ES 条形图 histogram
ES 条形图 histogramES 中的聚合还有一个优点,可以很容易的转化成图表和图形,直方图 histogram数据准备PUT cars{ "mappings": { "transactions": { "properties": { "color": { "type": "keyword" }, "make": { "type": "keyword原创 2022-03-25 19:00:00 · 1004 阅读 · 0 评论 -
ES 聚合-嵌套桶
ES 聚合-嵌套桶数据准备PUT cars{ "mappings": { "transactions": { "properties": { "color": { "type": "keyword" }, "make": { "type": "keyword" }, "price": { "typ原创 2022-03-23 19:00:00 · 946 阅读 · 0 评论 -
ES单桶-Java API实现
ES单桶-Java API实现数据准备PUT cars{ "mappings": { "transactions": { "properties": { "color": { "type": "keyword" }, "make": { "type": "text" }, "price": { "原创 2022-03-22 20:44:09 · 972 阅读 · 0 评论 -
ES聚合查询-桶的概念
ES聚合查询-桶的概念桶聚合桶(Buckets),满足特定条件的文档的集合桶 在概念上类似于SQL中的分组(group by)分桶就是将某一类共同特征的数据归为一类,然后计算总数,例如一个员工属于男性桶或者女性桶,商品评级:高档、中档、低档等等当聚合开始被执行,每个文档里面的值通过计算来决定符合哪个桶的条件。如果匹配到,文档将放入相应的桶并接着进行聚合操作。桶也可以被嵌套在其他桶里面,提供层次化的或者有条件的划分方案。例如,海淀区被放入北京这个桶,而整个北京桶会被放入中国这个桶。实例原创 2022-03-21 22:56:40 · 1535 阅读 · 0 评论 -
ES基础查询
ES查询QueryBuildersQueryBuilders是es中的查询条件构造器,用来生成一些QueryBuilder的查询类,如常用的TermQueryBuilder(精确匹配)、IdsQueryBuilder(根据ID查询)、BoolQueryBuilder(布尔查询)、MatchAllQueryBuilder(全匹配查询)、WildcardQueryBuilder(通配符查询)等等QueryBuilders的部分代码如下:/** * A static factory for原创 2022-03-18 18:30:00 · 1742 阅读 · 0 评论 -
Skip List(跳表)
Skip List(跳表)Skip List(跳表)是一种随机化的数据结构,其效率可比拟于二叉查找树,查找的时间复杂度O(logn),空间复杂度O(n)。简单的来说就是在有序链表的基础上加了索引,实现对链表的操作可以不用从头开始一个个的遍历,而是可以快速的跳过部分列表,跳表因此而得名。概念假设有这样一个有序单链表,它的跳表样子可能如下:一个跳表,应该具有以下特征:一个跳表应该有几个层(level)组成;跳表的第一层包含所有的元素;每一层都是一个有序的链表;如果元素x出现在第i原创 2022-03-17 20:30:00 · 502 阅读 · 0 评论 -
ES 索引
ES 索引Elasticsearch(以下称之为 ES)是一款基于 Lucene 的分布式全文搜索引擎,擅长海量数据存储、数据分析以及全文检索查询。Lucene 是 Apache 下的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,它是 ES 实现全文检索的核心基础,索引文档以及搜索索引的的核心流程都是在 Lucene 中完成的。基础结构MySQLESdatabase数据库inde原创 2022-03-11 19:00:00 · 14049 阅读 · 0 评论 -
ElasticSearch 5.5.0学习笔记(三)-ElasticSearch API
ElasticSearch 5.5.0学习笔记(三)-ElasticSearch API1. 依赖引入<dependencies> <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --> <dependency> <groupId>com.alibaba</groupId> <artifactId>fast原创 2021-09-15 16:43:15 · 231 阅读 · 0 评论 -
ElasticSearch 5.5.0学习笔记(二)
ElasticSearch 5.5.0学习笔记(二)1. QueryDSL检索1.1 范围查询GET user/customer/_search{ "query": { "range": { "age": { "gte": 10, "lte": 20 } } }}返回结果:{ "took": 0, "timed_out": false, "_shards": { "total": 5,原创 2021-09-14 20:46:19 · 175 阅读 · 0 评论 -
ElasticSearch 5.5.0学习笔记(一)
ElasticSearch 5.5.0学习笔记(一)1. ES中的基本概念1.1 接近实体ElasticSearch是一个接近实体的搜索平台,意味着,从索引一个文档直到这个文档能够被搜索到有一个轻微的延迟(通常是1秒内)1.2 索引(index)一个索引就是一个拥有几分相似特征的文档集合。一个索引由一个名字来标识,并且当我们要对这个索引中的文档进行索引、搜索、更新和删除的时候,都要使用到这个名字。索引类似于关系型数据库中的Database概念1.3 类型(type)在一个索引中,你可原创 2021-09-13 19:56:19 · 266 阅读 · 0 评论 -
elasticSearch入门
elasticSearch介绍1. 简介elasticSearch是一款基于Apache Lucene构建的开源搜索引擎,采用java编写并使用Lucene构建索引、提供搜索功能,ElasticSearch的目标是让全文搜索变得简单,开发者可以通过他简单明了的RestFul API轻松的实现搜索功能,而不必去面对Lucene的复杂性。ES能够轻松的进行大规模的横向扩展,以支撑PB级的结构化和非结构化海量数据的处理。一言蔽之:ElasticSearch是一款基于Lucene的实时分布式搜索和分析引擎。原创 2021-08-12 19:44:27 · 94 阅读 · 0 评论