分布式数据库复制设计:高效的网络传输

时间:2016-12-24 02:58:42

标签: database network-programming database-replication distributed-system

我正在开发一个分布式数据库系统,假设每个表在不同的机器上有3个副本,如果有写入请求,复制层的工作就是将该写入数据复制到其他节点。问题是如何在吞吐量方面提高复制效率?网络带宽为10Gbps。

示例:

cmd1: write on table 1
   -> send to node A and node B
cmd2: write on table 2
   -> send to node B and node C
cmd3: write on table 1
   -> send to node A and node B
cmd4: write on table 3
   -> send to node B and node D
cmd5: write on table 2
   -> send to node B and node C

上面的示例显示了复制命令队列。要实现高性能,那么使用多线程网络复制呢?但是如果有两个写入同一个节点,最好将两者结合起来并完全发送?

并且假设这些写入最终将存储在磁盘上(考虑旋转磁盘),因此为了加快存储过程,在进行复制时是否可以做任何事情? (如果每个表都已映射到存储在节点上的特定磁盘上,则写入仅附加)。

0 个答案:

没有答案
相关问题