Updated on 2024-05-20 GMT+08:00

Betweenness Centrality

Function

This API is used to execute the Betweenness Centrality algorithm based on input parameters.

Betweenness centrality is a measure of centrality in a graph based on shortest paths. This algorithm calculates shortest paths that pass through a vertex.

URI

POST /ges/v1.0/{project_id}/hyg/{graph_name}/algorithm
Table 1 URI parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For how to obtain the project ID, see Obtaining a Project ID.

graph_name

Yes

String

Graph name

Request Parameters

Table 2 Request body parameters

Parameter

Mandatory

Type

Description

algorithmName

Yes

String

Algorithm name

parameters

Yes

parameters Object

Algorithm parameters

Table 3 parameters

Parameter

Mandatory

Type

Description

directed

No

Boolean

Whether to consider the edge direction. The value can be true or false. The default value is true.

weight

No

String

Weight of an edge. The value can be empty or a string. If an edge does not have the corresponding property, the weight is 1 by default.

  • Empty: The default weight and distance of edges are 1.
  • String: The property of the corresponding edge is used as the weight.
NOTE:
  1. Default handling of missing property values is not support. An error will be reported directly.
  2. HyG supports default handling of missing properties.

seeds

No

String

Vertex ID. The number of vertices cannot be greater than 100,000.

If the graph is large, precise betweenness calculation can be slow. You can set seeds to the sampling vertices for approximate calculation. The more seeds vertices, the closer results to the precise calculation.

k

No

Integer

Number of samples. The value is less than or equal to 100000.

If the graph is large, betweenness calculation can be slow. You can set k to randomly select k sampling vertices from the graph. The larger value, the closer results to the accurate calculation.

When you perform approximate betweenness calculation, either seeds or k must be specified. If both are specified, seeds vertices will be sampled by default and k will be ignored.

Response Parameters

Parameter

Type

Description

errorMessage

String

System prompt. If execution succeeds, this parameter may be left blank. If the execution fails, this parameter is used to display the error message.

errorCode

String

System prompt. If execution succeeds, this parameter may be left blank. If the execution fails, this parameter is used to display the error code.

jobId

String

ID of the algorithm execution job. This parameter is left blank when the request fails.

NOTE:

You can use the returned job ID to view the task execution status and obtain the algorithm return result. For details, see Querying Job Status on the Service Plane (1.0.0).

jobType

Integer

Job type. This parameter is left blank when the request fails.

Example Request

POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm  
 { 
  "algorithmName":"betweenness", 
  "parameters":{ 
         "seeds":"1,2", 
         "directed":true
  } 
 }

SERVER_URL: Address for accessing a graph. For details about its value, see Using Service Plane APIs.

Example Response

Status code: 200

Example response for a successful request

Http Status Code: 200
{  
"jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122",
"jobType": 1
}

Status code: 400

Example response for a failed request

Http Status Code: 400
{
"errorMessage":"graph [demo] is not found",
"errorCode":"GES.8402"
}

Status Codes

Return Value

Description

400 Bad Request

Request error.

401 Unauthorized

Authorization failed.

403 Forbidden

No operation permissions.

404 Not Found

No resources found.

500 Internal Server Error

Internal server error.

503 Service Unavailable

Service unavailable.