我需要为网状网络中连接的一组节点(设备)实现分布式存储系统。
所以我的设计目标基本上是:
- 存储系统应该能够处理节点的动态进入和退出。
- 复制(为了容错)。
为此,我考虑使用分布式文件系统。每个节点都可以以透明的方式访问其他节点中的数据。
是否有一些简单的、易于插入的开源实现?
感谢您的想法!
答案1
开放AFS是一个得到良好支持、广泛使用的跨平台分布式文件系统解决方案,它可以实现您所说的一切。
答案2
头孢当它达到生产质量时,可能是一个不错的选择。
答案3
OpenAFS 相当不错。它还允许使用服务池,这样断开连接的节点仍拥有其数据的副本。例如,您在笔记本电脑上工作,该笔记本电脑是 AFS 节点,但最近修改的分布式存储中的文件仍具有本地副本。当您重新连接时,这些修改过的文件将重新同步。
GlusterFS/Lustre 也是不错的选择。我在使用 GlusterFS 处理写入量大的内容时遇到了一些性能问题,但它运行得很好。
http://www.cleversafe.org/dispersed-storage/ 是另一种可能的解决方案。
http://danga.com/mogilefs/如果你不需要 posix 兼容文件系统
答案4
如果你需要开源和容错的分布式文件系统,那么你可以使用驼鹿。例如,您可以轻松地在 Ubuntu 上安装它。