Skip to content
Permalink
Browse files
Improve some RESTful api details (#75)
  • Loading branch information
Jerry098 committed Jul 7, 2021
1 parent eb833bd commit fd783614ac1b3b99df5c79ee6076d1671f127383
Showing 7 changed files with 75 additions and 5 deletions.
@@ -14,6 +14,18 @@ EdgeId是由 `src-vertex-id + direction + label + sort-values + tgt-vertex-id`

#### 2.2.1 创建一条边

Params说明

- label:边类型名称,必填
- outV:源顶点id,必填
- inV:目标顶点id,必填
- outVLabel:源顶点类型。必填
- inVLabel:目标顶点类型。必填
- properties: 边关联的属性,对象内部结构为:
- name:属性名称
- value:属性值


##### Method & Url

```
@@ -609,3 +621,4 @@ DELETE http://localhost:8080/graphs/hugegraph/graph/edges/S1:peter>1>>S2:lop?lab

```json
204
```
@@ -2,6 +2,18 @@

假设已经创建好了1.1.3中的 PropertyKeys 和 1.2.3中的 VertexLabels

Params说明

- name:顶点类型名称,必填
- source_label: 源顶点类型的名称,必填
- target_label: 目标顶点类型的名称,必填
- frequency:两个点之间是否可以有多条边,可以取值SINGLE和MULTIPLE,非必填,默认值SINGLE
- properties: 边类型关联的属性类型,选填
- sort_keys: 当允许关联多次时,指定区分键属性列表
- nullable_keys:可为空的属性,选填,默认可为空
- enable_label_index: 是否开启类型索引,默认关闭


#### 1.3.1 创建一个EdgeLabel

##### Method & Url
@@ -292,5 +304,4 @@ DELETE http://localhost:8080/graphs/hugegraph/schema/edgelabels/created
```

注:

> 可以通过`GET http://localhost:8080/graphs/hugegraph/tasks/1`(其中"1"是task_id)来查询异步任务的执行状态,更多[异步任务RESTful API](task.md)
@@ -109,6 +109,26 @@ store=hugegraph

### 5.3 Mode

合法的图模式包括:NONE,RESTORING,MERGING,LOADING

- None 模式(默认),元数据和图数据的写入属于正常状态。特别的:
- 元数据(schema)创建时不允许指定 ID
- 图数据(vertex)在 id strategy 为 Automatic 时,不允许指定 ID
- LOADING:批量导入数据时自动启用,特别的:
- 添加顶点/边时,不会检查必填属性是否传入

Restore 时存在两种不同的模式: Restoring 和 Merging

- Restoring 模式,恢复到一个新图中,特别的:
- 元数据(schema)创建时允许指定 ID
- 图数据(vertex)在 id strategy 为 Automatic 时,允许指定 ID
- Merging 模式,合并到一个已存在元数据和图数据的图中,特别的:
- 元数据(schema)创建时不允许指定 ID
- 图数据(vertex)在 id strategy 为 Automatic 时,允许指定 ID

正常情况下,图模式为 None,当需要 Restore 图时,需要根据需要临时修改图模式为 Restoring 模式或者 Merging 模式,并在完成 Restore 时,恢复图模式为 None。


#### 5.3.1 查看某个图的模式. **该操作需要管理员权限**

##### Method & Url
@@ -5,7 +5,7 @@
##### Params

- gremlin: 要发送给`HugeGraphServer`执行的`gremlin`语句
- bindings: 可以给`gremlin`语句中的变量绑定值
- bindings: 用来绑定参数,key是字符串,value是绑定的值(只能是字符串或者数字),功能类似于MySQL的preparedstatement,即预编译和缓存语句,加速运行
- language: 发送语句的语言类型,默认为`gremlin-groovy`
- aliases: 为存在于图空间的已有变量添加别名

@@ -1,5 +1,18 @@
### 1.1 PropertyKey

Params说明:

- name:属性类型名称,必填
- data_type:属性类型数据类型,包括:bool、byte、int、long、float、double、string、date、uuid、blob,默认string类型
- cardinality:属性类型基数,包括:single、list、set,默认single

请求体字段说明:

- id:属性类型id值
- properties:属性的属性,对于属性而言,此项为空
- user_data:设置属性类型的通用信息,比如可设置age属性的取值范围,最小为0,最大为100;目前此项不做任何校验,只为后期拓展提供预留入口


#### 1.1.1 创建一个 PropertyKey

##### Method & Url
@@ -205,4 +218,4 @@ DELETE http://localhost:8080/graphs/hugegraph/schema/propertykeys/age

```json
204
```
```
@@ -1,13 +1,14 @@
### 2.1 Vertex

0.4 版本对顶点 Id 做了比较大的改动,VertexLabel 中的 Id 策略决定了顶点的 Id 类型,其对应关系如下:
顶点类型中的 Id 策略决定了顶点的 Id类型,其对应关系如下:

Id_Strategy | id type
---------------- | -------
AUTOMATIC | number
PRIMARY_KEY | string
CUSTOMIZE_STRING | string
CUSTOMIZE_NUMBER | number
CUSTOMIZE_UUID | uuid

顶点的GET/PUT/DELETE API中url的 id 部分传入的应是带有类型信息的id值,这个类型信息用 json 串是否带引号表示,也就是说:

@@ -675,7 +676,6 @@ DELETE http://localhost:8080/graphs/hugegraph/graph/vertices/"1:marko"?label=per
```

##### Response Status

```json
204
```
@@ -2,6 +2,19 @@

假设已经创建好了1.1.3中列出来的 PropertyKeys

Params说明

- id:顶点类型id值
- name:顶点类型名称,必填
- id_strategy: 顶点类型的ID策略,主键ID、自动生成、自定义字符串、自定义数字、自定义UUID,默认主键ID
- properties: 顶点类型关联的属性类型
- primary_keys: 主键属性,当ID策略为PRIMARY_KEY时必须有值,其他ID策略时必须为空;
- enable_label_index: 是否开启类型索引,默认关闭
- index_names:顶点类型创建的索引,详情见3.4
- nullable_keys:可为空的属性
- user_data:设置顶点类型的通用信息,作用同属性类型


#### 1.2.1 创建一个VertexLabel

##### Method & Url

0 comments on commit fd78361

Please sign in to comment.