alibaba / alibaba/GraphScope

Support Optional `EdgeExpand` in GIE Runtime

Open
#3,668 1 comment 0 reactions 1 assignee Claimed by @BingqingLyu View on GitHub
stale
Dominant language
C++
Stars
3.6k
Forks
468
Avg merge
29m
Merged PRs (30d)
1

Description

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

As titled. Support an optional edge expand, which is used to further support optional match in queries. Basically, given a vertex $v$, optional edge expand is to expand its neighbors if any, or represents the absence of neighbors with `None`, while preserving such $v$ in the results.

This includes:

- [x] Add a field of `is_optional` in `EdgeExpand` in proto to express optional edge expand
- [x] Support a basic implementation of `OptionalEdgeExpand`
- [ ] Support more complex situations like `OptionalEdgeExpand` in `ExpandIntersection` and `PathExpand`

Besides, this will introduce `Null` value, we need to process it appropriately in other operations. E.g., expanding from a `Null` value may also leads to a `Null` result.

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.