Lucene原理(一):基本概念

Apache Lucene 是一个强大的开源搜索框架,常用于构建搜索引擎。它提供了灵活的数据结构和高效的搜索算法。Solr 和 Elasticsearch 是基于 Lucene 的流行开源搜索引擎,各有特点。Lucene 中的索引由 Documents 组成,每个 Document 包含多个 Fields。Fields 分为不同类型,如 StringField 和 TextField,每个 Field 可配置不同的索引选项,如是否存储、分词等。Term 和 Term Dictionary 是最基本的索引单位,Segment 是实际的索引文件,DocId 是文档的唯一标识。Lucene 不支持 Segment 的更新,但支持删除和新建索引。
摘要由CSDN通过智能技术生成

Apache Lucene是Apache的一个核心开源项目,是目前最好的搜索框架。扩展性强,支持全文检索,各种各样的数据结构,支持不同的查询需求。

目前使用Apache Lucene最好的两款开源软件:

  • Apache solr,Apache 旗下的开源搜索引擎,支持各种数据格式的检索(json、pdf、csv等),实时性较差
  • Elasticsearch,目前最火的开源搜索引擎,实时性强,扩展性强。

如果说Elasticsearch和solr是超跑,那Lucene可以说是汽车的发动机。

以下是Lucene官方自夸:

  • Scalable, High-Performance Indexing
  • Powerful, Accurate and Efficient Search Algorithms

本文解析Lucene基于Lucene7.2.1,也会带一些以前的版本。

#基本概念
#Index(索引)
Lucene中的index是由很多个Documents组成的一个数据体,可以理解成是数据库中的表,而表中的行就是Document。Lucene中数据即索引的概念跟普通关系型数据库还是有很大区别的。它是把数据按照不同的索引方式全部索引起来,用来进行检索。

#Document(文档)
就像上面提到的,可以理解成为数据库的行,或者mongo中的Document。一个index下有很多Documents,每个Doc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值