当前位置:  开发笔记 > 数据库 > 正文

选择具有自定义排名功能的独立搜索服务器,spartial search

如何解决《选择具有自定义排名功能的独立搜索服务器,spartialsearch》经验,为你挑选了1个好方法。

我正在研究为我参与的项目选择搜索服务器的不同选项.搜索服务器用于在Rails中构建的约会网站上提供结果,其中搜索提供所有'匹配' - 魔术.

典型的查询将涉及使用表达式(伪代码)对文档/结果进行排名:

按排名排序:

如果has_image属性为true,则为+50

如果has_boost属性为true,则为+10

如果纬度/经度距离[点] 40英里以内,则为+50

+20如果纬度/经度在80英里以内[点]

- (从属性'age'到30的距离)

过滤:

属性'年龄'在25到35之间

属性"性"等于"男性"

默认情况下,我不需要大多数搜索服务器的全文功能,而且我不需要检索完整的文档 - 只需要一个唯一的ID.

项目的性质为具有以下属性的搜索服务器产生:

Spartial排名

基于自定义函数的结果排名

属性过滤器

可扩展且快速

自由

我找到了Sphinx,Solr和ElasticSearch,但所有这些(据我所见)都是针对全文搜索构建和优化的,ES和Solr都是基于Lucene构建的,我不知道什么会表现最好用于过滤/属性重搜索.

我的问题:

您更喜欢哪些服务器?为什么?

我错过了其他明显的选择吗?

Mauricio Sch.. 5

不知道其他人,但Solr可以做到这一切:

空间排名

你需要每晚构建一个Solr(截至本文撰写时最新的稳定版本,Solr 1.4.1,不包括此功能),据我所知这是一个非常稳定的主干功能.

基于自定义函数的结果排名

Solr有很多函数查询来进行提升.

属性过滤器

这是一种常见的搜索功能.

可扩展且快速

很多大型网站都在使用Solr,证明了它的可扩展性和速度.

自由

Solr是Apache许可的,非常宽松的许可证.



1> Mauricio Sch..:

不知道其他人,但Solr可以做到这一切:

空间排名

你需要每晚构建一个Solr(截至本文撰写时最新的稳定版本,Solr 1.4.1,不包括此功能),据我所知这是一个非常稳定的主干功能.

基于自定义函数的结果排名

Solr有很多函数查询来进行提升.

属性过滤器

这是一种常见的搜索功能.

可扩展且快速

很多大型网站都在使用Solr,证明了它的可扩展性和速度.

自由

Solr是Apache许可的,非常宽松的许可证.

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有