Skip to content

Commit

Permalink
added schema management (vesoft-inc#152)
Browse files Browse the repository at this point in the history
* fix conflict

* modified st-ug-crud-index.md

* updated

* fixed

* updated toc.md

* fixed format errors

* fixed punctuation errors
  • Loading branch information
oldLady344 committed Oct 16, 2020
1 parent 6dd8c81 commit 7cd4f65
Show file tree
Hide file tree
Showing 21 changed files with 285 additions and 32 deletions.
2 changes: 1 addition & 1 deletion docs/about-studio/st-ug-check-updates.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# 版本更新

Studio 处于持续开发状态中。为保证您在本地或 Nebula Graph Cloud Service 上能使用最新发布的功能
Studio 处于持续开发状态中。为保证您在本地或 Nebula Graph Cloud Service 上能使用 Studio 最新的功能

- Nebula Graph Cloud Service 上始终部署最新版本的 Studio。
- 本地部署时,建议您每次都运行以下命令启动 Studio:
Expand Down
3 changes: 2 additions & 1 deletion docs/about-studio/st-ug-what-is-graph-studio.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ Studio 提供以下功能:

- 灵活的部署方式,满足您的不同需求。您可以在本地部署 Studio 连接 Nebula Graph 数据库,或者在 Nebula Graph Cloud Service 上一键直连云端 Nebula Graph 数据库实例。
- GUI 设计,方便您管理 Nebula Graph 图数据:
- 借助 Studio 的 **控制台** 功能,您可以使用 nGQL™ 语句创建图数据模式(Schema),并对数据执行增删改查操作。
- 借助 **Schema管理** 功能,您可以使用图形界面完成 Schema(模式)创建,使您能快速上手 Nebula Graph 数据库。
- 借助 **控制台** 功能,您可以使用 nGQL™ 语句创建 Schema,并对数据执行增删改查操作。
- 借助 **导入** 功能,通过简单的配置,您即能完成批量点和边数据导入,并能实时查看数据导入日志。
- 图探索,支持可视化展示图数据,使您更容易发现数据之间的关联性,提高数据分析和解读的效率。

Expand Down
Binary file added docs/figs/st-ug-015.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-016.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-017.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-018.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-019.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-020.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-021.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-022.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/figs/st-ug-023.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions docs/install-configure/st-ug-connect.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,6 @@

成功连接 Nebula Graph 数据库后,根据账号的权限,您可以选择执行以下操作:

- 如果您以 `user``root` 用户或者指定图空间的 ADMIN 角色账号登录,可以使用 **控制台** [创建图数据模式](../quick-start/st-ug-create-schema.md)
- 如果您以 `user``root` 用户或者指定图空间的 ADMIN、DBAUSER 角色账号登录,可以 [导入数据](../quick-start/st-ug-import-data.md) 或者使用 **控制台** 写入数据。
- 如果您以 `user``root` 用户或者指定图空间的 ADMIN、DBA、USERGUEST 角色账号登录,可以使用 **控制台** 完成查询操作或者使用 **图探索** 完成图探索和数据分析
- 如果您以拥有 GOD 或者 ADMIN 权限的账号登录,可以使用 **控制台** [创建 Schema](../quick-start/st-ug-create-schema.md) 或者 [使用 Schema 管理](../use-studio/manage-schema/st-ug-crud-space.md)
- 如果您以拥有 GOD、ADMIN、DBA 或者 USER 权限的账号登录,可以 [导入数据](../quick-start/st-ug-import-data.md) 或者使用 **控制台** 写入数据。
- 如果您以拥有 GOD、ADMIN、DBA、USER 或者 GUEST 权限的账号登录,可以使用 **控制台** 完成查询操作或者使用 **图探索** 完成图探索或数据分析
29 changes: 18 additions & 11 deletions docs/quick-start/st-ug-create-schema.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,30 @@
# 创建图数据模式
# 创建 Schema

在 Nebula Graph 中,您必须先有图数据模式,再向其中写入点数据和边数据。本文描述如何使用 Nebula Graph Studio **控制台** 功能创建图数据模式
在 Nebula Graph 中,您必须先有 Schema,再向其中写入点数据和边数据。本文描述如何使用 Nebula Graph 的 **控制台** **Schema管理** 功能创建 Schema

> **说明**:您也可以使用 nebula-console 创建图数据模式。详细信息,参考 [使用 Docker Compose 部署 Nebula Graph
> **说明**:您也可以使用 nebula-console 创建 Schema。详细信息,参考 [使用 Docker Compose 部署 Nebula Graph
](https://github.com/vesoft-inc/nebula-docker-compose/blob/master/README_zh-CN.md)[Nebula Graph 快速开始](https://docs.nebula-graph.com.cn/manual-CN/1.overview/2.quick-start/1.get-started/)

## 前提条件

在 Studio 上创建图数据模式之前,您需要确认以下信息:
在 Studio 上创建 Schema 之前,您需要确认以下信息:

- Studio 已经连接到 Nebula Graph 数据库。
- 您登录的账号拥有 GOD、ADMIN 或 DBA 权限。详细信息,参考 [Nebula Graph 内置角色](https://docs.nebula-graph.com.cn/manual-CN/3.build-develop-and-administration/4.account-management-statements/built-in-roles/)
- 您已经规划好了图数据模式的要素
- 您的账号拥有 GOD、ADMIN 或 DBA 权限。详细信息,参考 [Nebula Graph 内置角色](https://docs.nebula-graph.com.cn/manual-CN/3.build-develop-and-administration/4.account-management-statements/built-in-roles/)
- 您已经规划好了 Schema 的要素
- 已经创建了图空间。
> **说明**:本示例假设已经创建了图空间。如果您的账号拥有 GOD 权限,也可以在 **控制台** 上创建一个图空间。
> **说明**:本示例假设已经创建了图空间。如果您的账号拥有 GOD 权限,也可以在 **控制台** **Schema管理** 上创建一个图空间。
## 操作步骤
## 使用 Schema 管理创建 Schema

按以下步骤创建图数据模式:
按以下步骤使用 **Schema管理** 创建 Schema:

1. 创建标签。详细信息,参考 [操作标签](../use-studio/manage-schema/st-ug-crud-tag.md)
2. 创建边类型。详细信息,参考 [操作边类型](../use-studio/manage-schema/st-ug-crud-edge-type.md)

## 使用控制台创建 Schema

按以下步骤使用 **控制台** 创建 Schema:

1. 在工具栏里,点击 **控制台** 页签。
2.**当前Space** 中选择一个图空间。在本示例中,选择 **mooc_actions**
Expand All @@ -31,7 +38,7 @@
CREATE EDGE action (actionId int, duration double, label bool, feature0 double, feature1 double, feature2 double, feature3 double); -- 创建边类型,带有 7 个属性
```

至此,您已经创建了图数据模式。您可以运行以下语句查看标签与边类型的定义是否正确、完整。
至此,您已经完成了 Schema 创建。您可以运行以下语句查看标签与边类型的定义是否正确、完整。

```nGQL
SHOW TAGS; -- 列出当前图空间中所有标签
Expand All @@ -43,7 +50,7 @@ DESCRIBE EDGE action; -- 查看每种标签和边类型的结构是否正确

## 后续操作

创建图数据模式后,您可能需要执行以下操作:
创建 Schema 后,您可能需要执行以下操作:

- 根据业务需要,您可以为标签和边类型创建索引。详细信息,参考 [Nebula Graph 的 Schema 索引](https://docs.nebula-graph.com.cn/manual-CN/2.query-language/4.statement-syntax/1.data-definition-statements/ "点击前往 Nebula Graph 网站")
- [导入数据](st-ug-import-data.md)
6 changes: 3 additions & 3 deletions docs/quick-start/st-ug-import-data.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# 导入数据

准备好 CSV 文件,创建了图数据模式后,您可以使用 **导入** 功能将所有点和边数据上传到 Studio,用于数据查询、图探索和数据分析。
准备好 CSV 文件,创建了 Schema 后,您可以使用 **导入** 功能将所有点和边数据上传到 Studio,用于数据查询、图探索和数据分析。

## 前提条件

导入数据之前,需要确认以下信息:

- Studio 已经连接到 Nebula Graph 数据库。
- Nebula Graph 数据库里已经创建了图数据模式
- CSV 文件符合图数据模式要求
- Nebula Graph 数据库里已经创建了 Schema
- CSV 文件符合 Schema 要求
- 您的账号拥有 GOD、ADMIN、DBA 或者 USER 的权限,能往图空间中写入数据。

## 操作步骤
Expand Down
10 changes: 5 additions & 5 deletions docs/quick-start/st-ug-plan-schema.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
# 规划图数据模式
# 规划 Schema

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

图数据模式至少要包含以下要素
Schema 至少要包含以下要素

* 标签(TAG,即点类型),以及每种标签的属性。
* 边类型(EDGE TYPE),以及每种边类型的属性。

本文将使用一个示例数据集说明如何规划图数据模式。示例数据集由美国 Stanford Network Analysis Platform (SNAP) 提供的 [Social Network: MOOC User Action Dataset](https://snap.stanford.edu/data/act-mooc.html "点击前往 Stanford Network Analysis Platform (SNAP)网站") 数据集和 97 个不重复的课程名称(来源于公开网络上)组成
本文以美国 Stanford Network Analysis Platform (SNAP) 提供的 [Social Network: MOOC User Action Dataset](https://snap.stanford.edu/data/act-mooc.html "点击前往 Stanford Network Analysis Platform (SNAP)网站") 为基础,并在其中加入由公开网络上获取的不重复的 97 个课程名称,说明如何规划 Schema

下表列出了图数据模式要素
下表列出了 Schema 要素

| 要素 | 名称 | 属性名称 (数据类型) | 说明 |
| :--- | :--- | :--- | :--- |
Expand Down
4 changes: 2 additions & 2 deletions docs/quick-start/st-ug-prepare-csv.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ Studio 支持通过 CSV 文件批量导入点和边数据。目前仅支持上

1. 分别生成 CSV 文件:

- user.csv:仅包括源数据中的 userId 数据。
- user.csv:仅包括源数据中的 `userId` 数据。
- course.csv:仅包括 `courseId``courseName` 数据。
- actions.csv:包括 `actionId`user Id`courseName``label``duration``feature0``feature1``feature2``feature3` 列数据。其中,因为 `label` 属性是布尔数值,所以,将 1 替换为 `TRUE`,将 0 替换为 `FALSE`。如下图所示。
- actions.csv:包括 `actionId``userId``courseName``label``duration``feature0``feature1``feature2``feature3` 列数据。其中,因为 `label` 属性是布尔数值,所以,将 1 替换为 `TRUE`,将 0 替换为 `FALSE`。如下图所示。
![action.csv 文件中包含 actionId、userId、courseName、duration、feature0、feature1、feature2、feature3、label 列](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-004.png "带有表头行的 actions.csv 文件")

2. 删除所有 CSV 文件中的表头行。
19 changes: 13 additions & 6 deletions docs/st-ug-toc.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,19 @@
- [连接数据库](install-configure/st-ug-connect.md)
- [断开连接](install-configure/st-ug-reset-connection.md)
- 快速开始
- [规划图数据模式](quick-start/st-ug-plan-schema.md)
- [准备 CSV 文件](quick-start/st-ug-prepare-csv.md)
- [创建图数据模式](quick-start/st-ug-create-schema.md)
- [导入数据](quick-start/st-ug-import-data.md)
- [查询图数据](quick-start/st-ug-explore.md)
- 操作指南 [TODO]
- [规划 Schema](docs/quick-start/st-ug-plan-schema.md)
- [准备 CSV 文件](docs/quick-start/st-ug-prepare-csv.md)
- [创建 Schema](docs/quick-start/st-ug-create-schema.md)
- [导入数据](docs/quick-start/st-ug-import-data.md)
- [查询图数据](docs/quick-start/st-ug-explore.md)
- 操作指南
- 使用 Schema 管理
- [操作图空间](use-studio/manage-schema/st-ug-crud-space.md)
- [操作标签](use-studio/manage-schema/st-ug-crud-tag.md)
- [操作边类型](use-studio/manage-schema/st-ug-crud-edge-type.md)
- [操作索引](use-studio/manage-schema/st-ug-crud-index.md)
- 使用图探索[TODO]
- 使用控制台[TODO]
- 最佳实践 [TODO]
- 故障排查 [TODO]
- 连接问题
Expand Down
66 changes: 66 additions & 0 deletions docs/use-studio/manage-schema/st-ug-crud-edge-type.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# 操作边类型

在 Nebula Graph 数据库中创建图空间后,您可能需要创建边类型。您可以选择使用 **控制台** 或者 **Schema管理** 操作边类型。本文仅说明如何使用 **Schema管理** 操作边类型。

## 前提条件

在 Studio 上操作边类型之前,您必须确认以下信息:

- Studio 已经连接到 Nebula Graph 数据库。
- 图空间已经创建。
- 您当前登录的账号拥有 GOD、ADMIN 或者 DBA 的权限。

## 创建边类型

按以下步骤使用 **Schema管理** 创建边类型:

1. 在工具栏中,点击 **Schema管理** 页签。
2.**图空间列表** 中,找到图空间,点击图空间名称或者在 **操作** 列中点击 ![表示设置的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-018.png "设置") 图标。
3.**当前图空间** 里确认图空间名称。您也可以通过选择图空间名称切换图空间。
4. 点击 **边类型** 页签,并点击 **创建** 按钮。
5.**创建** 页面上,完成以下设置:

a. **名称**:按提示信息输入合规的边类型名称。本示例中,输入 `action`

b. (可选)如果边类型需要属性,在 **定义属性**面板的左上角,点击勾选框,并在展开的列表中,完成以下操作:
- 输入属性名称、数据类型和默认值。
- 如果一个标签有多个属性,可以点击 **添加属性** 按钮,并定义属性。
- 如果要删除某个属性,在该属性所在行,点击 ![表示删除的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-020.png "删除") 图标。

c. (可选)标签未设置索引时,您可以设置 TTL:在 **设置TTL**面板的左上角,点击勾选框,并在展开的列表中设置 `TTL_COL``TTL_DURATION` 参数信息。关于这两个参数的详细信息,参考 [TTL 配置](https://docs.nebula-graph.com.cn/manual-CN/2.query-language/4.statement-syntax/1.data-definition-statements/TTL/ "点击前往 Nebula Graph 网站")

6. 完成设置后,在 **对应的nGQL语句** 面板上,您能看到与上述配置等价的 nGQL 语句。
![定义边类型 action 的属性](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-022.png "定义边类型")

7. 确认无误后,点击 **+ 创建** 按钮。
如果边类型创建成功,**定义属性**面板会显示这个边类型的属性列表。

## 修改边类型

按以下步骤使用 **Schema管理** 修改边类型:

1. 在工具栏中,点击 **Schema管理** 页签。
2.**图空间列表** 中,找到图空间,点击图空间名称或者在 **操作** 列中点击 ![表示设置的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-018.png "设置") 图标。
3.**当前图空间** 里确认图空间名称。您也可以通过选择图空间名称完成图空间切换。
4. 点击 **边类型** 页签,找到需要修改的边类型,并在 **操作** 列中,点击 ![表示修改的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-021.png "修改") 图标。
5.**编辑** 页面,您可以选择以下操作:
- 如果要修改属性:在 **定义属性** 面板上,找到需要修改的属性,在右侧点击 **编辑**,再修改属性的数据类型或者默认值。修改完成后,点击 **确认****取消**
- 如果要删除属性:在 **定义属性** 面板上,找到需要删除的属性,在右侧点击 **删除**,经确认后,删除属性。
- 如果要添加属性:在 **定义属性** 面板上,点击 **添加属性** 按钮,添加属性信息。
- 如果要修改 TTL:在 **设置TTL** 面板上,修改或 `TTL_COL``TTL_DURATION` 设置。
- 如果要删除所有已经配置的 TTL:在 **设置TTL** 面板的左上角,点击勾选框,取消选择。
- 如果要设置 TTL:在 **设置TTL** 面板的左上角,点击勾选框,开始设置 TTL。
6. 完成设置后,在 **对应的nGQL语句** 面板上,您能看到修改后的 nGQL 语句。

## 删除边类型

按以下步骤使用 **Schema管理** 删除边类型:

1. 在工具栏中,点击 **Schema管理** 页签。
2.**图空间列表** 中,找到图空间,点击图空间名称或者在 **操作** 列中点击 ![表示设置的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-018.png "设置") 图标。
3.**当前图空间** 里确认图空间名称。您也可以通过选择图空间名称切换图空间。
4. 点击 **边类型** 页签,找到需要修改的边类型,并在 **操作** 列中,点击 ![表示删除的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-017.png "删除") 图标。

## 后续操作

边类型创建成功后,您可以在 **控制台** 上逐条插入边数据,或者使用 **导入** 功能批量插入边数据。
54 changes: 54 additions & 0 deletions docs/use-studio/manage-schema/st-ug-crud-index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# 操作索引

标签和边类型创建成功后,您可以为它们添加索引,使得图查询时可以从拥有共同属性的同一类型的点或边开始遍历,使大型图的查询更为高效。Nebula Graph 支持两种类型的索引:标签索引和边类型索引。您可以选择使用 **控制台** 或者 **Schema管理** 操作索引。本文仅说明如何使用 **Schema管理** 操作索引。

## 前提条件

在 Studio 上操作索引之前,您必须确认以下信息:

- Studio 已经连接到 Nebula Graph 数据库。
- 图空间、标签和边类型已经创建。
- 您当前登录的账号拥有 GOD、ADMIN 或者 DBA 的权限。

## 创建索引

按以下步骤使用 **Schema管理** 创建索引:

1. 在工具栏中,点击 **Schema管理** 页签。
2.**图空间列表** 中,找到图空间,点击图空间名称或者在 **操作** 列中点击 ![表示设置的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-018.png "设置") 图标。
3.**当前图空间** 里确认图空间名称。您也可以通过选择图空间名称切换图空间。
4. 点击 **索引** 页签,再点击 **创建** 按钮。
5.**创建** 页面上,完成以下设置:

a. **索引类型**:确认或修改索引类型,即 **标签** 或者 **边类型**。本示例中选择 **边类型**

b. **名称**:选择要创建索引的标签或边类型名称。本示例中选择 **action**

c. **索引名称**:按规定指定索引名称。本示例中输入 **action_index**

d. **索引属性**:点击 **添加**,在 **选择关联的属性** 列表里选择需要索引的属性,并点击 **确定** 按钮。如果需要关联多个属性,重复这一步操作。您可以按界面提示重排索引属性的顺序。本示例中选择 `label``actionId`
> **说明**:索引属性的顺序会影响 `LOOKUP` 语句的查询结果。详细信息,参考 [《nGQL 用户手册》](https://docs.nebula-graph.com.cn/manual-CN/2.query-language/4.statement-syntax/2.data-query-and-manipulation-statements/lookup-syntax/#faq "点击前往 Nebula Graph 网站")
6. 完成设置后,在 **对应的 nGQL**面板,您能看到与上述配置等价的 nGQL 语句。
![为边类型 action 创建索引](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-023.png "创建索引")

1. 确认无误后,点击 **+ 创建** 按钮。
如果索引创建成功,**定义属性**面板会显示这个索引的属性列表。

## 查看索引

按以下步骤使用 **Schema管理** 查看索引:

1. 在工具栏中,点击 **Schema管理** 页签。
2.**图空间列表** 中,找到图空间,点击图空间名称或者在 **操作** 列中点击 ![表示设置的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-018.png "设置") 图标。
3.**当前图空间** 里确认图空间名称。您也可以通过选择图空间名称切换图空间。
4. 点击 **索引** 页签,在列表左上方,选择需要查看的索引类型。
5. 在列表中,找到需要查看的索引,点击索引所在行。界面上即列出索引相关的所有属性。

## 删除索引

按以下步骤使用 **Schema管理** 删除索引:

1. 在工具栏中,点击 **Schema管理** 页签。
2.**图空间列表** 中,找到图空间,点击图空间名称或者在 **操作** 列中点击 ![表示设置的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-018.png "设置") 图标。
3.**当前图空间** 里确认图空间名称。您也可以通过选择图空间名称切换图空间。
4. 点击 **索引** 页签,找到需要修改的索引,并在 **操作** 列中,点击 ![表示删除的图标](https://docs-cdn.nebula-graph.com.cn/nebula-studio-docs/st-ug-017.png "删除") 图标。
Loading

0 comments on commit 7cd4f65

Please sign in to comment.