(root@nebula) [amdbconf]> explain MATCH (v:model_conf)-[e:model_conf_tag]->(v:model_conf) WHERE e.name starts with "key902-0" RETURN e LIMIT 1000;
Execution succeeded (time spent 7.382ms/128.394736ms)
Execution Plan (optimize time 1060 us)
-----+----------------+--------------+----------------+-------------------------------------------------------
| id | name | dependencies | profiling data | operator info |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 23 | Project | 21 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "e" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Limit_9" |
| | | | | } |
| | | | | inputVar: __Limit_21 |
| | | | | columns: [ |
| | | | | "$-.e[0]" |
| | | | | ] |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 21 | Limit | 17 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "v", |
| | | | | "e", |
| | | | | "v" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Limit_21" |
| | | | | } |
| | | | | inputVar: __Filter_10 |
| | | | | offset: 0 |
| | | | | count: 1000 |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 17 | AppendVertices | 20 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "v", |
| | | | | "e", |
| | | | | "v" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Filter_10" |
| | | | | } |
| | | | | inputVar: __Filter_16 |
| | | | | space: 29 |
| | | | | dedup: true |
| | | | | limit: -1 |
| | | | | filter: model_conf._tag IS NOT EMPTY |
| | | | | orderBy: [] |
| | | | | src: none_direct_dst($-.e,$-.v) |
| | | | | props: [ |
| | | | | { |
| | | | | "props": [ |
| | | | | "_tag" |
| | | | | ], |
| | | | | "tagId": 30 |
| | | | | } |
| | | | | ] |
| | | | | exprs: |
| | | | | vertex_filter: |
| | | | | if_track_previous_path: true |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 20 | Filter | 24 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "v", |
| | | | | "e" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Filter_16" |
| | | | | } |
| | | | | inputVar: __Traverse_19 |
| | | | | condition: ($-.v._vid==none_direct_dst($-.e,$-.v)) |
| | | | | isStable: false |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 24 | Traverse | 1 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "v", |
| | | | | "e" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Traverse_19" |
| | | | | } |
| | | | | inputVar: __IndexScan_1 |
| | | | | space: 29 |
| | | | | dedup: true |
| | | | | limit: -1 |
| | | | | filter: (model_conf_tag.name STARTS WITH "key902-0") |
| | | | | orderBy: [] |
| | | | | src: $_vid |
| | | | | edgeTypes: [] |
| | | | | edgeDirection: OUT_EDGE |
| | | | | vertexProps: [ |
| | | | | { |
| | | | | "props": [ |
| | | | | "name", |
| | | | | "status", |
| | | | | "groupid", |
| | | | | "iconname", |
| | | | | "content", |
| | | | | "_tag" |
| | | | | ], |
| | | | | "tagId": 30 |
| | | | | } |
| | | | | ] |
| | | | | edgeProps: [ |
| | | | | { |
| | | | | "props": [ |
| | | | | "_src", |
| | | | | "_type", |
| | | | | "_rank", |
| | | | | "_dst", |
| | | | | "name", |
| | | | | "value" |
| | | | | ], |
| | | | | "type": 33 |
| | | | | } |
| | | | | ] |
| | | | | statProps: |
| | | | | exprs: |
| | | | | random: false |
| | | | | steps: 1..1 |
| | | | | vertex filter: |
| | | | | edge filter: |
| | | | | if_track_previous_path: false |
| | | | | first step filter: model_conf._tag IS NOT EMPTY |
| | | | | tag filter: model_conf._tag IS NOT EMPTY |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 1 | IndexScan | 2 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "_vid" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__IndexScan_1" |
| | | | | } |
| | | | | inputVar: |
| | | | | space: 29 |
| | | | | dedup: false |
| | | | | limit: 9223372036854775807 |
| | | | | filter: |
| | | | | orderBy: [] |
| | | | | schemaId: 30 |
| | | | | isEdge: false |
| | | | | returnCols: [ |
| | | | | "_vid" |
| | | | | ] |
| | | | | indexCtx: [ |
| | | | | { |
| | | | | "columnHints": [], |
| | | | | "filter": "", |
| | | | | "index_id": 35 |
| | | | | } |
| | | | | ] |
-----+----------------+--------------+----------------+-------------------------------------------------------
| 2 | Start | | | outputVar: { |
| | | | | "colNames": [], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Start_2" |
| | | | | } |
-----+----------------+--------------+----------------+-------------------------------------------------------
LOOKUP ON model_conf_tag WHERE model_conf_tag.name STARTS WITH “key902-0” YIELD properties(edge).name;的执行计划
(root@nebula) [amdbconf]> explain LOOKUP ON model_conf_tag WHERE model_conf_tag.name STARTS WITH "key902-0" YIELD properties(edge).name;
Execution succeeded (time spent 42.668ms/43.145508ms)
Execution Plan (optimize time 339 us)
-----+-------------------+--------------+----------------+----------------------------------------------------------
| id | name | dependencies | profiling data | operator info |
-----+-------------------+--------------+----------------+----------------------------------------------------------
| 3 | Project | 2 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "properties(EDGE).name" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Project_3" |
| | | | | } |
| | | | | inputVar: __Filter_2 |
| | | | | columns: [ |
| | | | | "properties(EDGE).name" |
| | | | | ] |
-----+-------------------+--------------+----------------+----------------------------------------------------------
| 2 | Filter | 4 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "model_conf_tag._src", |
| | | | | "model_conf_tag._dst", |
| | | | | "model_conf_tag._rank", |
| | | | | "model_conf_tag._type", |
| | | | | "model_conf_tag.name", |
| | | | | "model_conf_tag.value" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Filter_2" |
| | | | | } |
| | | | | inputVar: __EdgeIndexFullScan_1 |
| | | | | condition: (model_conf_tag.name STARTS WITH "key902-0") |
| | | | | isStable: false |
-----+-------------------+--------------+----------------+----------------------------------------------------------
| 4 | EdgeIndexFullScan | 0 | | outputVar: { |
| | | | | "colNames": [ |
| | | | | "model_conf_tag._src", |
| | | | | "model_conf_tag._dst", |
| | | | | "model_conf_tag._rank", |
| | | | | "model_conf_tag._type", |
| | | | | "model_conf_tag.name", |
| | | | | "model_conf_tag.value" |
| | | | | ], |
| | | | | "type": "DATASET", |
| | | | | "name": "__EdgeIndexFullScan_1" |
| | | | | } |
| | | | | inputVar: |
| | | | | space: 29 |
| | | | | dedup: false |
| | | | | limit: 9223372036854775807 |
| | | | | filter: |
| | | | | orderBy: [] |
| | | | | schemaId: 33 |
| | | | | isEdge: true |
| | | | | returnCols: [ |
| | | | | "_src", |
| | | | | "_dst", |
| | | | | "_rank", |
| | | | | "_type", |
| | | | | "name", |
| | | | | "value" |
| | | | | ] |
| | | | | indexCtx: [ |
| | | | | { |
| | | | | "columnHints": [], |
| | | | | "filter": "", |
| | | | | "index_id": 38 |
| | | | | } |
| | | | | ] |
-----+-------------------+--------------+----------------+----------------------------------------------------------
| 0 | Start | | | outputVar: { |
| | | | | "colNames": [], |
| | | | | "type": "DATASET", |
| | | | | "name": "__Start_0" |
| | | | | } |
-----+-------------------+--------------+----------------+----------------------------------------------------------
Thu, 29 Jun 2023 15:50:18 CST