ElasticStack
未读
ElasticSearch的Agg聚合检索
ES的一个很重要的功能是它的聚合分析能力,通过对搜索条件匹配到的文档进行聚合,可以获取到如最小值、最大值、某类数据的文档数等等。
文章介绍了如何使用一些常见的聚合,及一些需要关注的点。
ElasticStack
未读
ElasticSearch的倒排索引和列式存储
在关系型数据库中,当我们有一个字段内容如 “my name is nico”,如果想要搜索字段内容含“nico”的数据。在mysql中,需要写sql如下:select * from user where desc like ‘%nico%’,毫无疑问,它会全表扫描。
ElasticStack
未读
ElasticSearch关于DSL检索
在学习ES的过程中,数据检索的方式可以是Sql、一些语言客户端(http)、EQL、DSL,其中DSL是ES进行搜索不可或缺的东西,DSL究竟是什么,怎么用,有哪些需要注意的呢,接下来一一进行探索。
ElasticStack
未读
ElasticSearch搜索加不加keyword有什么不同呢?
在项目中,通过ES检索时,对于文本字段的搜索,加.keyword和不加.keyword的表现有时并不相同,花时间做个分析和总结。在分析前,先来看下在ES中都有哪些常见数据类型。
ElasticStack
未读
ElasticSearch是如何实现近实时搜索的?
我们都知道ElasticSearch(ES)是近实时搜索引擎,它不像关系型数据库一样,通过事务和隔离性来控制。ES主要用于大数据量/复杂场景的检索能力,近实时也是为了提高索引和检索的性能,那么它是如何做到的呢?我们先来看几个概念。
延迟双删的第一次删除有意义吗?
在使用缓存的时候,如何做到数据库与缓存数据的一致性,是至关重要的,那么延迟双删策略,便是策略之一。数据库层和缓存层的一致性通常也叫双写一致性,在分布式系统中,一致性会分为:强一致性、弱一致性。