本文来自网易云社区
作者:孙建良
在分布式存储系统 中说明了,在一定情况下,copyset的数量不是越多越好,在恢复时间确定的情况下,找到合适的copyset的数量可以降低数据丢失的概率。
在分布式存储系统可靠性系列文章分布式存储系统可靠性-设计模式一文中也总结道:
为了提高存储系统数据可靠性,首先在系统允许的成本范围内选择合适的副本数,再次在系统设计中我们首先优先考虑加快数据恢复时间,在此基础上减小系统的copyset数量。使得在既定的成本下达到尽可能高的可靠性。
其实在业界也已经有团队在这方面有过实践和经营总结。《Copysets: Reducing the Frequency of Data Loss in Cloud Storage》,这篇paper是斯坦福大学的学生在facebook HDFS集群上作实验,为了有效降低数据丢失概率,数据放置算法,从原来的Random Replicaiton更改为copyset Replication 算法,实验结果说明可以将FaceBook HDFS集群1%节点故障时的数据丢失概率从22.8%降低道0.78%
Motivation: 降低数据丢失概率
Innovation: 减少copyset数量可以降低数据丢失概率
Implementation: copyset Replication
Evaluation: 在Facebook HDFS集群1%节点故障时,22.8% to 0.78%
以下总结分析3种较为典型的副本分布策略,即 Random Replication、Randon Relication With Failure Domain、CopySet Replication,并简单分析这些策略情况下的数据丢失概率。