我需要设置一个可以存储 PB 级别文件的数据存储(文件大多是小型 json、图像和 csv 文件,但其中一些可以是 ~100MB 二进制文件)。
我正在研究分布式数据存储,它是无主控且无单点故障的。
我找到了 Riak 和 GlusterFS。
我想问你们中有人用过这两个吗?
我知道那里的接口(DB/Map)非常不同。但在我看来,它们都使用散列和类似的分布式技术。它们是否具有相似的性能、一致性和可用性?
我需要设置一个可以存储 PB 级别文件的数据存储(文件大多是小型 json、图像和 csv 文件,但其中一些可以是 ~100MB 二进制文件)。
我正在研究分布式数据存储,它是无主控且无单点故障的。
我找到了 Riak 和 GlusterFS。
我想问你们中有人用过这两个吗?
我知道那里的接口(DB/Map)非常不同。但在我看来,它们都使用散列和类似的分布式技术。它们是否具有相似的性能、一致性和可用性?
我们正在运行一个带有 Bitcask 后端的 17 节点(24GB RAM,2T 磁盘)Riak 集群,存储大约 10 亿个 3k 对象。此设置非常高效,但非常耗费资源。我们正在考虑从 Riak 迁移到 GlusterFS,因为性能对我们来说并不那么重要。也许使用 LevelDB 作为后端也可以减轻我们的担忧。
ATM Riak 的自我修复特性似乎更强大,配置似乎更容易一些。在您的情况下,我更愿意在 GlusterFS 上存储 100MB 文件。
存储像您提到的 100MB 文件这样的较大文件不是普通 OSS Riak 的正确选择。
在这种情况下,您真正应该使用的是来自 Basho的新发布的 RiakCS http://basho.com/products/riakcs/ 。
选择主要取决于要求。一般来说,如果您实际上并不需要真正的文件系统(带有挂载点、ACL 管理等)并且只需要以编程方式使用或提供文件,我会推荐 Riak,否则推荐使用 GlusterFS。