《深入理解ElasticSearch》——第1章1.1 Apache Lucene简介

本文涉及的产品
Elasticsearch Serverless检索通用型,资源抵扣包 100CU*H
简介:

本节书摘来自华章计算机《深入理解ElasticSearch》一书中的第1章,第1.1节,作者:[美] 拉斐尔·酷奇(Rafa Ku) 马雷克·罗戈任斯基(Marek Rogoziński)更多章节内容可以访问云栖社区“华章计算机”公众号查看。

第1章

ElasticSearch简介
我们希望读者通过阅读本书能获取和拓展关于ElasticSearch的基本知识,并假设读者已经知道如何使用ElasticSearch进行单次或批量索引创建,如何发送请求检索感兴趣的文档,如何使用过滤器缩减检索返回文档的数量,以及使用切面/聚合(faceting/aggregation)机制来计算数据的一些统计量。不过,在接触ElasticSearch提供的各种令人激动的功能之前,仍然希望读者能对Apache Lucene有一个快速了解,因为ElasticSearch使用开源全文检索库Lucene进行索引和搜索,此外,我们还希望读者能了解ElasticSearch的一些基础概念,以及为了加快学习进程,牢记这些基础知识,当然,这并不难掌握。同时,我们也需要确保读者能按ElasticSearch所需要的那样正确理解Lucene。本章主要涵盖以下内容:

  • Apache Lucene是什么。
  • Lucene的整体架构。
  • 文本分析过程是如何实现的。
  • Apache Lucene的查询语言及其使用方法。
  • ElasticSearch的基本概念。
  • ElasticSearch内部是如何通信的。

1.1 Apache Lucene简介

为了全面理解ElasticSearch的工作原理,尤其是索引和查询处理环节,对Apache Lucene的理解显得至关重要。揭开ElasticSearch神秘的面纱,你会发现它在内部不仅使用Apache Lucene创建索引,同时也使用Apache Lucene进行搜索。因此,在接下来的内容中,我们将展示Apache Lucene的基本概念,特别是针对那些从未使用过Lucene的读者们。
1.1.1 熟悉Lucene
读者也许会好奇,为什么ElasticSearch的创始人决定使用Apache Lucene而不是开发自己的全文检索库。对于这个问题,笔者并不是很确定,毕竟我们不是这个项目的创始人,但我们猜想是因为Lucene的以下特点而得到了创始人的青睐:成熟、高性能、可扩展、轻量级以及强大的功能。Lucene内核可以创建为独立的Java库文件并且不依赖第三方代码,用户可以使用它提供的各种所见即所得的全文检索功能进行索引和搜索操作。当然,Lucene还有很多扩展,它们提供了各种各样的功能,如多语言处理、拼写检查、高亮显示等。如果不需要这些额外的特性,可以下载单个的Lucene内核库文件,直接在应用程序中使用。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
11月前
|
Java 应用服务中间件 Apache
简介Nginx,Tomcat和 Apache
简介Nginx,Tomcat和 Apache
162 2
简介Nginx,Tomcat和 Apache
|
1月前
|
存储 SQL Apache
为什么 Apache Doris 是比 Elasticsearch 更好的实时分析替代方案?
本文将从技术选型的视角,从开放性、系统架构、实时写入、实时存储、实时查询等多方面,深入分析 Apache Doris 与 Elasticsearch 的能力差异及性能表现
为什么 Apache Doris 是比 Elasticsearch 更好的实时分析替代方案?
|
6月前
|
存储 自然语言处理 BI
|
3月前
|
存储 运维 监控
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
中信银行信用卡中心每日新增日志数据 140 亿条(80TB),全量归档日志量超 40PB,早期基于 Elasticsearch 构建的日志云平台,面临存储成本高、实时写入性能差、文本检索慢以及日志分析能力不足等问题。因此使用 Apache Doris 替换 Elasticsearch,实现资源投入降低 50%、查询速度提升 2~4 倍,同时显著提高了运维效率。
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
|
8月前
|
存储 搜索推荐 API
探究:Elasticsearch 文档的 _id 是 Lucene 的 docid 吗?
【8月更文挑战第31天】在深入探索Elasticsearch(简称ES)这一强大的搜索引擎时,了解其底层存储机制——特别是与Lucene的关系,对于优化查询性能、设计高效的数据模型至关重要。其中,一个常见且容易引发误解的问题便是:Elasticsearch中文档的_id字段是否直接等同于Lucene的docid?本文将通过图文并茂的方式,详细剖析这一问题,帮助读者理解两者之间的微妙关系。
198 0
|
11月前
|
存储 机器学习/深度学习 关系型数据库
为什么Elasticsearch/Lucene检索可以比MySQL快?
为什么Elasticsearch/Lucene检索可以比MySQL快?
186 2
|
11月前
|
存储 自然语言处理 Java
Elasticsearch全文搜索技术之二kibana的简介和使用
Elasticsearch全文搜索技术之二kibana的简介和使用
143 2
|
11月前
|
消息中间件 JSON Kafka
实战 | Apache Hudi回调功能简介及使用示例
实战 | Apache Hudi回调功能简介及使用示例
70 0
|
11月前
|
数据挖掘 关系型数据库 MySQL
下一代实时数据库:Apache Doris 【一】简介
下一代实时数据库:Apache Doris 【一】简介
232 0
下一代实时数据库:Apache Doris 【一】简介
|
11月前
|
SQL 分布式计算 数据处理
Apache Spark简介与历史发展
Apache Spark简介与历史发展

推荐镜像

更多
下一篇
oss创建bucket