我运行了一个工作委员会(PostJobFree.com),里面有大约 100 万份简历。平均简历大小约为 4000 字节。PostJobFree 使用 ASP.NET/C#/SQL Server 2008 R2 和 MS SQL 全文搜索。
通过阅读各种文章,我相信切换到 Apache Lucene 搜索将使搜索更快、更具可扩展性。但我还没有尝试过。
问题 1:在大约 1M 文档标记处从 MS SQL 全文搜索切换到 Apache Lucene 是正确的选择,还是我不会注意到搜索速度显着提高?我预计我的数据库中可搜索文档的数量每月增长约 10%。
问题 2:最好的 Lucene 平台是什么:Solr 还是 ElasticSearch?
这是我到目前为止发现的:
1. 谷歌搜索趋势 http://www.google.com/trends/explore#q=elasticsearch%20search%2C%20solr%20search%2C%20sphinx%20search%2C%20%22sql%20server%22%20%22full -text%20search%22&cmpt=q 截至目前(2013 年 4 月)
- Solr 似乎是目前最受欢迎的搜索平台,但 Solr 的受欢迎程度在去年(2012 年 4 月 - 2013 年 4 月)并没有增长。
- ElasticSearch 从 2010 年底开始快速增长,但仍然只有 Solr 的 40% 左右。
- Sphinx 搜索在 2006-2009 年开始流行,从 2009 年开始下降。现在它与 ElasticSearch 一样流行。
- SQL Server 全文搜索长期处于下降趋势。
这些趋势是否与这些搜索平台的质量相关?
2. 过去的 StackOverflow 问题
StackOverflow 在 2010 年 2 月有搜索平台比较问题:ElasticSearch、Sphinx、Lucene、Solr、Xapian。哪个适合哪个用途?
其创建者 Shay Banon 的“ElasticSearch”回答是当时最受欢迎的。
类似的问题在 2012 年晚些时候被问到:Solr vs. ElasticSearch
最受欢迎的答案再次支持 ElasticSearch。
3. 其他
Nick Zadrosny(同时运行 Solr 托管服务 websolr.com 和 ElasticSearch 托管服务 bonsai.io)是 2012 年 4 月 ElasticSearch 的支持者: https ://news.ycombinator.com/item?id=3833735
这是尼克今天(2013 年 4 月)的回答:
与 Solr 相比,Elasticsearch 确实对初学者更友好一些。Elasticsearch 有一个更好的 API,并且为新应用程序设置和配置肯定更容易。尽管如此,Solr 在成熟度和健壮性方面仍然具有一定的优势,而且当您不需要担心生产配置时,学习曲线也不会太不合理。除此之外,两者都在 Lucene 中具有相同的根源,并提供相似的功能。两者都应该同样适合您的需求。
我想知道“稳健性”究竟是什么意思,以及未来几年稳健性的差异将如何变化?
4. 渗滤
ElasticSearch 具有渗透功能,应该允许我实现即时交付的简历搜索警报。Solr 有类似的东西吗?