用于Lucene的各中文分词比较

对几种中文分析器,从分词准确性和效率两方面进行比较。分析器依次为:StandardAnalyzer、ChineseAnalyzer、 CJKAnalyzer、IK_CAnalyzer、MIK_CAnalyzer、MMAnalyzer(JE分词)、PaodingAnalyzer。
单纯的中文分词的实现一般为按字索引或者按词索引。按字索引顾名思义,就是按单个字建立索引。按词索引就是按词喽,根据词库中的词,将文字进行切分。车东的交叉双字分割或者叫二元分词我觉得应该算是按字索引的改进,应该还是属于字索引的范畴吧。

Continue reading “用于Lucene的各中文分词比较”

使用PHP+Sphinx建立高效的站内搜索引擎

1.    为什么要使用Sphinx

假设你现在运营着一个论坛,论坛数据已经超过100W,很多用户都反映论坛搜索的速度非常慢,那么这时你就可以考虑使用Sphinx了(当然其他的全文检索程序或方法也行)。

 

2.    Sphinx是什么

Sphinx由俄罗斯人Andrew Aksyonoff 开发的高性能全文搜索软件包,在GPL与商业协议双许可协议下发行。

全文检索是指以文档的全部文本信息作为检索对象的一种信息检索技术。检索的对象有可能是文章的标题,也有可能是文章的作者,也有可能是文章摘要或内容。

 

3.    Sphinx的特性

l  高速索引 (在新款CPU上,近10 MB/秒);

l  高速搜索 (2-4G的文本量中平均查询速度不到0.1秒);

l  高可用性 (单CPU上最大可支持100 GB的文本,100M文档);

l  提供良好的相关性排名

l  支持分布式搜索;

l  提供文档摘要生成;

l  提供从MySQL内部的插件式存储引擎上搜索

l  支持布尔,短语, 和近义词查询;

l  支持每个文档多个全文检索域(默认最大32个);

l  支持每个文档多属性;

l  支持断词;

l  支持单字节编码与UTF-8编码;

  Continue reading “使用PHP+Sphinx建立高效的站内搜索引擎”