分布式存储大量文件

时间:2013-09-20 13:19:01

标签: filesystems storage distributed key-value-store

小型头脑风暴。

我搜索最适合分布式存储解决方案的解决方案。我寻找一个有效的键/值存储,平面命名空间,以最小的延迟。

方案

我计划保存小的blob记录,1Ko或更少。 它们主要是生产/消费记录:

  • 1写
  • 1阅读,更多关于极少数情况。
  • 删除,几个月后归档。

然而,有些记录可能增长到10Mb,这是最大但必须是可能的。

数据必须在磁盘上序列化。

重要

我的第一优先级是一个可以在非常巨大的文件列表上提供良好响应时间的存储,可能是几亿。

当然,有了这个数字,我不关心迭代我的文件(我寻找功能但不关心性能,仅用于调试或维护)。

当然是一种可以扩展的解决方案,只有SPOF才能更好。

必须是Linux解决方案,不允许使用云(私人数据)。

我发现了什么

我查看了 Voldemort Cassandra HBase

  • 我担心Cassandra和HBase对blob记录的效率不高。
  • Voldemort 看起来仍然不成熟,我找不到有关记录大小和支持的文件数量的信息。

我还检查 Lustre Ceph ,但它们不是键/值存储。

CouchBase MongoDB 在激活持久性的情况下表现糟糕。

我正在进行一些测试,但还不能真正推出稳固的基准测试。 如果某人有关于此解决方案的一些信息或知道此类工作负载的其他产品设计?

1 个答案:

答案 0 :(得分:0)

您是否看过内存数据网格,例如InfinispanHazelcast?它们具有出色的可扩展性并且具有响应性,但是如果有一天您考虑对这些条目进行任何处理,那么存储10Mb对象可能会成为一个问题。但是,Hazelcast例如允许在拥有目标条目的集群的同一成员上执行任务,从而减少了成员间数据流的数量。