我有一个Solr索引,文档字段类似于:
id, body_text, date, num_upvotes, num_downvotes
Run Code Online (Sandbox Code Playgroud)
在我的应用程序中,创建一个带有一些整数id和一些body_text(最多500个字符)的文档.日期设置为输入时间,num_upvotes并num_downvotes从0开始.
我的应用程序为用户提供了对上述内容进行upvote和downvote的能力,以及我想在Solr而不仅仅是数据库中跟踪这个内容的原因是我希望能够将upvotes和downvotes的数量考虑到我的内容中search.
这是一个问题,因为您不能简单地更新solr文档(即up_votes的增量数),并且您必须替换整个文档,这可能是相当低效的,因为它需要命中我的数据库以再次获取所有相关数据.
我意识到解决方案可能需要不同的数据布局,或者可能需要多个索引(尽管我不知道你是否可以在solr内核中查询/得分).
有人能提供任何有关如何解决这个问题的建议吗?
拥有视频模型和搜索索引.使用Django-haystack和Solr.需要按日期/周/月/年的视频视图对结果进行排序.是否可以通过最后一天/周/月/年的观看信息更新搜索索引?
如果只需按日期和总计的视图排序,则可以仅为查看一天的视频更新索引,其中当前视图等于0.
每隔几个小时使用update_index看起来不是一个好主意,因为现在它需要30分钟,所以将来可以采取更多.现在,搜索索引仅针对使用Celery异步任务的已更改对象进行更新.
我正面临基于用户点击日志排序Solr结果的问题.我希望首先获得更多访问结果.有谁知道如何在Solr中配置或实现此类属性?
非常感谢你.
lucene search solr information-retrieval collective-intelligence