华为云用户手册

  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "f99f60f1-bba6-4cde-bd1a-ff4bdd1fd500000168232" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "Parameter error!", "errorCode": "GES.8005" }
  • 请求参数 表2 请求Body参数 参数 是否必选 类型 说明 exportPath 是 String 转存路径。 obsParameters 是 String OBS认证参数。具体请见表 obsParameters参数说明。 erase 否 Boolean 转存后是否删除原job任务的结果,取值为true或false,默认值为true即表示默认删除job结果并释放资源。 表3 obsParameters参数说明 参数 是否必选 类型 说明 accessKey 是 String ak值。 secretKey 是 String sk值。
  • 响应参数 表4 响应Body参数 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 jobId String 执行该异步任务的jobId。请求失败时,字段为空。 说明: 可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)。
  • 请求示例 执行算法结果转存,返回jobId。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/jobs/{job_id}/export-result { "exportPath": "demo_movie/", "erase": true, "obsParameters": { "accessKey": "xxxx", "secretKey": "xxxx" } } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • 业务面API使用限制 用户访问业务面API有三种方式: 通过E CS 访问,且创建ECS的VPC和创建图选定的VPC是同一个。如果安全组选择的是同一个,则可以直接访问;如果安全组不是同一个,要在创建图的安全组开通该ECS的访问限制,即入方向放开80和443端口,出方向放开所有端口(分别对应支持HTTP和HTTPS访问)。这种场景,API的SERVER_URL为GES Console图详情的内网访问地址或者管理面API查询图详情返回体的"private_ip"字段的值。 通过ECS访问,但创建ECS的VPC和创建图选定的VPC不是同一个。需要对ECS所在的VPC和建图用的VPC创建VPC对等连接,创建VPC对等连接请参考创建对等连接。同时要在创建图的安全组开通该ECS的访问限制,即入方向放开80和443端口,出方向放开所有端口。这种场景,API的SERVER_URL为GES Console图详情的内网访问地址或者管理面API查询图详情返回体的"private_ip"字段的值。 通过公网访问。此时要求创建弹性公网IP(EIP),且要在创建图的安全组开通客户端的访问限制,即入方向放开80和443端口,出方向放开所有端口。这种场景,API的SERVER_URL为GES Console图详情的公网访问地址或者管理面API查询图详情返回体的"publicIp"字段的值,也即用户绑定或者自动创建的弹性公网IP地址。 父主题: 约束与限制
  • 响应参数 表3 响应Body参数 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 jobId String 查询边任务ID。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 jobType String 执行该异步任务的jobType。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "f9987cab-64d3-4b3d-ac43-e91ae0c21bef168127124", "jobType": 0 } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage":"Parameter error!", "errorCode":"GES.8005" }
  • 持久化版 持久化版业务面API包括点操作、边操作、元数据操作、索引操作、HyG数据集管理、HyG算法、算法、图统计、图操作、Job管理、Cypher操作API。 表1 点操作API 名称 起始版本 URL 功能描述 查询点详情 1.0.0 GET/ges/v1.0/{project_id}/graphs/{graph_name}/vertices/detail?vertexIds={vertex_ids} 给定一个点或者一组点的集合,查询这些点的详情,包括Label信息。 批量点查询 1.1.9 POST/ges/v1.0/{project_id}/graphs/{graph_name}/vertices/action?action_id=batch-query 批量查询点的详情。 批量添加点 2.1.16 POST /ges/v1.0/{project_id}/graphs/{graph_name}/vertices/action?action_id=batch-add 批量添加点的操作。 批量删除点 2.1.9 POST /ges/v1.0/{project_id}/graphs/{graph_name}/vertices/action?action_id=batch-delete 根据批量节点ID删除节点。 批量更新点属性 2.1.10 POST /ges/v1.0/{project_id}/graphs/{graph_name}/vertices/properties/action?action_id={actionId} 批量更新点的属性。 表2 边操作API 名称 起始版本 URL 功能描述 查询边详情 1.0.0 GET /ges/v1.0/{project_id}/graphs/{graph_name}/edges/detail?source={sourceVertex}&target={targetVertex}&label={label}&sortKey={sortKey}&sortKeyType={sortKeyType} 根据边的起点、终点以及索引,查询边的详细信息,返回边上的标签和属性等。 批量边查询 1.1.6 POST/ges/v1.0/{project_id}/graphs/{graph_name}/edges/action?action_id=batch-query 批量查询边的详情。 批量添加边 2.1.16 POST /ges/v1.0/{project_id}/graphs/{graph_name}/edges/action?action_id=batch-add 批量添加边的操作。 批量删除边 2.1.9 POST /ges/v1.0/{project_id}/graphs/{graph_name}/edges/action?action_id=batch-delete 根据批量边的起点、终点以及索引,删除这些边。 批量更新边属性 2.1.10 POST /ges/v1.0/{project_id}/graphs/{graph_name}/edges/properties/action?action_id={actionId} 批量更新边属性。 表3 元数据操作API 名称 起始版本 URL 功能描述 添加label 1.1.6 POST /ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels 添加label。 更新label 1.1.7 POST /ges/v1.0/{project_id}/graphs/{graph_name}/schema/labels/{label_name}/properties 更新label。 查询图元数据详情 1.0.0 GET /ges/v1.0/{project_id}/graphs/{graph_name}/schema 查询元数据详情。 查询label 2.2.18 GET /ges/v1.0/{project_id}/graphs/{graph_name}/schema?label={labelName} 查询label。 表4 索引操作API 名称 起始版本 URL 功能描述 新建索引 1.1.6 POST /ges/v1.0/{project_id}/graphs/{graph_name}/indices 新建索引。 删除索引 1.1.6 DELETE /ges/v1.0/{project_id}/graphs/{graph_name}/indices/{indexName} 删除索引。 查询索引 1.1.6 GET /ges/v1.0/{project_id}/graphs/{graph_name}/indices 查询索引。 表5 原生算法API 名称 起始版本 URL 功能描述 执行算法 1.0.0 POST /ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=execute-algorithm 执行原生算法。 表6 图统计API 名称 起始版本 URL 功能描述 查询图概要信息 1.0.0 GET /ges/v1.0/{project_id}/graphs/{graph_name}/summary?label_details={labelDetails} 查询图概要信息。 查询图版本 2.0.0 GET /ges/v1.0/{project_id}/graphs/{graph_name}/version 查询图版本。 表7 图操作API 名称 起始版本 URL 功能描述 导入图 2.1.14 POST /ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id= import-graph 导入图数据 。 清空图 2.1.2 POST /ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=clear-graph 清空图数据。 表8 Job管理API 名称 起始版本 URL 功能描述 查询Job状态 1.0.0 GET/ges/v1.0/{project_id}/graphs/{graph_name}/jobs/{job_id}/status?offset=offset&limit=limit 查询Job状态。 查询job列表 2.2.13 GET /ges/v1.0/{project_id}/graphs/{graph_name}/jobs/status?limit={limit}&offset={offset} 用于查询engine中保存的所有异步任务,返回每个任务的jobId、job状态、原始请求。 表9 Cypher操作API 名称 起始版本 URL 功能描述 Cypher操作API 2.2.16 POST /ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=execute-cypher-query 使用Cypher语句可以查询GES中的数据,并返回结果 表10 交互式事务API 名称 URL 功能描述 创建事务 POST /ges/v1.0/{project_id}/graphs/{graph_name}/transaction 创建事务。 执行事务Cypher POST /ges/v1.0/{project_id}/graphs/{graph_name}/transaction/{commit} 执行事务Cypher。 提交事务 POST /ges/v1.0/{project_id}/graphs/{graph_name}/transaction/{commit}/commit 提交事务。 回滚事务 DELETE /ges/v1.0/{project_id}/graphs/{graph_name}/transaction/{commit} 回滚事务。 表11 运维监控API 名称 URL 功能描述 查看监控指标 GET/ges/v1.0/{project_id}/graphs/{graph_name}/jobs/{job_id}/status?offset=offset&limit=limit 查询Job状态。 查看实时请求 GET /ges/v1.0/{project_id}/graphs/{graph_name}/jobs/status?limit={limit}&offset={offset} 用于查询engine中保存的所有异步任务,返回每个任务的jobId、job状态、原始请求。 父主题: 业务面API概览
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 job_id String 图备份任务ID。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考任务中心API。 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 请求示例 新增元数据,元数据存储地址为devdata/unionsdk/unionsdk_test.xml,不覆盖文件,元数据的名字为unionsdk_test,对元数据的描述为测试。 POST https://{Endpoint}/v2/{project_id}/graphs/metadatas { "metadata_path" : "devdata/unionsdk/unionsdk_test.xml", "is_overwrite" : false, "name" : "unionsdk_test", "description" : "测试", "ges_metadata" : { "labels" : [ { "name" : "friends" }, { "name" : "movie", "properties" : [ { "dataType" : "string", "name" : "ChineseTitle", "cardinality" : "single" }, { "dataType" : "int", "name" : "Year", "cardinality" : "single" }, { "dataType" : "string", "name" : "Genres", "cardinality" : "set" } ] }, { "name" : "user", "properties" : [ { "dataType" : "string", "name" : "ChineseName", "cardinality" : "single" }, { "typeName1" : "F", "typeName2" : "M", "typeNameCount" : "2", "dataType" : "enum", "name" : "Gender", "cardinality" : "single" }, { "typeName1" : "Under 18", "typeName2" : "18-24", "typeName3" : "25-34", "typeName4" : "35-44", "typeNameCount" : "7", "dataType" : "enum", "name" : "Age", "typeName5" : "45-49", "typeName6" : "50-55", "cardinality" : "single", "typeName7" : "56+" }, { "dataType" : "string", "name" : "Occupation", "cardinality" : "single" }, { "dataType" : "char array", "name" : "Zip-code", "maxDataSize" : "12", "cardinality" : "single" } ] }, { "name" : "rate", "properties" : [ { "dataType" : "int", "name" : "Score", "cardinality" : "single" }, { "dataType" : "date", "name" : "Datetime", "cardinality" : "single" } ] } ] } }
  • 响应参数 状态码: 200 表6 响应Body参数 参数 参数类型 描述 id String 元数据ID。 name String 元数据名字。 状态码: 400 表7 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 关联路径(n_paths)(1.1.2) 表1 parameters参数说明 参数 是否必选 说明 类型 取值范围 默认值 source 是 输入路径的起点ID。 String - - target 是 输入路径的终点ID。 String - - directed 否 是否考虑边的方向。 Boolean true或false false n 否 路径个数。 Integer [1,100] 10 k 否 层数。 Integer [1,10] 5 表2 response_data参数说明 参数 类型 说明 paths List source节点和target节点之间的路径,格式: [[path1],[path2]] 其中,路径(path)的格式可参考:最短路径(Shortest Path)。 paths_number Integer 路径个数 source String 起点ID target String 终点ID 父主题: 算法API参数参考
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122", "jobType": 1 } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage":"graph [demo] is not found", "errorCode":"GES.8402" }
  • 请求参数 表1 Body参数说明 参数 是否必选 类型 说明 algorithmName 是 String 算法名字。 取值范围: connected_component。 kcore。 parameters 是 JSON 算法参数描述。详情请参考: connected_component算法。 kcore算法。 subgraphCreator 是 Object 子图参数。详情请参考subgraphCreator参数说明。 表2 subgraphCreator参数说明 参数 是否必选 类型 说明 name 否 String 子图生成器类型。当前支持的取值为filtered。 parameters 是 JSON 子图生成器的名字不同,parameters格式不同。 表3 name=filtered时,parameters参数说明 参数 是否必选 类型 说明 vertex_filter 否 String 点过滤条件。 edge_filter 否 String 边过滤条件。
  • 响应参数 表4 响应Body参数说明 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,字段为空。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 jobType Integer 任务类型。请求失败时,字段为空。
  • 请求示例 在生成的子图上执行特定算法,算法名称为connected_component,子图生成器类型为filtered。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/subgraphs/action?action_id=execute-algorithm { "algorithmName":"connected_component", "subgraphCreator": { "name": "filtered", "parameters": { "edge_filter": { "property_filter": { "leftvalue": { "label_name": "labelName" }, "predicate": "=", "rightvalue": { "value": "PHYSICAL_LINK" } } } } }, "parameters":{ "num_thread":4 } }
  • 响应参数 参数 类型 说明 errorMessage String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。 errorCode String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,字段为空。 说明: 可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)。 cluster_coefficient Double 聚类系数。 vertex_cluster_coefficient List 各节点对应的聚类系数,格式: [{vertexId: cluster_coefficient },...] 其中, vertexId: string类型。 cluster_coefficient: double类型。
  • 请求示例 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"cluster_coefficient", "parameters": { "statistics":"false", "directed":"false" } } SERVER_URL:图的访问地址,取值请参考业务面API使用限制。
  • 请求参数 表2 请求Body参数 参数 是否必选 类型 说明 algorithmName 是 String 算法名字。 parameters 否 parameters Object 算法参数。 表3 parameters 参数 是否必选 类型 说明 statistics 否 Boolean 是否仅输出总的统计量结果,取值为true或false,默认取值为true。 true:仅输出总的平均聚类系数。 false:额外输出各点对应聚类系数。 directed 否 Boolean 是否看作有向图进行计算,取值为true或false,默认取值为false。 true:有向图。 false:无向图。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122" } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorMessage": "Parameter error!", "errorCode": "GES.8005" }
  • 请求示例 POST https://{Endpoint}/v1.0/{project_id}/graphs { "graph":{ "name":"demo", "graphSizeTypeIndex": "1", "arch":"x86_64", "vpcId":"2d8af840-fd57-4e3b-a8f1-cda0f55ccd99", "subnetId":"dc018ec3-67d1-46c9-b2fc-19d83367f4e2", "securityGroupId":"11d27338-8649-4076-8579-5ebc1a60f79e", "publicIp":{ "publicBindType":"bind_existing", "eipId":"30ef2d58-08a9-4481-b526-b2cbe67d020d" }, "enableMultiAz":false, "sys_tags": [{"key": "_sys_enterprise_project_id", "value": "54c0b33c-8627-462f-948e-bae08c0887b4"}], "enableRBAC":false, "enableFullTextIndex" : false, "cryptAlgorithm": "generalCipher", "enableHttps": "false" } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取方法请参见 获取Token 接口,响应消息头中X-Subject-Token的值即为Token。 表3 请求Body参数 参数 是否必选 参数类型 描述 upgrade_version 是 String 升级到的版本,必须大于当前图版本。 force_upgrade 否 Boolean 是否强制升级。取值为true或false,默认为false。 true:强制升级,会中断升级时已经在处理的任务,比如运行算法长任务,可能会造成少量请求失败。 false:非强制升级,会等待已经运行的业务,升级过程可能较慢。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 job_id String 执行该异步任务的jobId。 说明: 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 error_msg String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。
  • 响应参数 参数 类型 说明 errorMessage String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。 errorCode String 系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。 jobId String 执行算法任务ID。请求失败时,字段为空。 说明: 可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)。 closeness List 各节点紧密中心度值。 [{vertexId : closenessValue },...], 其中, vertexId:string类型。 closenessValue:double类型。
  • 请求示例 POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"closeness", "parameters":{ "sources":"1,2,3" } } 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" }
  • 响应参数 表4 响应Body参数说明 参数 类型 说明 errorMessage String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误信息。 errorCode String 系统提示信息。 执行成功时,字段可能为空。 执行失败时,用于显示错误码。 jobId String 执行该异步任务的jobId。 可以查询jobId查看任务执行状态、获取返回结果,详情参考Job管理API。 jobType Integer 任务类型。请求失败时,该字段为空。
  • 响应示例 状态码: 200 成功响应示例 Http Status Code: 200 { "jobId": "b7f3ea8d-8a22-40ea-8751-6bcad5fc38b6000003836", "jobType": 4 } 状态码: 400 失败响应示例 Http Status Code: 400 { "errorCode": "GES.8013", "errorMessage": "graph [movie2] is not found" }
  • 请求示例 进行导入图操作,边文件目录为testbucket/demo_movie/edges/,边数据集格式为csv,点文件目录为testbucket/demo_movie/vertices/,点数据集格式为csv,新增数据的元数据文件OBS路径为testbucket/demo_movie/incremental_data_schema.xml,日志存放目录为testbucket/importlogdir。 POST http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/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, "obsParameters": { "accessKey": "xxxxxx", "secretKey": "xxxxxx" } }
  • 响应示例 状态码: 200 OK { "graphCount": 2, "graphs": [ { "id": "f1529b88-c958-493e-8452-fccfe932cde1", "name": "demo", "regionCode": "cn-north-1", "azCode": "cn-north-1a", "schemaPath": [ { "path": "ges-graphs/demo_movie/schema.xml", "jobId": "ff80808167bb90340167bc7445670428", "status": "success" } ], "edgesetPath": [ { "path": "ges-graphs/demo_movie/edge.csv", "jobId": "ff80808167bb90340167bc7445670428", "status": "success" } ], "vertexsetPath": [ { "path": "", "jobId": "ff80808167bb90340167bc7445670428", "status": "success" } ], "status": "200", "graphSizeTypeIndex": "1", "vpcId": "2d8af840-fd57-4e3b-a8f1-cda0f55ccd99", "subnetId": "dc018ec3-67d1-46c9-b2fc-19d83367f4e2", "securityGroupId": "11d27338-8649-4076-8579-5ebc1a60f79e", "created": "2018-07-23T04:09:44", "updated": "2018-07-23T04:09:44", "privateIp": "192.168.0.4", "publicIp": "49.4.81.183", "dataStoreVersion": "1.0.5", "arch": "x86_64", "enableFullTextIndex" : false }, { "id": "53205529-026b-455a-9e07-228fae4b12b9", "name": "ges_c5de", "regionCode": "cn-north-1", "azCode": "cn-north-1a", "schemaPath": [ { "path": "ges-graphs/demo_movie/schema.xml", "jobId": "ff80808167bb90340167bc7445670428", "status": "success" } ], "edgesetPath": [ { "path": "ges-graphs/demo_movie/edge.csv", "jobId": "ff80808167bb90340167bc7445670428", "status": "success" } ], "vertexsetPath": [ { "path": "", "jobId": "ff80808167bb90340167bc7445670428", "status": "success" } ], "status": "200", "graphSizeTypeIndex": "2", "vpcId": "2d8af840-fd57-4e3b-a8f1-cda0f55ccd99", "subnetId": "dc018ec3-67d1-46c9-b2fc-19d83367f4e2", "securityGroupId": "11d27338-8649-4076-8579-5ebc1a60f79e", "created": "2018-07-18T13:30:16", "updated": "2018-07-18T13:30:16", "privateIp": "192.168.0.168", "dataStoreVersion": "1.0.5", "arch": "aarch64", "enableFullTextIndex" : false } ] }
共100000条
提示

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