跳转至

规划 SchemaGraph

在使用 Studio 之前,您需要先根据 NebulaGraph 数据库的要求规划您的 Schema(模式)。

Schema 至少要包含以下要素:

  • 标签(Tag,即点类型),以及每种标签的属性。
  • 边类型(Edge Type),以及每种边类型的属性。

本文以美国 Stanford Network Analysis Platform (SNAP) 提供的 Graph 为基础,并在其中加入由公开网络上获取的不重复的 97 个课程名称,说明如何规划 Schema。

下表列出了 Schema 要素。

要素 名称 属性名称 (数据类型) 说明
标签 user userId (int)
将使用 userId 生成这类点数据的 VID。
表示指定 MOOC 平台的用户。
标签 course - courseId (int)
- courseName (string)
本示例中将使用 courseName 的值通过 Hash() 函数生成这类点数据的 VID。因为 NebulaGraph 要求同一个图空间中所有点的 VID 必须始终唯一,而 courseId 与部分 user 类 VID 重复,所以,不能使用 courseId 生成 course 类点数据的 VID。
表示指定 MOOC 平台上的课程。
边类型 action - actionId (int)
- duration (double):代表源数据中的 timestamp 数据,表示行为持续时间
- label (bool):表示 user 完成一个行为后是否退出了课程
- feature0 (double)
- feature1 (double)
- feature2 (double)
- feature3 (double)
表示用户参与课程的行为,分别用参与活动的持续时间、参与后用户是否退出了 MOOC 平台以及行为的四个维度(feature)来描述。其中,labeltrue 表示退出 MOOC 平台,为 false 表示未退出平台。

下图说明示例中 user 类点与 course 类点之间如何发生关系(action)。

用户在 MOOC 平台上参加课程


最后更新: April 7, 2021