更新时间:2025-03-05 GMT+08:00
带过滤的n_paths算法(filtered_n_paths)
概述
带过滤的n_paths算法是给定起始点source、目的点target、跳数k、路径数n、过滤条件filters,找出source和target间不多于n条的k跳无环路径。
- 算法名称:带过滤的n_paths
- 英文名称:filtered_n_paths
应用场景
任意网络。
请求参数
|
字段名 |
是否必选 |
类型 |
说明 |
|---|---|---|---|
|
algorithmName |
是 |
String |
对应值为“filtered_n_paths”。 |
|
parameters |
是 |
Json格式 |
具体格式见表parameters参数说明。 |
|
filters |
是 |
JSon Array |
过滤条件列表,数组的每个元素分别对应每一层要做的查询和过滤条件。具体格式见表filters元素格式。 |
|
参数 |
是否必选 |
说明 |
类型 |
取值范围 |
默认值 |
|---|---|---|---|---|---|
|
source |
是 |
起始点 |
String |
图内部点 |
无 |
|
target |
是 |
目标点 |
String |
图内部点 |
无 |
|
k |
是 |
跳数 |
Int |
[2,6] |
2 |
|
n |
是 |
路径数 |
Int |
[1,1000] |
1 |
|
参数 |
是否必选 |
类型 |
取值范围 |
默认值 |
说明 |
|---|---|---|---|---|---|
|
edge_filter |
否 |
json |
无 |
无 |
全图查询边时的过滤条件。 |
|
vertex_filter |
否 |
json |
无 |
无 |
全图查询点时的过滤条件。 |
|
字段名 |
是否必选 |
类型 |
说明 |
|---|---|---|---|
|
path_length |
是 |
int |
路径长度。 |
|
paths_number |
是 |
int |
路径数量。 |
|
paths |
是 |
JsonArray |
路径集合,["111","119","58","96","82","57","56"]。 |
|
source |
是 |
String |
起始点。 |
|
target |
是 |
String |
目标点。 |
请求示例
POST http://IP:PORT/ges/v1.0/{project_id}/graphs/{graph_name}/action?action_id=execute-algorithm
{
"algorithmName": "filtered_n_paths",
"filters": [
{
"edge_filter":
{
"property_filter":
{
"leftvalue":
{
"label_name": "labelName"
},
"predicate": "=",
"rightvalue":
{
"value": "default"
}
}
}
}],
"parameters":
{
"k": 6,
"n": 100,
"source": "111",
"target": "56"
}
}
返回示例
{
"jobId": "b14f6380-f115-46ab-990e-9a76a984ebd2154236181",
"jobType": 2
}
查询任务示例
GET http://IP:PORT/ges/v1.0/{project_id}/graphs/{graph_name}/jobs/{jobId}/status
任务返回示例
{
"data": {
"outputs": {
"data_return_size": 3,
"paths": [
[
"111",
"119",
"58",
"96",
"82",
"57",
"56"
],
[
"111",
"119",
"58",
"61",
"76",
"57",
"56"
],
[
"111",
"119",
"58",
"79",
"76",
"57",
"56"
]
],
"runtime": 0.000308,
"source": "111",
"path_length": 6,
"data_offset": 0,
"paths_number": 3,
"data_total_size": 3,
"target": "56"
}
},
"status": "success"
}
父主题: 算法API参数参考