精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-10
但是我这里说的Sphinx是一个高性能的搜索引擎: http://www.sphinxsearch.com/ Sphinx是一个俄国人开发的搜索引擎,它的主要特点是: 一、性能非常出色 150万条记录一两分钟就索引完毕,2-4GB以内的文本检索速度不到0.1秒钟。ferret也望尘莫及,更不要说lucene了。 二、和数据库集成性很好 Sphinx通过配置文件可以自行读取数据库信息做索引,不依赖任何外部的应用程序,并且可以作为一个daemon进程启动,支持分布式检索,并发响应性能很好。因此很多过去使用ferret的人因为并发检索的问题都改用Sphinx了。 三、可以做MySQL的全文检索 MySQL的数据库引擎是可插拔的结构,Sphinx开发了一个SphinxSE数据库引擎,可以在编译MySQL的时候直接编译到MySQL里面去,这样的话,可以在数据库级别支持高性能的全文检索,那么你可以以如下SQL方式去全文检索了: select * from xxxx where query='test;sort=attr_asc:group_id' AND ....; 很棒吧。 四、RoR支持也很棒 有一个acts_as_sphinx插件,类似acts_as_ferret,集成到RoR里面很简单。 Sphinx目前可能存在的问题估计还是中文分词问题: Sphinx支持UTF-8编码的分词,但是他自己的文档上面说仅仅支持英文和俄文的分词,因此我估计对中文分词可能还不能很好的支持。 总之,Sphinx是我们另外一个很棒的选择。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-10
对中文分词支持如果和Ferret差不多也搞着能用
|
|
返回顶楼 | |
发表时间:2007-09-11
俄国人?还是叫俄罗斯人比较好 哦
|
|
返回顶楼 | |
发表时间:2007-09-11
引用 select * from xxxx where query='test;sort=attr_asc:group_id' AND ....; 这个sql,不常见,知道什么语法?解析一下 是安装插件后扩展的吗? |
|
返回顶楼 | |
发表时间:2007-09-11
"150万条记录一两分钟就索引完毕" ---太恐怖了 每秒能处理12500条? 回想Lucene才多少..
|
|
返回顶楼 | |
发表时间:2007-09-11
引用 select * from xxxx where query='test;sort=attr_asc:group_id' AND ....;
对呀,这个语法有点怪怪的,where子句应该是做约束的,这里还包括了sort,那order by怎么办? |
|
返回顶楼 | |
发表时间:2007-09-11
blowfisher 写道 "150万条记录一两分钟就索引完毕" ---太恐怖了 每秒能处理12500条? 回想Lucene才多少..
得看具体应用,一条记录可大可小的……索引速度还牵涉到分词、I/O、还有数据库与索引程序之间的通信吧。 ps:我觉得分词要自己写才好控制,可以加入很多应用相关的东西进去。 |
|
返回顶楼 | |
发表时间:2007-09-12
一: 版本数字还是0.××,,,也就是还没正式版。
二: 我看了下,还没比较好的中文分词(半年前我一朋友自己写了个,好像是基于sphi×,) 三: 分布式还不成熟 四: 很多企业特征无 期待robbin的“小白鼠”经验和心得,,, |
|
返回顶楼 | |
发表时间:2007-09-12
成熟应用就两个。。
|
|
返回顶楼 | |
发表时间:2007-09-12
引用 150万条记录一两分钟就索引完毕,2-4GB以内的文本检索速度不到0.1秒钟 好强啊,这么的搜索引擎,大家多研究研究。
|
|
返回顶楼 | |