如何强劲,但最低限度,穿过一个对等网络系统分发物品

问题描述:

如果一个人有一个对等网络系统,可查询,一个想如何强劲,但最低限度,穿过一个对等网络系统分发物品

  • 减少的总数(通过将“流行”项目广泛地和“相似”的项目分布在一起)
  • 避免每个节点的过度存储
  • 确保在面对客户端宕机,硬件故障以及用户离开(可能为档案工作者/历史学家检测稀有物品)
  • 避免查询没有找到在网络分区

的情况下,考虑到这些要求的比赛:

  1. 是否有任何标准的方法?如果没有,是否有任何受人尊重但实验性的研究?我熟悉一些分配方案,但我还没有看到任何真正解决稳健性问题的方法。
  2. 我是否缺少明显的标准?
  3. 有没有人有兴趣研究/解决这个问题? (如果是这样的话,我很乐意在本周末投入一个非常蹩脚的模拟器的开源部分,并且通常会提供无益的建议)。

@cdv:我现在看过视频,它非常好,虽然我觉得它不太适合可插拔分发策略,但它绝对是90%的方式。然而,这些问题突出了这种方法的有用差异,这些方法解决了我的一些进一步问题,并为我提供了一些参考资料以供跟进。因此,我暂时接受你的答案,尽管我认为这个问题是开放的。

如果你有时间值得检查the Google tech talk that Wuala gave。他们讨论了构建对等文件系统时遇到的这些相同问题。

有多个系统在那里与你寻求各个方面和各个制作不同的妥协,包括但不限于:

亚马逊迪纳摩:http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf

凯:http://www.slideshare.net/takemaru/kai-an-open-source-implementation-of-amazons-dynamo-472179

的Hadoop: http://hadoop.apache.org/core/docs/current/hdfs_design.html

和弦:http://pdos.csail.mit.edu/chord/

蜂巢:http://www.cs.cornell.edu/People/egs/beehive/

等等。沿着这些线建立一个定制系统后,我让一些构建块也以开放源码的形式出现:http://code.google.com/p/distributerl/ (这不是一个完整的系统,但有一些库在编译时很有用)

+0

这是很多很好的信息,但它几乎太多了。我可以谷歌分布式哈希表以及下一个人。你能否多说一些权衡?谢谢 :-) – 2008-09-30 18:54:00