更新时间:2025-03-13 GMT+08:00

增量导入图(2.1.14)

功能介绍

增量导入图数据。

为防止系统重启时,不能正常恢复导入图数据,建议在使用图期间,不要删除存储在OBS中的数据。

URI

POST /v1.0/{project_id}/graphs/{graph_id}/action

表1 路径参数

参数

是否必选

参数类型

描述

project_id

是

String

项目ID。获取方法请参见获取项目ID。

graph_id

是

String

图ID。

表2 Query参数

参数

是否必选

参数类型

描述

action_id

是

String

图actionId。

枚举值:import-graph

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

是

String

用户Token。

用于获取操作API的权限。获取方法请参见获取Token接口,响应消息头中X-Subject-Token的值即为Token。

表4 请求Body参数

参数

是否必选

参数类型

描述

edgesetPath

否

String

边文件目录或边文件名。

edgesetFormat

否

String

边数据集格式,当前支持csv和txt。

默认为csv。

vertexsetPath

否

String

点文件目录或点文件名。

vertexsetFormat

否

String

点数据集格式,当前支持csv和txt。

默认为csv。

schemaPath

否

String

新增数据的元数据文件路径。

logDir

否

String

导入图日志存放目录,用于存储导入失败的数据和详细错误原因。

parallelEdge

否

Object

重复边处理。

图规格为(持久化版)的图暂不支持该参数。

action

否

String

处理方式,取值为allow,ignore和override,默认为allow。

  • allow表示允许重复边。
  • ignore表示忽略之后的重复边。
  • override表示覆盖之前的重复边。

图规格为(持久化版)的图暂不支持该参数。

ignoreLabel

否

Boolean

重复边的定义,是否忽略Label。取值为true或者false,默认取true。

  • true 表示重复边定义不包含Label,即用<源点,终点>标记一条边,不包含Label。
  • false 表示重复边定义包含Label,即用<源点,终点,Label>标记一条边。

图规格为(持久化版)的图暂不支持该参数。

targetProperties

否

Array

判断重复边所用的属性列表。若不为空,则会将ignoreLabel做false处理,用于包含targetProperties指定列表中属性的边的重复边定义。

(仅action取override时考虑此参数)。

说明:
  • 当前版本仅支持按属性覆盖,不支持按属性忽略,且每个标签仅有一个属性生效。
  • 对于非single类型的属性,均视为不相等。

delimiter

否

String

csv格式文件字段分隔符,默认值为逗号(,)。list/set类型的字段内元素分隔符默认为分号(;)。

trimQuote

否

String

csv格式文件字段包围符,默认值为双引号(")。用来包围一个字段,如字段中含有分隔符或者换行等。

offline

否

Boolean

是否离线导入,取值为true或者false,默认取false。

  • true 表示离线导入,导入速度较快,但导入过程中图处于锁定状态,不可读不可写。
  • false 表示在线导入,相对离线导入,在线导入速度略慢,但导入过程中图并未锁定,可读不可写。
  • edgesetPath、vertexsetPath、schemaPath、logDir字符串取值合法性参考OBS对象名约束。

响应参数

状态码: 200

表5 响应Body参数

参数

参数类型

描述

errorMessage

String

系统提示信息。

  • 执行成功时,字段可能为空。
  • 执行失败时,用于显示错误信息。

errorCode

String

系统提示信息。

  • 执行成功时,字段可能为空。
  • 执行失败时,用于显示错误码。

jobId

String

执行该异步任务的jobId。

说明:

可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。

请求示例

POST http://{Endpoint}/v1.0/{project_id}/graphs/{graph_id}/action?action_id=import-graph
{
  "edgesetPath": "testbucket/demo_movie/edges/",
  "edgesetFormat": "csv",
  "vertexsetPath": "testbucket/demo_movie/vertices/",
  "vertexsetFormat": "csv",
  "schemaPath": "testbucket/demo_movie/incremental_data_schema.xml",
  "logDir": "testbucket/importlogdir",
  "parallelEdge": { 
           "action":"override",
           "ignoreLabel":true
   },
  "delimiter": ",",
  "trimQuote": "\"",
  "offline": true
}

响应示例

状态码: 200

OK

{
  "jobId" : "b4f2e9a0-0439-4edd-a3ad-199bb523b613"
}

状态码: 400

Bad Request

{
  "errorMessage" : "parameter format error",
  "errorCode" : "GES.8013"
}

状态码

状态码

说明

200

请求成功。

400

请求错误。

401

鉴权失败。

403

没有操作权限。

404

找不到资源。

500

服务内部错误。

503

服务不可用。