《深入理解Elasticsearch(原书第2版)》一2.2.2 回到Apache Lucene

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介:

本节书摘来华章计算机《深入理解Elasticsearch(原书第2版)》一书中的第2章 ,第2.2.2节,[美]拉斐尔·酷奇(Rafal Ku) 马雷克·罗戈任斯基(Marek Rogoziski)著 张世武 余洪淼 商旦 译 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.2.2 回到Apache Lucene

现在我们回到Lucene。如果你还记得Lucene倒排索引是如何构建的,你会指出倒排索引中包含了词项、词频以及文档指针(如果忘了,请重新阅读1.1节)。现在我们看看之前存储到clients索引中的数据大概是如何组织的。

image


Term这一列非常重要。如果我们去探究Elasticsearch和Lucene的内部实现,将会发现前缀查询被改写为下面这种查询:
image

我们可以用Elasticsearch API来检查重写片段。首先,使用Explain API执行如下命令:
image

执行结果如下:
image

可以看到,Elasticsearch对name字段使用了一个词项是joe的constant_score查询。当然,这一步发生在Lucene中,Elasticsearch实际上只是从缓存中获取这些词项。这一点可以用Validate查询API来验证。
image
image

Elasticsearch返回的结果如下:
image

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
7月前
|
存储 JSON Java
ElasticSearch前世今生lucene
ElasticSearch前世今生lucene
42 0
|
1月前
|
存储 机器学习/深度学习 关系型数据库
为什么Elasticsearch/Lucene检索可以比MySQL快?
为什么Elasticsearch/Lucene检索可以比MySQL快?
27 2
|
10月前
|
自然语言处理 Java 索引
【ElasticSearch从入门到放弃系列 三】Lucene的基本概念和使用(下)
【ElasticSearch从入门到放弃系列 三】Lucene的基本概念和使用(下)
53 0
【ElasticSearch从入门到放弃系列 三】Lucene的基本概念和使用(下)
|
10月前
|
存储 自然语言处理 JavaScript
【ElasticSearch从入门到放弃系列 三】Lucene的基本概念和使用(上)
【ElasticSearch从入门到放弃系列 三】Lucene的基本概念和使用(上)
76 1
|
11月前
|
算法 Java
白话Elasticsearch24- 深度探秘搜索技术之TF&IDF算法/向量空间模型算法/lucene的相关度分数算法
白话Elasticsearch24- 深度探秘搜索技术之TF&IDF算法/向量空间模型算法/lucene的相关度分数算法
62 0
|
存储 自然语言处理 搜索推荐
Elasticsearch 学习笔记(一)-----Lucene的简介以及索引原理
今天,正式开始学习Elasticsearch,因为Elasticsearch是用Lucene来实现索引的查询功能的,所以,理解Lucene的原理显的尤为重要。
346 0
Elasticsearch 学习笔记(一)-----Lucene的简介以及索引原理
|
XML JSON 自然语言处理
Lucene和ElasticSearch关系
Lucene和ElasticSearch关系
|
存储 搜索推荐 Java
全文搜索引擎 Lucene Solr ElasticSearch 关系?
全文搜索引擎是目前广泛应用的主流搜索引擎。它的工作原理是计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。
全文搜索引擎 Lucene Solr ElasticSearch 关系?
|
存储 编解码 自然语言处理
Apache Lucene 4 ----Sigir2012 论文译文
假期重新把之前在新浪博客里面的文字梳理了下,搬到这里
297 0
Apache Lucene 4 ----Sigir2012 论文译文
|
存储 自然语言处理 Java
Luke:用于Lucene / Solr / Elasticsearch索引的GUI工具
Luke:用于Lucene / Solr / Elasticsearch索引的GUI工具
465 0
Luke:用于Lucene / Solr / Elasticsearch索引的GUI工具

推荐镜像

更多