标签: neo4j
我正在学习Neo4j,目前正在考虑我想到的场景。 我有3个产品P1,P2,P3。 P1和P2是独立产品。 P3是一个可以帮助您连接P1和P2的适配器。
我想到了this,P3是P1-[connects_to]-P2关系的属性,但那么我如何存储P3的属性? 如果我将所有三个产品创建为节点并执行connects_to和P1-[connects_to]-P3,那么这并不能真正代表域名。 我如何在Neo4j中建模?
this
P1-[connects_to]-P2
connects_to
P1-[connects_to]-P3
答案 0 :(得分:1)
您还可以在关系中存储属性
为什么将P3创建为节点并将其连接到不代表域的其他节点?
connections_to是一个非常糟糕的非描述性关系类型,在您的域中找到更好地表达该关系的内容。
答案 1 :(得分:1)
将P1,P2和P3作为节点(因为您说它们中的所有3个都是产品)并将P3与不同的标签放在一起,将其标识为连接节点。
答案 2 :(得分:0)
我认为你可以使用类似的模型:
(P1)-[:connected_through]->(A:Adapter)<-[:connected_through]-(P2) (A)-[:type_is]->(P3)