写点什么

Lucene 2.9:数字字段支持、新分析器及性能优化

  • 2009-09-27
  • 本文字数:583 字

    阅读完需:约 2 分钟

Apache Lucene 项目是一个完全用 Java 编写的高性能、全功能的文本搜索引擎库,最近它发布了 2.9 版。此次发布在 2.4.1 版的基础上进行了许多增强:

  • 单个 Segment 的查询及缓存,这使 reopen 操作的速度显著提高。
  • 为 IndexWriter 增加了接近实时的搜索功能。
  • 新的 Query 类型。
  • 更智能,伸缩性更强的多词(multi-term)查询(如 Wildcard,Range 等等)。
  • 最新优化过的 Collector/Scorer API。
  • 新增的 Unicode 支持及字符集(Collation)。
  • 基于 Attribute 的 TokenStream 新 API。
  • 在 contrib 中提供了新的 QueryParser 框架,并替换了核心实现。
  • 在基于字段搜索,或使用自定义的 Collector 的时候可取消 Score 功能,这样可以获得显著的性能提高。
  • 新的分析器(PesianAnalyzer,ArabicAnalyzer 即 SmartChineseAnalyzer)。
  • 为大型文本新增快速向量高亮工具(fast-vector-highlighter)。
  • 对数字字段提供了高性能的查询支持。这些字段使用前缀树的结构进行索引,能直接支持简单而高效的数字范围查询,而不需要在外部对数字进行处理。

虽然 Lucene 团队打算在小版本的更新上做到完整的兼容,但是 Lucene 2.9 在不少方面破坏了这一点,详细信息可参考 Changes 文档中“向前兼容策略的改变(Changes in backwards compatibilit policy)”一节。Lucene 团队建议不要直接替换生产环境下的二进制包,而是在部署前重新编译应用程序,以便在出现兼容问题时获得提示并进行修补。

2009-09-27 04:252695
用户头像

发布了 157 篇内容, 共 54.8 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容
Lucene 2.9:数字字段支持、新分析器及性能优化_Java_赵劼_InfoQ精选文章