标签:elasticsearch
【Elasticsearch】Java Client连接池
按照 Elasticsearch API,在 Java 端使用是 ES 服务需要创建Java Client,但是每一次连接都实例化一个 client,对系统的消耗很大,即使在使用完毕之后将 client close 掉,由于服务器不能及时回收 socket 资源,极端情况下会导致服务器达到最大连接数。为了解决上述问题并提高 client 利用率,可以参考使……
ElasticSearch:如何在更新时增加内部对象
遇到了和这位题主类似的问题:假如某文档中已经有三个附件(作为内部对象保存),我想增加第四个附件怎么办?ES 本身并没有提供这个功能,需要我们编写 script 来完成。……
elasticsearch系列四:搜索详解(搜索API、Query DSL)
一、搜索 API1. 搜索 API 端点地址从索引 tweet 里面搜索字段 user 为 kimchy 的记录GET /twitter/_search?q=user:kimchy从索引 tweet,user 里面搜索字段 user 为 kimchy 的记录GET /twitter/tweet,user/_search?q=user:ki……
探究 | Elasticsearch如何物理删除给定期限的历史数据?
1、题记想到删除,基础认知是 delete,细分为删除文档(document)和删除索引;要删除历史数据,基础认知是:删除了给定条件的数据,用 delete_by_query。 实际操作发现: 删除文档后,磁盘空间并没有立即减少,反而增加了? 除了定时任务+delete_by_query,有没有更好的方式呢?2、常见的删除操作2.1 ……
elasticsearch painless最强教程
何为 painlessElasticStack 在升级到 5.0 版本之后,带来了一个新的脚本语言,painless。这里说“新的“是相对与已经存在 groove 而言的。还记得 Groove 脚本的漏洞吧,Groove 脚本开启之后,如果被人误用可能带来各种漏洞,为什么呢,主要是这些外部的脚本引擎太过于强大,什么都能做,用不好或者设置不当就会引起安全风……
Elasticsearch2.x 三种缓存介绍:Query Cache、Request Cache、Fielddata Cache
一、Query CacheQuery Cache也称为 Filter Cache,顾名思义它的作用就是对一个查询中包含的过滤器执行结果进行缓存。比如我们常用的 term,terms,range 过滤器都会在满足某种条件后被缓存,注意,这里的 bool 过滤器是不会被缓存的,但 bool 过滤器包含的子 query clause 会被缓存,我们可以用下面……
elasticsearch painless脚本使用(附demo及painless API)
Kibana 提供了一些强大的方法,用于搜索和可视化 Elasticsearch 中存储的数据。为了实现可视化,Kibana 会搜索 Elasticsearch mapping 中定义的 field,并以图表的形式将它们作为选项呈现给用户。但是,如果你忘记在 schema 中将一个重要的值定义为单独的 field 会怎么样呢?或者,如果你想把两个 fiel……
Elasticsearch聚合深入详解——对比Mysql实现
聚合认知前提桶(Buckets)——满足特定条件的文档的集合 指标(Metrics)——对桶内的文档进行统计计算SELECT COUNT(color) FROM table GROUP BY colorCOUNT(color) 相当于指标。 GROUP BY color 相当于桶。一、聚合起步1、创建索引1.1 创建索……
elasticsearch 后置过滤器(Post Filter)
本章翻译自 Elasticsearch 官方指南的Filtering Queries and Aggregations一章。过滤查询以及聚合A natural extension to aggregation scoping is filtering. Because the aggregation operates in the cont……
ElasticSearch java API – 聚合查询
以球员信息为例,player 索引的 player type 包含 5 个字段,姓名,年龄,薪水,球队,场上位置。index 的 mapping 为:“mappings”: { “quote”: { “properties”: { &……