看了网上有人给出这样的方案:
[indent]高级语言编写网络蜘蛛,做站内抓取
同时又自己的词语库,将抓取的站内网页切分成词语(同时计算词语在此网页中的权重)
做成倒排文件(词语链接到文件)
可以自己设计数据库,也可以使用商业版数据库
最后做查询检索,具体算法就由特定的需要来定制了 [/indent]
想请教下各位前辈,这种站内全文搜索采用的什么方案呢?比如说yii官网的这个搜索。
如果需要用上面的方案,那么倒排文件该怎么写呢?
看了网上有人给出这样的方案:
[indent]高级语言编写网络蜘蛛,做站内抓取
同时又自己的词语库,将抓取的站内网页切分成词语(同时计算词语在此网页中的权重)
做成倒排文件(词语链接到文件)
可以自己设计数据库,也可以使用商业版数据库
最后做查询检索,具体算法就由特定的需要来定制了 [/indent]
想请教下各位前辈,这种站内全文搜索采用的什么方案呢?比如说yii官网的这个搜索。
如果需要用上面的方案,那么倒排文件该怎么写呢?
自己来结这个帖子吧,试了一天,选择了Sphinx/Coreseek的全文检索。
自己配置了一下,生成了索引,并作为了一个守护进程,自动更新索引。
调用上,我使用了Yii的一个扩展,DGSphinxSearch
这个扩展里面要注意的就是DGSphinxSearch::resetCriteria()中的
$this->client->setLimits(0, 1000000, 2000);
第三个参数需要小于或等于Sphinx中的max_matches配置项。
做个标记,将来可能用到,谢谢
Mark
强大!
有点深奥,值得深入研究
收下!
无耻地做个记号
mark too