我是dgraph的初学者,从neo4j转到dgraph。我在编写具有不同社交媒体平台详细信息的架构。
考虑到facebook,该架构将包含配置文件,组,页面的基本详细信息,以及fb配置文件与组和页面之间的不同关系,例如
profile_a is 'friends_of' profile_b;
user 'likes' page_b;
user is 'member_of' group_a
user 'works_at' place_a
twitter的类似情况,其中的关系将是
twitter_user 'follows' user_a
user_a 'followed_by' users
我这样做的目的
type Person{
name: string @index(exact) .
id: string @index(exact) .
profile: string @index(exact) .
picture_link: string .
status_count: int .
location: string .
tags: string .
user_id: int .
follower_count: string .
friend_count: string .
type: int @index(exact) .
likes : [Page] .
friends_of : [Fb_User] .
members_of : [Group] .
works_at : {
name: string .
}
}
type Fb_User{
name: string @index(exact) .
id: string @index(exact) .
profile: string @index(exact) .
picture_link: string .
status_count: int .
location: string .
type: int @index(exact) .
location: string .
tags: string .
user_id: int .
}
type Group{
name: string @index(exact) .
id: string @index(exact) .
profile: string @index(exact) .
picture_link: string .
group_member : int .
}
type Page{
name: string @index(exact) .
id: string @index(exact) .
profile: string @index(exact) .
picture_link: string .
page_type : int .
}
type Facebook
{
label: string @index(exact)
}
请认真地指导和纠正有关架构结构的问题。期待在pydgraph中实现它
谢谢
从获得帮助 https://tour.dgraph.io/schema/1/
我希望有一个架构可以通过python代码接受基本的细节和关系
答案 0 :(得分:0)
基于您指的example:
id
字段,也不必使其成为类型string
。 dgraph将自动分配一个uid
。 uid
的索引要快得多。 Person
和Page
之间的关系:likes : [Page] .
,请在类型定义后提供格式为likes: [uid] .
的指令。 / li>
您还可以考虑尝试使用Dgraph的GraphQL version,以便可以与GraphQL SDL建立关系,这将使它们在您的应用程序中可重复使用。