
ES
文章平均质量分 91
Kuo-Teng
这个作者很懒,什么都没留下…
展开
-
大规模数据量下ES如何实现高性能检索?
ElasticSearch,是基于Lucene库的搜索引擎。它提供了一个分布式、多租户的全文搜索引擎,具有HTTP web接口和无模式JSON文档。根据DB引擎排名,Elasticsearch是最受欢迎的企业搜索引擎。ES的特点是分布式、高扩展以及近实时。那么,大规模数据量下ES是如何实现高性能检索的呢?回到我们的文章标题,ES是如何实现高性能模糊查询的呢?ES通过分词然后对每一个单词及其对应文档建立倒排索引,使得能够快速根据关键词找到对应文档id;原创 2023-02-28 23:11:57 · 2530 阅读 · 1 评论 -
Elasticsearch倒排索引(二)深入Term Index
Term Index是一种对映射关系中的词语集合也就是Term Dictionary进行高效索引的数据结构。Term Index是以怎样的形式进行组织的呢?原创 2022-09-20 00:47:39 · 2307 阅读 · 0 评论 -
Elasticsearch倒排索引(一)简介
关系数据库的索引大多是B-Tree结构,而ES使用倒排索引。倒排索引中的所有词语存储在词典中,每个词语又指向包含它的文档信息列表。在某些情况下,两种不同的数据索引方法决定了这两种产品在性能和速度上的差异。例如,在包含数亿数据的关系型数据表上执行最简单的计count查询时,关系型数据库可能需要几秒的响应时间。如果数据表的设计不合理,甚至可能拖垮整个数据库,影响其他数据服务;而ES可以在毫秒级别返回,该查询对整个集群的影响微乎其微。除此之外,ES建立在Lucene基础之上,与生俱来就能完成分词匹配,并且支持多种原创 2022-09-19 00:58:23 · 1051 阅读 · 0 评论 -
ElasticSearch 之 文本搜索
1. 作为一款搜索引擎框架,文本搜索是其核心功能。2. ES在文本索引的建立和搜索过程中依赖两大组件,即Lucene和分析器。3. Lucene负责进行倒排索引的物理构建,分析器负责在建立倒排索引前和搜索前对文本进行分词和语法处理。...原创 2022-08-02 23:00:53 · 1251 阅读 · 0 评论 -
ElasticSearch 之 搜索辅助功能
俗话说“工欲善其事,必先利其器”。在介绍ES提供的各种搜索匹配功能之前,我们先介绍ES提供的各种搜索辅助功能。例如,为优化搜索性能,需要指定搜索结果返回一部分字段内容。为了更好地呈现结果,需要用到结果计数和分页功能;当遇到性能瓶颈时,需要剖析搜索各个环节的耗时;面对不符合预期的搜索结果时,需要分析各个文档的评分细节。...原创 2022-07-28 00:11:52 · 500 阅读 · 0 评论 -
ElasticSearch 之 数据类型
ElasticSearch的数据类型,包括keyword、text、数值、布尔、日期、数组、对象以及地理类型。原创 2022-07-27 23:16:46 · 2294 阅读 · 0 评论 -
ElasticSearch 之 _score
搜索排序是搜索引擎的核心工作之一,搜索排序的好坏影响着搜索质量的好坏。诸如ES、Solr等开源的搜索引擎,它们在默认情况下使用的都是相关性排序。那么什么是相关性呢?相关性指的是搜索结果和查询条件的相关程度,它是搜索质量的重要指标之一。就ES来说,搜索结果中的每个结果都有一个_score字段,ES默认按照相关性算法计算每个命中的文档的_score字段值,命中的文档按照该字段的值进行降序排列。......原创 2022-07-19 16:43:26 · 1611 阅读 · 0 评论