对于Solr 5中的某种文档,我有以下模型:
uuids_scores
,其包含类似" 123_456"的值,是用户id的第一部分(123),第二部分(456)是存储的分数I为每个用户保留。 我尝试使用它的方式是:
我搜索uuids_scores:123_*
的实体,然后获取我想要的实体列表。
然后我在答案中读取所有单个属性+ uuids_scores
多值字段内的匹配值。
我在这个问题中找到了一种方法:How to filter values returned on a multivalued field in Solr
考虑到要求我的写作应该尽可能快,所以任何需要存储100k实体而不是一个实体的解决方案对我来说都不适用。
现在的问题是:有没有更好的模式来做我想要的?有更好的解决方案吗?
答案 0 :(得分:1)
尝试使用动态字段,索引字段可能类似于" uuids_scores_123"
<dynamicField name="uuid_scores_*" type="int" indexed="true" stored="true" multivalued="true"/>
你可以查询&#34; uuids_scores_123:*&#34;并且只包括&#34; uuids_scores_123&#34;在返回的字段中。它只会有你想要的结果。