[英]SOLR schema design and searching
嗨,我喜欢下面的表结构,我需要做简单的用户搜索,任何人都可以给我建议我如何为此设计solr架构和查询
userid - name
1 - pot tot
2 - peter kate
3 - jack henry
4 - jack cope
id - userid - friendsid (foreignkey table)
1 - 1 - jack henry
2 - 1 - peter kate
3 - 3 - pot tot
4 - 2 - pot tot
当用户1 - (pot tot)搜索“jack”时,他必须将“jack henry”视为第一个结果,因为他是共同的朋友。 我们有像Facebook这样的要求,如朋友的用户搜索顺序,共同的朋友(计数)
你主要想要处理关系和搜索。
不确定Solr是否能够为您提供开箱即用的关系部件。
你可以尝试检查Neo4j这是图形数据库,并帮助你遍历关系和搜索。
我对Neo4j一无所知,但我认为上面的海报有一点意义。 我不确定这是Solr设计的那种东西。 不过,您可以尝试一下:
<field name="user_id" type="slong" indexed="true" stored="true" required="true" />
<field name="user_name" type="text" indexed="true" stored="true" required="true" />
<field name="friend_id" type="slong" indexed="true" stored="true" required="false" multiValued="true" />
这允许每个用户在Solr索引中拥有0到多个朋友。 如果你有一个名为“Jack Henry”且user_id为3的用户,那么找到那些杰克亨利的朋友就像“?q = friend_id:3”一样简单。 如果你有另一个名为“Peter Kate”且user_id为2的用户,则可以按如下方式找到Jack Henry和Peter Kate的共同朋友:“?q = friend_id:(2 AND 3)”。 希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.