HugeGraph supports the parent-child edge feature, meaning that an Edgelabel can have a subordinate type. Using the bank transfer graph as an example, transfers may include person-to-person transfers (person-to-person), person-to-company transfers (person-to-company), and company-to-company transfers (company-to-company). These three different types of transfers share a common operation, transfer.
In actual business scenarios, it is often necessary to retrieve all transfer edges with a single query. Currently, competitors can only manually split the transfer edge types, perform multiple queries, and then aggregate the results. With HugeGraph's parent-child edge feature, it is possible to query the corresponding person-to-person transfers, person-to-company transfers, and other sub-edge types, and also conveniently and efficiently retrieve all transfer-related edges at once.
PS: The parent-child edge feature for the cassandra and scylladb backends has been temporarily disabled through the store feature.
> Code formatting will be done separately in the next PR.
Related to:
- https://github.com/apache/incubator-hugegraph/issues/745
- https://github.com/apache/incubator-hugegraph/issues/447
## Purpose of the PR
Subtask of #2265.
Adjust the project structure of this repository to include three sub-modules: hugegraph-server, hugegraph-pd, hugegraph-store at the root level.
## Main Changes
Roll back to the moment when https://github.com/apache/incubator-hugegraph/pull/2266 was merged on `pd-store` and incorporate the latest changes in `master`.
For more detailed information, please refer to https://github.com/apache/incubator-hugegraph/pull/2266#issue-1834369489.
---------
Co-authored-by: M <87920097+msgui@users.noreply.github.com>