华为云用户手册

  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "Parameter error!", "errorCode": "GES.8005" }
  • 请求参数 表2 请求Body参数 参数 是否必选 类型 说明 algorithmName 是 String 算法名字。 parameters 否 parameters Object 算法参数。 表3 parameters 参数 是否必选 类型 说明 convergence 否 Double 收敛精度,取值范围为(0,1),默认值为0.00001。 max_iterations 否 Integer 最大迭代次数。API调用限制为[1,2147483647],前端调用限制为[1,2000],默认值为100。 weight 否 String 边上权重。取值为:空或字符串,当图中的边没有配置该属性时,算法会报错。 空:边上的权重、距离默认为1。 字符串:对应的边上的属性将作为权重。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "9874990c-b2c5-4e8b-96f3-10a9c46fe3a6000003836", "jobType": 1 } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorCode": "GES.8011", "errorMessage": "graph [movie2] is not found" }
  • 请求参数 表2 Body参数说明 参数 是否必选 类型 说明 graphExportPath 是 String 图的导出OBS路径。 edgeSetName 是 String 导出边数据集名称。 vertexSetName 是 String 导出点数据集名称。 schemaName 是 String 导出元数据文件名。 paginate(2.3.11) 否 Object 分页相关参数,自2.3.11版本起导出图默认分页导出。 obsParameters 是 String Obs相关参数。 accessKey 是 String 用户的accessKey。 secretKey 是 String 用户的secretKey。 表3 参数paginate中各要素说明 参数 是否必选 类型 说明 enable 否 Bool 是否开启分页,默认为true。 不需要开启分页时,需输入值为false。 rowCountPerFile 否 Int 按页导出时每个文件的最大行数,默认最大为10000000。 numThread 否 Int 按页导出时的并行线程数,默认为8。 maxSizePerFile 否 Int 按页导出时每个文件大小的最大值,单位是byte,默认不超过导入时最大文件约束。
  • 请求示例 请求示例1,进行导出图操作,图的导出OBS路径为demo_movie/,导出边数据集名称为set_edge,导出点数据集名称为set_vertex,导出元数据文件名为set_schema.xml。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=export-graph { "graphExportPath": "demo_movie/", "edgeSetName": "set_edge", "vertexSetName": "set_vertex", "schemaName": "set_schema.xml", "paginate":{ "numThread":16, "rowCountPerFile":1000000 }, "obsParameters": { "accessKey": "xxxxxx", "secretKey": "xxxxxx" } } 请求示例2 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=export-graph { "graphExportPath": "demo_movie/", "edgeSetName": "set_edge.csv", "vertexSetName": "set_vertex.csv", "schemaName": "set_schema.xml", "obsParameters": { "accessKey": "xxxxxx", "secretKey": "xxxxxx" } }
  • 响应参数 表4 响应Body参数说明 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 jobId String 执行该异步任务的jobId。 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 jobType Integer 任务类型。请求失败时,该字段为空。
  • 响应参数 参数 类型 说明 errorMessage String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。 errorCode String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,字段为空。 说明: 可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)。 batch_paths List 批量路径,格式: [paths_element,...] 其中, paths_element,表示从某个source到某个target的路径,格式如: { "paths": [ [ "Alice", "Janet", "Sue", "Serena", "Bonnie" ] ], "source": "Alice", "target": "Bonnie" }, paths_number Integer 路径个数。
  • 请求参数 表2 请求Body参数 参数 是否必选 类型 说明 algorithmName 是 String 算法名字。 parameters 是 parameters Object 算法参数。 表3 parameters 参数 是否必选 类型 说明 sources 是 String 起点ID集合,多个节点ID以逗号分隔(即,标准 CS V输入格式),个数不大于100000。 targets 是 String 终点ID集合,多个节点ID以逗号分隔(即,标准CSV输入格式),个数不大于100000。 directed 否 Boolean 是否考虑边的方向。取值为true或false,默认值为false。 说明: 当数据集不包含inedge时,若directed=true,选择一个不依赖于Inedge的算法实现版本计算输出,性能会下降;当directed=false时,会报错。 cutoff 否 Integer 最大长度,取值范围为[1,100],默认值为6。 path_limit 否 Integer 路径数量上限,取值范围是[1,1000000],默认值为1000000。
  • 请求示例 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"all_pairs_shortest_paths", "parameters":{ "sources":”1,2”, "targets":”5,6”, "directed":true, "cutoff":3, "path_limit":10000 } } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "Parameter error!", "errorCode": "GES.8005" }
  • 响应示例 状态码: 200 成功响应示例 { "node_metrics": [ { "overview": { "network_io_rate": 8.51, "role": "ges-dispatch", "disk_io_write": 84.74, "mem_cached": 1.99, "cpu_usage_usr": 2.4, "cpu_usage_sys": 0.72, "disk_io_read": 3.99, "ges_instance_name": "ges_fdb_old-ges-dispatch-cn-1-1", "disk_used": 5.75, "swap_total": 0.0, "mem_buffer": 251.93, "disk_available": 244.15, "cpu_iowait": 0.04, "cpu_idle": 96.83, "disk_io": 88.73, "mem_total": 31.19, "instance_id": "e8d67304-6107-4935-9fe3-6cabf3d32adc", "mem_usage": 9.69, "disk_total": 249.9, "host_stat": "200", "mem_free": 25.94, "swap_free": 0.0, "cpu_usage": 3.12, "disk_usage_avg": 2.3, "work_ip": "172.16.29.231", "host_name": "ges_fdb_old-ges-dispatch-cn-1-1" }, "disk_details": [ { "svctm": 0.0, "total": 50.0, "util": 0.07, "write_rate": 65.59, "disk_name": "vda", "disk_type": "system", "used_percentage": 5.54, "available": 47.23, "await": 15.7, "read_rate": 3.84, "used": 2.77 }, { "svctm": 0.0, "total": 99.95, "util": 0.09, "write_rate": 18.14, "disk_name": "vdb", "disk_type": "data", "used_percentage": 2.79, "available": 97.17, "await": 40.31, "read_rate": 0.06, "used": 2.78 }, { "svctm": 0.0, "total": 99.95, "util": 0.11, "write_rate": 1.01, "disk_name": "vdc", "disk_type": "log", "used_percentage": 0.19, "available": 99.76, "await": 2.14, "read_rate": 0.09, "used": 0.19 } ], "network_details": [ { "send_rate": 0.08, "packets_drop": 0, "packets_recv": 698597, "packets_send": 108397, "interface_name": "eth0", "recv_rate": 0.06, "status": 1 }, { "send_rate": 0.0, "packets_drop": 0, "packets_recv": 25766, "packets_send": 21486, "interface_name": "eth1", "recv_rate": 0.0, "status": 1 }, { "send_rate": 5.33, "packets_drop": 0, "packets_recv": 2012566, "packets_send": 3091470, "interface_name": "eth2", "recv_rate": 3.04, "status": 1 } ] } ], "performance_metrics": { "tomcat_connections_usage": 0.14, "network_io_rate": 10847.12, "graph_name": "ges_fdb_old", "disk_io_rate": 115.34, "qps": 0, "storage_usage": 0.63, "disk_usage": 2.98, "memory_usage": 29.92, "cpu_usage": 5.75, "jvm_heap_usage": 68.31 }, "project_id": "3571fe9ff5dc415d99adef84b6488e3b", "name": "ges_fdb_old", "id": "3518bb16-74b3-4259-a1d0-f38c2836cd11", "timestamp": 1733880320828 } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "graph ges_fdb is not exist.", "errorCode": "GES.8000" }
  • URI GET /ges/v1.0/{project_id}/graphs/{graph_name}/om/metrics?real_time=&with_performance_metrics=true 表1 路径参数 参数 是否必选 类型 说明 project_id 是 String 项目ID,获取方法请参见获取项目ID。 graph_name 是 String 图名称。 表2 Query参数 参数 是否必选 参数类型 描述 real_time 否 Boolean 是否查询实时监控指标,取值为true或者false, 默认为false。 false:会查询图实例2分钟内的指标。 true:会查询实时监控指标,请求响应在3-5秒之间。 with_performance_metrics 否 Boolean 是否查询性能指标,会返回图实例性能指标和各个节点的指标。取值为true或者false,默认为true,如果设置为false,只返回节点的指标,响应时间会减少1-2秒。
  • 响应参数 表3 响应Body参数说明 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 project_id String 项目ID。 id String 图ID。 name String 图名称。 timestamp long 当前时间戳。 node_metrics Array of objects 节点指标。 performance_metrics Object 性能指标。 表4 node_metrics参数说明 参数 类型 说明 overview Object 节点总览。 disk_details Array of objects 节点磁盘详情。 network_details Array of objects 节点网络详情。 表5 overview参数说明 参数 类型 说明 ges_instance_name String 节点名称。 instance_id String 节点ID。 work_ip String 节点ip。 role String 节点角色。 cpu_usage Double CPU使用率。 cpu_usage_usr Double CPU用户态使用率。 cpu_usage_sys Double CPU内核态使用率。 cpu_iowait Double CPU IO等待率。 cpu_idle Double CPU空闲率。 mem_total Double 内存总量,单位为GB。 mem_usage Double 内存使用量,单位为GB。 mem_free Double 内存可用量,单位为GB。 mem_cached Double 内存缓存量,单位为GB。 mem_buffer Double 内存缓冲量,单位为GB。 disk_total Double 磁盘总容量,单位为GB。 disk_usage_avg Double 磁盘平均使用率。 disk_used Double 磁盘使用量,单位为GB。 disk_available Double 可用磁盘总量,单位为GB。 disk_io_read Double 节点磁盘读速率,单位为KB/S。 disk_io_write Double 节点磁盘写速率,单位为KB/S。 disk_io Double 节点磁盘总读写速率。 swap_total Double 节点swap盘总量。 swap_free Double 节点swap盘剩余量。 network_io_rate Double 节点网路IO速率,单位为KB/S。 host_stat Integer 节点状态。 host_name String 节点名称。 表6 disk_details参数说明 参数 类型 说明 disk_name String 磁盘名称。 disk_type String 磁盘类型。 total Double 磁盘总量。 available Double 磁盘可用量。 used Double 磁盘使用量。 used_percentage Integer 磁盘使用百分比。 svctm Long 磁盘IO服务时间,时间为ms。 await Long 磁盘IO等待时间,时间为ms。 util Double 磁盘IO使用率。 write_rate Double 磁盘读速率。 read_rate Double 磁盘写速率。 表7 network_details参数说明 参数 类型 说明 status Integer 网卡状态。 interface_name String 网卡名称。 packets_recv Long 接受包个数。 packets_send Long 发送包个数。 packets_drop Long 丢弃包个数。 send_rate Double 发送速率,单位为KB/S。 recv_rate Double 接收速率,单位为KB/S。 表8 performance_metrics参数说明 参数 类型 说明 cpu_usage Double CPU使用率。 memory_usage Double 内存使用率。 disk_usage Double 磁盘平均使用率。 disk_io_rate Double 磁盘IO速率。 network_io_rate Double 网络IO速率。 tomcat_connections_usage Double tomcat连接数使用率。 qps Long 每秒请求个数。 storage_usage Double 图存储使用率。 graph_name String 图实例名称。 jvm_heap_usage Double java堆内存使用率。
  • 请求示例 执行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 }] }
  • 响应示例 状态码: 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-d595ee2a9990", "jobType": 1, "data": [ { "row": [ "b64a5846-e306-4f87-b0f1-d595ee2a9990", 1 ], "meta": [ null, null ] } ] } ], "errors": [] } 状态码: 400 失败响应示例 Http Status Code: 400 { "results": [], "errors": [ { "code": "GES.8904", "message": "Label index in vertices is not found." } ] }
  • 请求参数 表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.14版本开始支持。 block执行器自2.4.1版本开始支持。 与map执行器相比,slotted执行器和block执行器在语句的计划生成阶段完成了更多的语句数据流分析,在大部分情况下执行速度更快,占用内存更少。 executionMode(2.2.23) 否 String 执行模式。同步执行模式填写“sync”,异步执行填写“async”,不写默认同步执行。异步模式下,获取查询结果参见查询Job状态。 limit(2.2.23) 否 Int 该字段仅在异步模式下生效,表示对异步结果的最大结果数限制,默认值为100000。 在语句前可以添加explain或profile前缀,用于显示查询计划: explain只显示查询计划,不执行语句。explain前缀2.2.20版本开始支持。 profile显示查询计划,并执行语句。profile前缀2.3.12版本开始支持。 在异步模式(executionMode参数值为async)下,支持cypher查询结果以csv格式导出到文件(GES版本2.3.4及以上支持该功能),详情请参考导出job返回结果到文件(2.2.1)。目前支持下列对象的返回: 点边单值属性、点边id、分组计数结果等值类型。 对于对象类型,目前的版本暂不支持导出,csv中视作空值处理。
  • 响应参数 表4 响应Body参数说明 参数 类型 说明 results List 每个元素是一条Cypher语句的返回结果。 errors 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 Integer 删除的边数目。 labels_set Integer 设置的label数目。 properties_set Integer 设置的属性数目。 vertices_created Integer 创建的点数目。 vertices_deleted Integer 删除的点数目。
  • 请求示例 更新点的属性值,属性Age的值为under 18,属性Gender的值为F。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/vertices/Lily/properties/action?action_id={actionId} { "properties":{ "Age":[ "under 18" ], "Gender":[ "F" ] } } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • URI POST /ges/v1.0/{project_id}/graphs/{graph_name}/vertices/{vertex_id}/properties/action?action_id={actionId} 表1 路径参数 参数 是否必选 类型 说明 project_id 是 String 项目ID。获取方法请参见获取项目ID。 graph_name 是 String 图名称。 vertex_id 是 String 点ID。 actionId 是 String 操作符。 update更新该属性的值 add 添加属性的值。当属性的cardinality为single时,其操作与update一致;当cardinality为list或set时,意为向集合中添加值。 del 删除属性的值
  • 请求示例 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"personalrank", "parameters":{ "source":"lili", "alpha":0.85, "convergence":0.00001, "max_iterations":1000 } } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "Parameter error!", "errorCode": "GES.8005" }
  • 响应参数 参数 类型 说明 errorMessage String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。 errorCode String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,字段为空。 说明: 可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)。 source String 起点id。 personalrank List 各节点的personalrank值,格式:[{vertexId: rankValue},...]。其中: vertexId:string类型。 rankValue:double类型。
  • 功能介绍 根据输入参数,执行personalrank算法。 PersonalRank算法又称Personalized PageRank算法。该算法继承了经典PageRank算法的思想,利用图链接结构来递归计算各节点的重要性。与PageRank算法不同的是,为了保证随机行走中各节点的访问概率能够反映出用户的偏好,PersonalRank算法在随机行走中的每次跳转会以(1-alpha)的概率返回到source节点。
  • 请求参数 表2 请求Body参数 参数 是否必选 类型 说明 algorithmName 是 String 算法名字。 parameters 是 parameters Object 算法参数。 表3 parameters 参数 是否必选 类型 说明 source 是 String 节点id。 alpha 否 Double 权重系数(又称阻尼系数),取值范围为(0,1),默认值为0.85。 convergence 否 Double 收敛精度,取值范围为(0,1),默认值为0.00001。 max_iterations 否 Integer 最大迭代次数。API调用限制为[1,2147483647],前端调用限制为[1,2000],默认值为1000。 directed 否 Boolean 是否考虑边的方向,取值为true或false,默认值为true。
  • 请求示例 更新label,label的名称为book,label一共有三个待更新的属性。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/book/properties { "properties": [ { "property": { "name": "Title", "cardinality": "single", "dataType": "string" } }, { "property": { "name": "Version", "cardinality": "single", "dataType": "string" } }, { "property": { "name": "Category", "typeName1": "science", "typeName2": "literature", "typeNameCount": "2", "dataType": "enum" } } ] } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • URI POST /ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/{label_name}/properties 表1 路径参数 参数 是否必选 类型 说明 project_id 是 String 项目ID。获取方法请参见获取项目ID。 graph_name 是 String 图名称。 label_name 是 String Label名称。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "result": "success" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "Graph [cb1ed5491f7f466e8947ff09c06ca08c-ges_hyg1] does not exist, please check projectId and graphName.", "errorCode": "GES.8000", "result": "failed" }
  • 请求参数 表2 Body参数说明 参数 是否必选 类型 说明 policy 否 String 指定图切分策略,目前支持oec策略,默认是oec策略。 inEdge 否 Boolean 图是否包含入边,默认为false,设置为true会影响数据同步性能。 对于部分算法,如果不包含入边,算法可能会性能下降或者报错,例如算法:shortest_path、sssp、k_hop,详情请查阅对应的算法参数说明。
  • 响应参数 表3 响应Body参数说明 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 result String 执行结果。 成功时,result值为success。 失败时,result值为failed。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见 获取Token 接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 metadataPath 是 String 元数据存储地址。 name 是 String 元数据的名字。 description 否 String 对元数据的描述。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全