Whoosh 介绍
Whoosh 是一个纯python实现的全文搜索组件。Whoosh不但功能完善,还非常的快。
Whoosh的作者是MattChaput,由Side Effects Software公司开发。项目的最初用于Houdini(Side Effects
Software公司开发的3D动画软件)的在线帮助系统。Side Effects Software公司将该项目开源。
主要特性:
- 敏捷的API(Pythonic API)。
- 纯python实现,无二进制包。程序不会莫名其妙的崩溃。
- 按字段进行索引。
- 索引和搜索都非常的快 – 是目前最快的纯python全文搜索引擎。
- 良好的构架,评分模块/分词模块/存储模块等各个模块都是可插拔的。
- 功能强大的查询语言(通过pyparsing实现功能)。
- 纯python实现的拼写检查(目前唯一的纯python拼写检查实现)
为啥选择Whoosh
- 纯python实现,省了编译二进制包的繁琐过程。
- python代码比java更容易读懂,而且用起来也更方便。(翻者注:这个容易引发口水)
- 在很多时候易用性比单纯的最求速度更重要。
Whoosh从其他的开源搜索引擎中获取了大量的灵感。
基础构建参考Lucene,使用KinoSearch的索引算法,部分评分算法来自Terrier,英文的词语态变化来自Minion.