danthegoodman1 / RustyGraphDB

Learning graph DBs in Rust
0 stars 0 forks source link

Distributed mode #2

Open danthegoodman1 opened 2 weeks ago

danthegoodman1 commented 2 weeks ago

Support for multi-node datasets.

Can do this with an enum like:

pub enum NodeReference {
    RemoteReference(shard_id: string, node_id: string),
    LocalReference(relation: RelationDirection),
}

Support different partitioning strategies as to how nodes are placed on different shards to avoid doing network traversals as much as possible.

Need to have a (BTree)Map to keep track of the nodes in memory by ID (primary key).

Use capnproto to reduce the performance penalty of traversing the network (community crate but used by Cloudflare).