如何为dgraph中的节点建模相似的命名谓词或属性?

问题描述 投票:1回答:1

我正在尝试使用Dgraph作为我的主数据库。我有一个简单的系统,具有两个域实体。 UserProduct。它们都具有在Dgraph中表示为edges / attributes的某些属性。它们都有一个公共属性name,它是一个[[string。如果我对两个节点都使用相同的谓词name,那么当我使用has函数查找所有具有name边的用户时,就会产生问题。 has函数还返回边缘为Productname个节点。这是不可取的。

在这种情况下,建模领域实体时正确的方法或建议是什么?我可以想到两种方法:

    具有所有节点的公共边type,以唯一地标识相似节点。此处type的值为UserProduct。这与传统的表/列类比近似类似,其中type表示table,而edges表示为列,其上下文已本地化为type属性。
  1. 每种节点类型都有一个单独的谓词。因此,最好不要使用nameuser_name这两个谓词,而不要使用product_name
  2. 我相信这个问题仅存在于RDF / Triplestore数据库(如Dgraph,而不存在于属性图,如Neo4j,因为每个节点都包含自己的属性。

我正在尝试使用Dgraph作为我的主数据库。我有一个简单的系统,具有两个域实体。用户和产品。它们都具有表示为Dgraph中的边/属性的某些属性。...

graph-databases dgraph
1个回答
1
投票
好消息!在Dgraph v1.1中,types were introduced.
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.