华为云用户手册

  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 job_id String 执行该异步任务的jobId。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • URI POST /v2/{project_id}/graphs/{graph_id}/clear-graph 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。获取方法请参见获取项目ID。 graph_id 是 String 图ID。 表2 Query参数 参数 是否必选 参数类型 描述 clear_metadata 否 Boolean 是否清空图关联的元数据,建议清空。取值为“true”或者“false”。默认为“false”。 true:表示清空 false:表示不清空
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见 获取Token 接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 expand 是 expand object expand是一个对象 表4 expand 参数 是否必选 参数类型 描述 replication 是 Integer 新扩副本数量。
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 job_id String 扩副本任务ID。请求失败时字段为空。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考任务中心API。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 schema_count Integer 元数据返回个数。请求失败时,字段为空。 schema_list Array of schema_list objects 当前project_id下的所有元数据列表。请求失败时,字段为空。 表5 schema_list 参数 参数类型 描述 id String 元数据 ID。 name String 元数据名称。 start_time String 元数据创建时间。 last_update_time String 元数据最后更新时间。 encrypted Boolean 元数据是否加密。 master_key_name String 秘钥名称。 master_key_id String 秘钥id。 description String 元数据 描述。 metadata_path String 元数据对应路径。 status String 元数据是否可用。 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 响应示例 状态码: 200 成功响应示例 { "schema_count" : 2, "schema_list" : [ { "start_time" : "2022-01-21T10:13:31", "last_update_time" : "2022-01-21T10:13:31", "encrypted" : true, "master_key_name" : "Autouse_No_Delete", "name" : "schema_748e", "master_key_id" : "106be30a-733d-45d0-84f3-1c5439381313", "description" : "xxxxx", "id" : "6634c50e-13aa-4395-8088-6b327f7da694", "metadata_path" : "devdata/schema_748e.xml", "status" : "200" }, { "start_time" : "2022-04-12T03:15:17", "last_update_time" : "2022-11-16T08:18:32", "encrypted" : false, "name" : "unionsdk_schema", "id" : "6b74069d-3cf3-4cc0-9118-2478e23b87aa", "metadata_path" : "devdata/unionsdk/unionsdk_schema.xml", "status" : "200" } ] } 状态码: 500 失败响应示例 { "error_code" : "GES.7006", "error_msg" : "The underlying graph engine has internal error." }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见获取Token接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 scenes 否 Array of scenes objects 要取消订阅的具体场景列表。 表4 scenes 参数 是否必选 参数类型 描述 name 否 String 场景名。 applications 否 Array of strings 要取消订阅的application 名字列表。
  • 请求示例 取消订阅scenes场景应用分析能力,取消订阅的具体场景名称为12345工单关联分析,取消订阅的application名字列表为"动态高纬关系深度分析"。 POST /v2/{project_id}/graphs/{graph_id}/scenes/unregister { "scenes" : [ { "name" : "12345工单关联分析", "applications" : [ "动态高纬关系深度分析" ] } ] }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 success Array of strings 取消订阅成功的SceneApplication。 failure Array of strings 取消订阅失败的SceneApplication。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 响应示例 状态码: 200 成功响应示例 { "backup_count" : 3, "backup_list" : [ { "id" : "ada3e720-ab87-48cb-bff7-3ec5ae1a9652", "name" : "ges060803_nodelete-20210608135513", "backup_method" : "manual", "graph_id" : "4c5f882d-a813-4d78-a8e3-6d3212ddd121", "graph_name" : "ges060803_nodelete", "graph_status" : "200", "graph_size_type_index" : "1", "data_store_version" : "2.2.21", "arch" : "x86_64", "status" : "success", "start_timestamp" : 1623160513000, "start_time" : "2021-06-08T13:55:13", "end_timestamp" : 1623160568000, "end_time" : "2021-06-08T13:56:08", "size" : 1, "duration" : 54, "encrypted" : false }, { "id" : "7ed3f51d-816d-4651-9129-fe21b64b5c91", "name" : "ges060803_nodelete_20210609203323_auto", "backup_method" : "auto", "graph_id" : "4c5f882d-a813-4d78-a8e3-6d3212ddd121", "graph_name" : "ges060803_nodelete", "graph_status" : "200", "graph_size_type_index" : "1", "data_store_version" : "2.2.21", "arch" : "x86_64", "status" : "success", "start_timestamp" : 1623242004000, "start_time" : "2021-06-09T12:33:24", "end_timestamp" : 1623242004000, "end_time" : "2021-06-09T12:33:24", "size" : 1, "duration" : 0, "encrypted" : false }, { "id" : "604bfb46-04dd-45fc-a9ae-df24a0705b9d", "name" : "ges060802_nodelete-20210608135523", "backup_method" : "manual", "graph_id" : "9b9a05c2-0cdb-41ac-b55f-93caffb0519a", "graph_name" : "ges060802_nodelete", "graph_status" : "400", "graph_size_type_index" : "0", "data_store_version" : "2.2.23", "arch" : "x86_64", "status" : "success", "start_timestamp" : 1623160524000, "start_time" : "2021-06-08T13:55:24", "end_timestamp" : 1623160577000, "end_time" : "2021-06-08T13:56:17", "size" : 1, "duration" : 53, "encrypted" : false } ] } 状态码: 400 失败响应示例 { "error_code" : "GES.7006", "error_msg" : "The underlying graph engine has internal error." }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 backup_count Integer 备份总个数。请求失败时,字段为空。 backup_list Array of backup_list objects 当前Project ID下的所有图的备份列表。请求失败时,字段为空。 表5 backup_list 参数 参数类型 描述 id String 备份ID。 name String 备份名称。 backup_method String 备份方法,取值为auto,manual或者import。 graph_id String 备份关联的图ID。 graph_name String 备份关联的图Name。 graph_status String 备份关联的图状态。 graph_size_type_index String 备份关联的图规格。 data_store_version String 备份关联的图版本。 arch String 备份关联的图CPU架构。 status String 备份状态。 backing_up:备份中 success:备份成功 failed:备份失败 start_timestamp Long 备份开始时间戳。 start_time String 备份开始时间。 end_timestamp Long 备份结束时间戳。 end_time String 备份结束时间。 size Long 备份文件大小,单位为MB。 duration Long 备份时间,单位为秒。 encrypted Boolean 是否加密。默认值为"false",不加密。 true:表示加密。 false:表示不加密。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 业务面API错误码 调用接口出错后,将不会返回结果数据。调用方可根据每个接口对应的错误码来定位错误原因。当调用出错时,HTTP 请求返回一个 4xx 或 5xx 的 HTTP 状态码。返回的消息体中是具体的错误代码及错误信息。在调用方找不到错误原因时,可以联系技术人员,并提供错误码,以便我们尽快帮您解决问题。 当您调用API时,如果遇到“APIGW”开头的错误码,请参见API网关错误码进行处理。 表1 错误码 状态码 错误码 错误信息 描述 处理措施 400 GES.8000 Incorrect parameter format. 参数格式错误 检查请求body体是否和文档描述一致。 400 GES.8001 Failed to query graph statistics. 图统计信息查询失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 500 GES.8002 Graph statistics query error. 图统计信息查询错误 检查token是否过期,重新获取token。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8005 Incorrect parameter. 参数错误 检查URL中的project_id是否正确。 检查请求头是否正确,比如X-Auth-Token是否正确。 400 GES.8006 Invalid resource access. 资源访问不合法 1.AK/SK鉴权方式:需要检查regioncode或者regionname是否正确。 2.Token鉴权方式:需要检查token对应的project是否正确。 400 GES.8007 Invalid token. Token不合法 检查Token是否正确。 400 GES.8008 An error occurs in the underlying authentication system. 底层认证系统出错 请稍后重试或联系技术支持人员。 400 GES.8011 Failed to export a graph. 导出图失败 检查图名是否正确。 查看导出文件路径是否正确。 检查该账号有无OBS写入权限。 400 GES.8012 Failed to clear a graph. 清空图失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8013 Failed to incrementally import data to the graph. 增量导入图失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8020 The current user does not have permission. (细粒度授权时)当前用户没权限 使用具有Security Administrator权限的用户进行授权。 400 GES.8101 Invalid filter criteria for edge queries. 边过滤查询条件不合法 检查边过滤条件格式是否正确。 400 GES.8102 Invalid label for edge filtering queries. 边过滤查询Label不合法 检查labels是不是正常的josn体。 400 GES.8103 Both the condition and label of edge filtering queries are empty. 边过滤查询条件和Label同时为空 边过滤查询条件和Label不能同时为空。 400 GES.8104 Invalid edge filtering query sequence. 边过滤排序输入不合法 检查边过滤排序输入是否合法。 400 GES.8105 Failed to query edges that meet filter criteria. 边过滤查询执行失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8106 The source vertex or target vertex in the edge details is empty. 边详情起点或终点为空 边详情起点和终点不能为空。 400 GES.8107 Failed to query edge details. 边详情查询失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 500 GES.8108 Edge details query error. 边详情查询内部错误 请稍后重试或联系技术人员。 400 GES.8109 Invalid edge filtering query operator. 边过滤查询算子不合法 边过滤查询算子取值为 in、out、both、edge。 400 GES.8110 Parameter edges cannot be left blank. 参数edges不能为空 批量边查询请求体中edges是否为空。 400 GES.8201 Invalid label for vertex filtering queries. 点过滤查询Label不合法 检查labels是不是正常的josn体。 400 GES.8202 Invalid filter criteria for vertex queries. 点过滤查询条件不合法 检查点过滤查询API中propertyName(属性名称)是否为空。 检查点过滤查询API中values(属性值)是否为空。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8203 Both the condition and label of vertex filtering queries are empty. 点过滤查询条件和Label同时为空 点过滤条件和Label不能同时为空。 400 GES.8204 Failed to query vertices that meet filter criteria. 点过滤查询执行失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8205 Invalid vertex filtering query sequence. 点过滤排序输入不合法 点过滤查询API中orderValue必须在“incr”和“decr”。 400 GES.8206 Both vertexid and vertextids exist. vertexid和vertextids同时存在 vertexid和vertextids不能同时存在。 400 GES.8207 Both vertexid and vertextids are empty. vertexid和vertextids同时为空 vertexid或vertextids为空。 400 GES.8208 Incorrect vertextids format. vertextids格式错误 vertextids是否 json array。 400 GES.8209 Failed to query vertex details. 点详情查询失败 检查图名是否存在。 500 GES.8210 Vertex details query error. 点详情查询内部错误 请稍后重试或联系技术支持人员。 400 GES.8211 Invalid vertex filtering query operator. 点过滤查询算子不合法 点过滤查询算子取值为 inV、outV、bothV、vertex。 400 GES.8212 Failed to delete the vertex label. 删除点Label失败 Label是否存在。 400 GES.8213 Failed to add the vertex label. 增加点Label失败 Label是否存在。 400 GES.8214 Parameter vertices cannot be left blank. 参数vertices不能空 批量点查询请求体中vertices是否为空。 400 GES.8220 Failed to update the vertex properties. 更新点属性失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8221 Failed to update the edge properties. 更新边属性失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8301 Failed to query a job. 作业查询失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 500 GES.8302 Job query error. 作业查询内部错误 请稍后重试或联系技术支持人员。 400 GES.8303 Failed to terminate a job. 作业终止失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 500 GES.8304 Job termination error. 作业终止内部错误 请稍后重试或联系技术支持人员。 400 GES.8401 The algorithm or graph name cannot be empty. 算法名或者图名不能为空 算法名或者图名不能为空。 400 GES.8402 Failed to run the algorithm. 算法执行失败 网络波动问题建议重试下。 检查执行算法API图名是否填写正确。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 500 GES.8403 Algorithm running error. 算法执行内部错误 请稍后重试或联系技术支持人员。 400 GES.8404 Invalid algorithm running format. 算法执行模式不合法 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8501 The Gremlin command is not supported. Gremlin查询命令不支持 不支持Gremlin的tryNext、explain、tree语句。 400 GES.8502 Failed to find the Gremlin configuration file. Gremlin配置文件找不到 请稍后重试或联系技术支持人员。 400 GES.8503 Gremlin query failed. Gremlin查询执行失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 500 GES.8504 Gremlin query error. Gremlin查询内部错误 请稍后重试或联系技术支持人员。 400 GES.8505 The Gremlin query statement does not contain the command field. Gremlin查询语句没有command字段 Gremlin查询语句没有command字段。 400 GES.8506 The size of the Gremlin query request statements exceeds the upper limit. Gremlin查询请求语句超过限制 当前限制为64MB。 500 GES.8601 Gremlin service unavailable. Gremlin服务不可用 请稍后重试或联系技术支持人员。 500 GES.8602 Engine service unavailable. Engine服务不可用 请稍后重试或联系技术支持人员。 400 GES.8603 Failed to create an index 索引创建失败 检查索引名称是否只包含字母,数字,-和_。 检查索引参数类型是否符合GES API规定的格式。 400 GES.8604 Failed to delete an index 索引删除失败 检查图名是否填写正确。 检查索引名称是否填写正确。 检查请求Method type是否为delete。 400 GES.8605 Failed to query an index 索引查询失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8609 The request body for querying path details is invalid. 查询路径详情请求体不合法 检查图名是否填写正确。 检查查询路径详情API参数格式是否填写正确。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8610 The path parameter of the request body for querying path details is invalid. 查询路径详情请求体path参数不合法 检查查询路径详情API参数格式是否填写正确。 检查查询路径详情API必选参数是否缺失。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8611 Failed to query path details. 查询路径详情失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8612 The operation of querying path details is not supported. 查询路径详情操作不支持 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 400 GES.8801 Failed to add a label to metadata. 元数据添加label失败 检查要添加的label是否已经存在。 检查添加labelAPI参数格式是否正确。 检查添加labelAPI必选参数是否都有值。 400 GES.8803 Failed to query the metadata. 元数据查询失败 检查要查询的图是否存在。 检查查询图元数据详情API的graph_name是否填写正确。 500 GES.8804 Metadata query error. 元数据查询内部错误 请稍后重试或联系技术支持人员。 400 GES.8806 K-Hop query with filter criteria failed. 带过滤的khop查询执行失败 网络波动问题建议重试下。 若继续失败,则根据errorMessage查看错误信息联系技术支持人员。 父主题: 错误码
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 job_id String 执行异步任务的JobID。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 例如,对于 IAM 获取用户Token接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,其中username为用户名,domainname为用户所属的账号名称,********为用户登录密码,xxxxxxxxxxxxxxxxxx为project的名称。例如cn-north-1,可以从地区和终端节点中获取。 scope参数定义了Token的作用域,下面示例中获取的Token仅能访问project下的资源。您还可以设置Token的作用域为某个账号下所有资源或账号的某个project下的资源,详细定义请参见IAM获取用户Token。 POST https: //iam.cn-north-1.myhuaweicloud.com/v3/auth/tokens Content-Type: application/json{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxxxxxxxxxxxx" } } } } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于IAM获取用户Token接口,返回的响应消息头中“x-subject-token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
  • 请求URI 图引擎服务业务面API请求URI由如下部分组成。 {URI-scheme} :// {SERVER_URL} / {resource-path} ? {query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独拿出来强调。 URI-scheme:表示用于传输请求的协议,当前所有API均采用HTTPS协议。 SERVER_URL:图的访问地址,取值请参考业务面API使用限制。 resource-path:资源路径,即API访问路径。从具体API的URI模块获取,例如“ges/v1.0/{project_id}/graphs/{graph_name}/vertices/action?action_id=query”。 query-string:查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过10条数据。
  • 请求消息头 附加请求消息头字段,如指定的URI和HTTP方法所要求的字段。例如,定义消息体类型的请求消息头“Content-Type”,请求鉴权信息等。 如下公共消息头需要添加到请求中。 表1 公共请求消息头 参数名 是否必选 说明 示例 Content-Type 是 消息体的类型(格式),默认取值为“application/json”,有其他取值时会在具体接口中专门说明。 application/json X-Auth-Token 是 用户Token。例如,IAM用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 - X-Language 是 请求语言。支持配置如下值: zh-cn:中文 en-us:英文 en-us
  • 响应示例 状态码: 200 成功响应示例 { "job_count" : 2, "job_list" : [ { "job_id" : "ff80808167bb90340167bc3c7b5b026a", "status" : "success", "job_type" : "GraphManagement", "job_name" : "ImportGraph", "related_graph" : "test1217", "begin_time" : "2018-12-17T12:55:40", "end_time" : "2018-12-17T12:56:32", "job_detail" : { "vertexset_path" : null, "edgeset_path" : [ { "path" : "hkmovie/edge.csv", "log" : null, "cause" : null, "status" : "success" } ], "schema_path" : [ { "path" : "hkmovie/schema.xml", "log" : null, "cause" : null, "status" : "success" } ] }, "job_progress" : 0 }, { "job_id" : "ff80808167bb90340167bc5d0b1d0358", "status" : "success", "job_type" : "GraphManagement", "job_name" : "DeleteGraph", "related_graph" : "test1218", "begin_time" : "2018-12-17T13:31:14", "end_time" : "2018-12-17T13:34:48", "job_progress" : 0 } ] } 状态码: 400 失败响应示例 { "error_msg" : "failed", "error_code" : "GES.9999" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 job_count Integer 任务总数。 job_list Array of job_list objects 任务列表。 表5 job_list 参数 参数类型 描述 job_id String 任务ID。 status String 任务状态。 pending:等待中 running:运行中 success:成功 failed:失败 job_type String 任务类型。 job_name String 任务名称。 related_graph String 关联图名称。 begin_time String 任务开始时间,格式为UTC,"yyyy-MM-dd'T'HH:mm:ss"。 end_time String 任务结束时间,格式为UTC,"yyyy-MM-dd'T'HH:mm:ss"。 job_detail job_detail object 只有jobName为ImportGraph时才返回,用于显示导入图详情。 fail_reason String 任务失败原因。 job_progress Double 任务执行进度,预留字段,暂未使用。 表6 job_detail 参数 参数类型 描述 schema_path Array of schema_path objects 元数据路径。 edgeset_path Array of edgeset_path objects 边数据集路径。 vertexset_path Array of vertexset_path objects 点数据集路径。 表7 schema_path 参数 参数类型 描述 path String OBS文件路径。 log String OBS文件导入日志存储文件。 status String OBS文件导入状态。 success:完全成功 failed:完全失败 partFailed:部分成功 cause String 导入失败原因。 total_lines Long 导入总行数。其值为-1时表示当前版本没有返回该字段。 failed_lines Long 导入失败行数。其值为-1时表示当前版本没有返回该字段。 successful_lines Long 导入成功行数。其值为-1时表示当前版本没有返回该字段。 表8 edgeset_path 参数 参数类型 描述 path String OBS文件路径。 log String OBS文件导入日志存储文件。 status String OBS文件导入状态。 success:完全成功 failed:完全失败 partFailed:部分成功 cause String 导入失败原因。 total_lines Long 导入总行数。其值为-1时表示当前版本没有返回该字段。 failed_lines Long 导入失败行数。其值为-1时表示当前版本没有返回该字段。 successful_lines Long 导入成功行数。其值为-1时表示当前版本没有返回该字段。 表9 vertexset_path 参数 参数类型 描述 path String OBS文件路径。 log String OBS文件导入日志存储文件。 status String OBS文件导入状态。 success:完全成功 failed:完全失败 partFailed:部分成功 cause String 导入失败原因。 total_lines Long 导入总行数。其值为-1时表示当前版本没有返回该字段。 failed_lines Long 导入失败行数。其值为-1时表示当前版本没有返回该字段。 successful_lines Long 导入成功行数。其值为-1时表示当前版本没有返回该字段。 状态码: 400 表10 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • URI GET /v2/{project_id}/graphs/jobs 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目编号,用于资源隔离。 表2 Query参数 参数 是否必选 参数类型 描述 end_time 否 String 任务结束日期,当前只支持日期,不支持时间。格式为:yyyy-MM-dd,比如2019-03-27。 graph_name 否 String 关联的图名称。 limit 否 String 每页资源数量的最大值,默认为10。 offset 否 String 本次请求的起始位置,默认为0。 start_time 否 String 任务开始日期,当前只支持日期,不支持时间。格式为:yyyy-MM-dd,比如2019-03-27。 status 否 String 任务状态。取值为: running waiting success failed
  • 响应示例 状态码: 200 成功响应示例(同步任务) Http Status Code: 200 { "results": [ { "columns": ["n"], "data": [ { "row": [ { "occupation": "artist", "gender": "F", "Zip-code": "98133", "userid": 0, "age": "25-34" } ], "meta": [ { "id": "46", "type": "node", "labels": [ "user" ] } ] } ], "stats": { "contains_updates": false, "edges_created": 0, "edges_deleted": 0, "labels_set": 0, "properties_set": 0, "vertices_created": 0, "vertices_deleted": 0 } } ], "errors": [] } 状态码: 200 成功响应示例(异步任务) Http Status Code: 200 { "results": [ { "columns": [ "jobId", "jobType" ], "jobId": "b64a5846-e306-4f87-b0f1-d595ee2a9910", "jobType": 1, "data": [ { "row": [ "b64a5846-e306-4f87-b0f1-d595ee2a9910", 1 ], "meta": [ null, null ] } ] } ], "errors": [] } 状态码: 400 失败响应示例 Http Status Code: 400 { "results": [], "errors": [ { "code": "GES.8904", "message": "Label index in vertices is not found." } ] }
  • 响应参数 表4 响应Body参数说明 参数 类型 说明 results List 一个List,每个元素是一条Cypher语句的返回结果。 errors List 一个List,每个元素包含字符串形式的code和message信息。 表5 参数results中各要素说明 参数 类型 说明 columns List 返回的字段名。 data List 返回的数据值,每个元素代表一条记录。 stats Object 返回的增删改统计信息。 plan Object 如果cypher语句带explain或者profile前缀,则此字段输出查询计划,否则不显示该字段,正常执行查询。profile特性2.3.12版本开始支持。 jobId(2.3.10) String 请求为异步执行模式下,该字段用于输出异步任务id。 jobType(2.3.10) Integer 请求为异步执行模式下,该字段用于输出异步任务的类型。 表6 参数data中各要素说明: 参数 类型 说明 row List 表示具体一行的内容,每个元素对应该行的一个字段,仅当resultDataContents为空或者包含“row”类型时显示。 meta List 表示该行每个字段的类型信息,仅当resultDataContents为空或者包含“row”类型时显示。 graph Object 以“graph”样式返回该行信息,仅当resultDataContents包含“graph”类型时显示。 raw(2.2.27) List 以“raw”样式返回该行信息,仅当resultDataContents包含“raw”类型时显示。 表7 stats各要素响应参数: 参数 类型 说明 contains_updates Boolean 表示本次查询是否有数据修改。 edges_created Integer 创建的边数目。 edges_deleted Int 删除的边数目。 labels_set Integer 设置的label数目。 properties_set Integer 设置的属性数目。 vertices_created Integer 创建的点数目。 vertices_deleted Integer 删除的点数目。
  • 请求示例 执行Cypher查询,Cypher语句为match (n) return n limit 1,返回的结果样式是每个元素对应该行的一个字段。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=execute-cypher-query { "statements": [{ "statement": "match (n) return n limit 1", "parameters": {}, "resultDataContents": ["row"], "includeStats": false }] }
  • 请求参数 表2 Body参数说明 参数 是否必选 类型 说明 statements 是 List statements为一个语句组,包含一到多条语句。其中每个元素的格式如表 statements参数说明。 表3 statements参数说明 参数 是否必选 类型 说明 statement 是 String Cypher语句。 parameters 是 Object Cypher语句参数,在进行参数化查询时使用,默认为空。 如需使用,请参考参数化查询。 resultDataContents 否 String或List 返回的结果样式,样式可设置一个或多个。可选参数有“row”,”graph”, “raw”(2.2.27版本新增)。 includeStats 否 Boolean 控制返回结果是否携带增删改统计信息的开关,若不设置此字段,默认为不携带。 runtime 否 String 执行器类型,可选值为“map”、“slotted” 、“block”,默认为“map”。slotted执行器自2.3.15版本开始支持,block执行器自2.4.1版本开始支持。 executionMode(2.2.23) 否 String 执行模式。同步执行模式填写“sync”,异步执行填写“async”,不写默认同步执行。异步模式下,获取查询结果参见查询Job状态。 limit(2.2.23) 否 Int 该字段仅在异步模式下生效,表示对异步结果的最大结果数限制,默认值为100000。 transactional 否 Bool 控制Cypher请求是否为事务的。默认为false。更多详细Cypher事务介绍参见Cypher事务。 在语句前可以添加explain和profile前缀,用于显示查询计划: explain只显示查询计划,不执行语句;profile显示查询计划,并执行语句。 runtime字段说明:与map执行器相比,slotted执行器在语句的计划生成阶段完成了更多的语句数据流分析,在大部分情况下执行速度更快,占用内存更少。 在异步模式(executionMode参数值为async)下,支持cypher查询结果以csv格式导出到文件(GES版本2.3.4及以上支持该功能),详情请参考导出job返回结果到文件(2.2.1)。目前支持下列对象的返回: 点边单值属性、点边id、分组计数结果等值类型。 对于对象类型,目前的版本暂不支持导出,csv中视作空值处理。 Cypher事务(仅持久化版规格有效): 持久化版规格下Cypher支持事务,用户可以通过设置transactional为true来开启Cypher的事务功能,以保证单条Cypher语句的原子性。对于多条Cypher语句的事务暂不支持。事务的隔离级别为串行化(serializability)。 由于底层存储引擎存在5s的事务时间窗口限制,因此Cypher的事务不可超过5s。对于复杂的查询,比如说多跳,运行时间可能会超过5s,从而触发超时导致提交失败。 使用Cypher的dbms.killQuery过程可以终止Cypher事务(详见Cypher API-函数和过程), 并回滚这条Cypher请求造成的所有改动。
  • 最短路径(shortest_path)(2.1.5) 表1 parameters参数说明 参数 是否必选 说明 类型 取值范围 默认值 source 是 输入路径的起点ID。 String - - target 是 输入路径的终点ID。target取值不能与source取值相同。 String - - weight 否 边上权重。 String 空或字符串。 空:边上的权重、距离默认为“1”。 字符串:对应的边上的属性将作为权重,当某边没有对应属性时,权重将默认为1。 说明: 边上权重应大于0。 - directed 否 是否考虑边的方向。 Boolean true或false。 false timeWindow 否 用于进行时间过滤的时间窗 Object 具体请参见表2。 说明: timeWindow目前不支持带weight的最短路,即timeWindow与weight不可同时输入。 - 表2 timeWindow参数说明 参数 是否必选 说明 类型 取值范围 默认值 filterName 是 用于进行时间过滤的时间属性名称 String 字符串:对应的点/边上的属性作为时间 - filterType 否 在点或边上过滤 String V:点上 E:边上 BOTH:点和边上 BOTH startTime 否 起始时间 String Date型字符串或时间戳 - endTime 否 终止时间 String Date型字符串或时间戳 - 表3 response_data参数说明 参数 类型 说明 path List 最短路径,格式: [vertexId,...] 其中, vertexId:string类型 source String 起点ID target String 终点ID 父主题: 算法API参数参考
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 quotas quotas Object resource类型列表,请求失败时该字段为空。 表4 quotas 参数 参数类型 描述 resources Array of resources objects GES资源配额列表。 表5 resources 参数 参数类型 描述 type String 类型。 取值范围: "graph" "backup" "metadata" available Integer 图的可用个数。 edge_volume Integer 边的可用个数。type为graph时此值有效。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。
  • 响应示例 状态码: 200 成功响应示例 { "quotas" : { "resources" : [ { "type" : "graph", "available" : 10, "edge_volume" : 7300 }, { "type" : "backup", "available" : 100 }, { "type" : "metadata", "available" : 86 } ] } } 状态码: 400 失败响应示例 { "error_code" : "GES.7006", "error_msg" : "An internal error occurs in the underlying service of the graph engine." }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 job_id String 扩容图任务ID。请求失败时字段为空。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见获取Token接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 resize 是 resize object 指的是一个对象,其中包含图规格的类型。 表4 resize 参数 是否必选 参数类型 描述 graph_size_type_index 是 String 图规格类型,当前支持取值为"2","3","4","5"分别代表扩容成千万边、一亿边、十亿边、百亿边规格的图。
  • 请求示例 增量导入图数据,边文件目录为testbucket/demo_movie/edges/,边数据集格式为csv,点文件目录为testbucket/demo_movie/vertices/,点数据集格式为csv。 POST http://Endpoint/v2/{project_id}/graphs/{graph_id}/import-graph { "edgeset_path" : "testbucket/demo_movie/edges/", "edgeset_format" : "csv", "vertexset_path" : "testbucket/demo_movie/vertices/", "vertexset_format" : "csv", "schema_path" : "testbucket/demo_movie/incremental_data_schema.xml", "log_dir" : "testbucket/importlogdir", "parallel_edge" : { "action" : "override", "ignore_label" : true }, "delimiter" : ",", "trim_quote" : "\"", "offline" : false }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 job_id String 执行该异步任务的jobId。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
共100000条