Solrcloud嵌套或联接查询以获得提升因子并提升主要查询

时间:2018-08-20 11:34:18

标签: solr

我在solrcloud 7.4上有3个收藏集:

  • Data填充主数据
  • UserPref(数据+用户活动)
  • UserCount(用户活动计数)

模型数据看起来像这样

Data:
{
    "id":"album-1",
    "album_id": "1",
    "type":"album",
    "complex_search_keyword": ["say"], 
    "complex_search_keyword_soundex": ["say"], 
},

UserPref:
{
    "id":"album-1",
    "album_id": "1",
    "type":"album",
    "users": ["user-m2-1", "user-m2-2"],
    "search_keyword": ["say"], 
    "search_keyword_soundex": ["say"], 
},

UserCount:
{
    "id":"user-m2-1-album-1",
    "album_id": "1",
    "user_id": "1",
    "user_m_id": "m2",
    "type":"stream",
    "count":101,
}

首先,我在Data集合中进行了标准查询,以获取一般专辑。通常与complex_search_keyword:say一起使用。

然后,我有一个用户活动UserPref,该用户活动已经在用户首选项中播放了该专辑,并且所有用户都已经播放了该专辑的用户首选项数据。 UserCount只是用来找出用户播放该专辑count的次数的数据。我考虑使用类似users多值字段的这种方法,因为用户可以拥有10m数据。

我的问题是,我可以通过一次查询从count的{​​{1}}中获得UserCount吗?还是流?我的计划看起来像这样

  • 使用UserPrefUserPref中搜索相册
  • 获取用户和关键字中的所有首选项(即fq=user_id:user-m2-1 AND search_keyword:say
  • 使用album-1或直接count来获取UserCount中的所有fq=user_id:1 AND user_m_id:m2 AND album_id:1数据
  • 使用fq=id:user-m2-1-album-1Data中提升主要查询

0 个答案:

没有答案