nebula属于点切存储还是边切存储?

当我看边的存储格式的时候, Edge.h文件里面的结构是:

struct Edge {
    Value src;
    Value dst;
    EdgeType type;
    std::string name;
    EdgeRanking ranking;
    std::unordered_map<std::string, Value> props;
    }

我认定应该是点切的方式,因为每个边都有起点和终点的信息。
但是后来有看到博客里说边在建模的时候的key-value会分成两个独立的kv,分别表示出边和入边,也就是outKey和边对应的起点存在一个partition, inKey和终点存在一个partition,这个描述又觉得像是边切的存储方式。
所以应该是点切还是边切呢?

1 个赞

Edge.h这个和边的存储没有关系,是边切分的

具体的可以参考 Nebula 架构剖析系列(一)图数据库的存储设计
文章有点老了,但是大体架构没有多少变化

OK,好的,谢谢

https://docs.nebula-graph.com.cn/site/pdf/NebulaGraph-book.pdf 更新 3.5.4

@pikapika 如果问题得到了解答,麻烦勾选一下解决方案哈,这样后面的同学可以快速看到问题的答案 :handshake:

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。