lucene实时 增量索引_什么是Lucene

Lucene

最受欢迎的java开源全文搜索引擎开发工具包。提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索功能,或者是以此为基础建立起完整的全文检索引擎。

是Apache的子项目,网址:http://lucene.apache.org/

用途

为软件开发人员提供一个简单易用的工具包,以方便在目标系统中实现全文检索功能,或者是以此为基础建立起完整的全文检索引擎。

适用场景

  • 在应用中为数据库中的数据提供全文检索实现。
  • 开发独立的搜索引擎服务、系统

特性

稳定、索引性能高:

  1. 每小时能够索引150GB以上的数据。
  2. 对内存的要求小——只需要1MB的堆内存
  3. 增量索引和批量索引一样快。
  4. 索引的大小约为索引文本大小的20%~30%

高效、准确、高性能的搜索算法:

  1. 良好的搜索排序。
  2. 强大的查询方式支持:短语查询、通配符查询、临近查询、范围查询等。
  3. 支持字段搜索(如标题、作者、内容)。
  4. 可根据任意字段排序
  5. 支持多个索引查询结果合并
  6. 支持更新操作和查询操作同时进行
  7. 支持高亮、join、分组结果功能
  8. 速度快
  9. 可扩展排序模块,内置包含向量空间模型、BM25模型可选
  10. 可配置存储引擎

跨平台:

  1. 纯java编写。
  2. 作为Apache开源许可下的开源项目,你可在商业或开源项目中使用。
  3. Lucene有多种语言实现版可选(如C、C++、Python等),不光是JAVA。

架构

b6f0ba09a602e77613772b4cc88fab28.png

集成

方式一:官网下载 zip,解压后拷贝jar到你的工程

方式二:maven 引入依赖

jar包下载地址:

https://lucene.apache.org/core/downloads.html

maven依赖:

org.apache.lucene

lucene-core

7.7.3

模块说明

core: Lucene core library 核心模块:分词、索引、查询

analyzers-*: 分词器

facet: Faceted indexing and search capabilities 提供分类索引、搜索能力

grouping: Collectors for grouping search results. 搜索结果分组支持

highlighter: Highlights search keywords in results 关键字高亮支持

join: Index-time and Query-time joins for normalized content 连接支持

queries: Filters and Queries that add to core Lucene 补充的查询、过滤方式实现

queryparser: Query parsers and parsing framework 查询表达式解析模块

spatial: Geospatial search 地理位置搜索支持

suggest: Auto-suggest and Spellchecking support 拼写检查、联想提示

7dfa02baeab7bb28e3fcba48ea680189.png

后面的介绍Lucene的分词器,索引的详解。​

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值