Lucene是一个用Java语言实现的开放源代码全文搜索引擎,严格上来说它只是一个搜索引擎开发包,它可以方便的嵌入到各种应用程序中,这主要得益于其优雅的面向对象设计和简化的API。Lucene的作者
Doug Cutting是一位资深全文索引/检索专家,自从Lucene项目成立以来,得到了开源各界的积极相应,很多软件都用它作为全文检索引擎,比如Beagle,Kat等。Lucene本身也从Sourceforge移到Apache,成为了Apache的一个子项目,前途可谓一片光明。
用Java写搜索引擎这种很需要效率的东西,多少有些牵强,追求效率的开发者们实现了Lucene的C和C++版本,他们分别是Lucene4C和CLucene。目前Lucene4C还只支持检索,建立索引部分还没有实现,不过作为Apache的一个子项目应该很值得期待;相比之下CLucene就显得完备得多,它不仅实现了Lucene的绝大部分功能,有的地方还有优化。除了从语言的层面上进行优化外,我们还可以借助gcc中gcj来编译Lucene,从而实现效率的提升。另外Lucene还有.Net的实现DotLucene,并且还有Python语言的绑定,形势一片大好啊!
Lucene的实现和一般的搜索引擎并没有太大差别,都是分为索引建立和全文搜索两个部分。因为作者开始就很注意多语言的支持和模块化的设计,所以其很容易就能实现中文和其它亚洲语言的支持,扩展起来也很方便。
更多内容请参考:
后记:本来都已经完成了,一个不小心将当前窗口给关闭了,所有资料全部丢失,不得不从头再来,突然感慨于Google的细心,如果Firefox或者是这个Blog也有这样的功能就好了!嗨,当时真的有点儿不想再写了,不过还是坚持晚了,虽然很是简略!
阅读(2888) | 评论(0) | 转发(0) |