我想咨询一下storage每个data_path下具体管理哪几个partition有具体计算的公式吗
比如我有 两台机器,m1,m2。每台机器两个data_path, d1,d2。 p 个 parititon,r 个副本。 这个partition 分布情况有计算公式吗,还是完全随机的。谢谢
我想咨询一下storage每个data_path下具体管理哪几个partition有具体计算的公式吗
比如我有 两台机器,m1,m2。每台机器两个data_path, d1,d2。 p 个 parititon,r 个副本。 这个partition 分布情况有计算公式吗,还是完全随机的。谢谢
partition在哪个机器上是不确定的,在leader选举、水平扩容等情况下都有可能迁移partition。nebula的分布式协议是基于Raft。有兴趣可以了解一下。
有办法能算, 但是没有公式, 基本就是平均分布, 这部分得参考下源码, NebulaStore::addPart这个函数.
创建的时候基本均匀的,差不多就是hash分片的原理