繁体   English   中英

SOLR架构设计和搜索

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM