chain replication改进思路
Open
- Dominant language
- C++
- Stars
- 10.2k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
学习了源码后,发现现在的chain replication有如下2个特点:
1. 控制和数据分离,predecessor(包括client)使用IBV_WR_SEND发送控制到successor, successor使用IBV_WR_RDMA_READ从predecessor拉取数据。
2. 每个chain node都是串行的提交本地和forward to successor。
3. chunk本地提交是cow,可能会发生RMW.
结合上面特点,写流程时延可能会比较长,是否考虑过下面这个模型:
1. 客户端扇型分发数据拉取请求(IBV_WR_SEND)到chain上所有节点。
2. 控制信息依然走chain replication。
3. chain node可以提前拉取数据(甚至提前cow方式本地提交chunk),或者等接收到写控制后根据情况选择从client或者predecessor上拉取数据。
这样做目的是让successor可以提前拉取数据,减少时延。
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.