Php 排名MongoDB搜索
好的,这听起来很简单,但我不知道该怎么办 我正在运行PHP5.3.x,这就是我想要做的。我知道find()命令。但我不确定如何对返回的JSON进行排序 下面是我们如何存储我们的博客Php 排名MongoDB搜索,php,mongodb,search,Php,Mongodb,Search,好的,这听起来很简单,但我不知道该怎么办 我正在运行PHP5.3.x,这就是我想要做的。我知道find()命令。但我不确定如何对返回的JSON进行排序 下面是我们如何存储我们的博客 { "title":"this is a title"; "body":"this is the body"; "author":"ROB" "keywords":[{'auto';'music';'fun'}] "country":"USA" "dateadded":"07-11-2011"; } 我想做的是按照
{
"title":"this is a title";
"body":"this is the body";
"author":"ROB"
"keywords":[{'auto';'music';'fun'}]
"country":"USA"
"dateadded":"07-11-2011";
}
我想做的是按照以下顺序
关键词匹配100%-0%
作者如果作者经常谈论这个关键词,那么帖子会更高
标题搜索得分1(意思与用户正在搜索的内容匹配
按从最新到最旧的日期订购
请告诉我这是否可行。Mongo是一个文档存储而不是一个搜索引擎。我建议您使用SOLR为您的文档编制索引以进行搜索/关联,并将文档本身存储在Mongo中。对于博客,您可能放弃Mongo,只需将所有内容存储在SOLR中,但对于大型文档集,这将是一个坏主意。是的h、 我使用了一个博客JSON,只是为了让你明白,这不是一个真正的博客,只是相同的布局。我真的不想使用SOLR或其他任何需要我忘记mongo并使用不同的东西。如果大约10000行的集合很小,这将是一个大集合。SOLR做你想要的。Mingo不做。SOLR很容易,不要害怕。这就是10k在一个城市现在想想*世界上有多少个城市,你很容易进入2000到40M@kevinOk如果你的数据大小是40M,那么你应该在SOLR中索引并在mongo中保留内容。上有相关的问题,这可能会有所帮助。上还有一个MongoDB wiki页面。