我有一组用户。每个用户都有一些字段。其中一个字段是映射,例如:“键,值”,其中值表示顺序。
例如:
user1
拥有:
id = user1
tags = <apples, 100>, <bananas, 80>, <oranges, 60>
name = "Ann Miller"
likes = "apples and skydiving, and sometimes solving puzzles"
quote = "Never spent a day without a smile!"
user2
拥有:
id = user2
tags = <bananas, 100>, <pears, 80>, <apples, 60>
name = "Mike Anderson"
likes = "sleep and eating pizza"
quote = "Math, it's a puzzle to me. I love figuring out puzzles."
我想要一个返回用户的一般搜索,例如:
search | result order
--------+--------------------
smile | user1
puzzle | user2, user1
bananas | user2, user1
apples | user1, user2
目前我有一个通用文件,我复制每个字段的值,然后在该字段上进行搜索。现在我只把对的键放在里面,所以排序不是我想要的。
我使用 SolrJ 来索引文档(从数据库中提取)并进行搜索。
我曾想过对苹果重复 100 次,对香蕉重复 80 次等单词,但这让我觉得非常缓慢且痛苦(除了不是一个好的方法)。
你们有任何想法吗?