Solr具有两个不同的核心和单个查询

时间:2016-06-13 05:16:12

标签: solr

我在RDBMS中有两个表

表格结构

表:tblUser             用户身份             AvatarURL

表:tblSchedule

  • 编号
  • UserId(ForeignKey)
  • 开始时间
  • 结束时间

情景

  

tblUser表中共有100个用户,其中20个用户   今天的日程安排。 10个用户是上午10点到下午12点。 2个用户   下午1点到下午4点,休息时间是下午4点到晚上11:59。我想要显示10   (基于pagging重置)来自solr核心的用户(应该有   两个不同的核心一个用于tblUser,第二个用于tblSchedule,这个我   必须做以后的参考)基于两个记录显示   tblSchedule按时间重置将显示哪些不在   tblSchedule。再次在第二页上显示前两个记录   基于时间重置将根据其授权显示。其他   单词顺序应按计划和UserId完成。我想写   单个查询,在这两个核心的其他字段上使用分面。

1 个答案:

答案 0 :(得分:2)

Solr数据结构应该针对搜索进行优化,最终可能看起来不像原始数据结构。如果差异非常大,您最终可能只是从Solr中获取ID并将它们与原始数据库匹配以获取对象/关系。

在您的情况下,可能值得将用户信息保留在Solr之外,并专注于编码和检索正确的计划文档。

此外,使用最新的Solr,DateRangeField可能是保持开始日期范围的有用方法。