我正在开发一个可以与管网站(如YouTube)进行比较的网站。我正处于设计阶段,正在试图弄清楚要采用的搜索方法。
我正在使用SilverStripe
框架,其中包含Sphinx
,Solr
和Lucene
的模块,因此它们显然很有趣。另一种选择是简单地查询数据库(MySQL)而不使用任何搜索引擎。
任何输入都表示赞赏!提前谢谢!
答案 0 :(得分:1)
只需查询数据库(MySQL)而不使用任何搜索引擎
我假设你想使用MyISAM的全文搜索功能?这是可能的,SilverStripe的默认配置目前(至少在版本2.4之前)设置为MyISAM而不是InnoDB。但是,这仅适用于简单,小型且不是性能饥饿的任务 - 我认为这不是您想要的。
更强大(在速度和功能方面)都是专用搜索服务。 有关概述,请查看ElasticSearch, Sphinx, Lucene, Solr, Xapian. Which fits for which usage?,例如。
根据您提供的详细信息,五个中的任何一个都应该完成您的工作,但您可能会考虑更多。 但是,我还会考虑到SilverStripe模块已经可用的搜索服务,它们满足您的要求的程度,以及您对它们的“喜欢”程度。除非你想为ElasticSearch编写一个模块 - 这很酷,但我不确定它是否值得付出努力。
就我个人而言,我可能会选择https://code.google.com/p/lucene-silverstripe-plugin/,因为它很容易设置并且似乎运行良好(我自己没有尝试过,但我只听过别人的好话)。< / p>