【问题标题】:Distributed key-value storage for total data size of 80TB总数据大小为 80TB 的分布式键值存储
【发布时间】:2013-02-04 08:15:57
【问题描述】:

TL;DR:

我想对分布式键值存储提出建议,用于 avg。条目大小最大为 50KB,可安装在 Linux 环境(专用服务器)上。
文件系统解决方案就可以了。
我找到了一些解决方案:Ceph、Cassandra、Riak 等等。

详情

我正在为我们的一个组件寻找存储解决方案,它应该是键值存储、平面命名空间。

场景

读/写模式非常简单:

一旦键值被写入,接下来的几个小时内就会有几次读取。

之后,没有任何东西触及给定的键值。我们希望保留这些数据以供将来使用,即“存储模式”。

其他使用方面

  • 操作系统:Linux
  • Python 客户端/连接器
  • 总大小:最高 80TB(此值也代表未来的需求)。
  • 平均条目大小(对于 k-v 对中的单个值):10 到 50 KB,未压缩,主要是文本数据
  • 压缩:内置或外部。
  • 加密:不需要
  • 网络带宽:1Gb,单局域网
  • 服务器:专用(不在云端)

最重要的要求

“基本”要求是:

  • 操作系统:Linux
  • Python 客户端/连接器或通过 HTTP 的 RESTful API
  • 可以轻松存储多达 80TB(此值也代表未来的需求)。
  • 最大读取延迟:首次读取为几秒,“存储模式”为 30 秒(解释见上文)
  • 内置复制(以便数据存储在多个节点上)

很高兴拥有

  • RESTful 网关
  • 后台数据备份到另一个存储(用于在发生灾难时恢复数据)。
  • 易于配置

到目前为止我发现了什么

  • 头孢
  • HDFS
  • 基于 HDFS 的 HBase
  • 光泽
  • GlusterFS
  • Mongo 的 GridFS - 但我可以信任 Mongo 的基础架构吗?
  • Cassandra - 不是一个选项,因为合并过程占用双倍磁盘大小
  • Riak - 看起来和 Cassandra 有同样的问题,需要更多研究
  • Swift + OpenStack(实际存储可以在 Amazon S3 上)
  • 伏地魔
  • 还有很多其他工具,但我不会在这里写它们,因为其中一些具有专有许可证,而另一些似乎不成熟。

如果您对我上面提到的任何工具(总容量超过 50TB)或您认为足够的工具提供任何建议,我将不胜感激。

【问题讨论】:

  • 这是shopping question。您已经成功确定了适合您的产品,但我们可以添加的任何内容都是主观意见。这是我的:如果您正在寻找键值文件存储,请使用 Ceph。如果您正在寻找将 文件系统 视为键值存储,Gluster 也可以,但 Ceph 也可以。
  • @Charles,我同意,但我仍然认为其他人可以从中受益。感谢您的意见!
  • 我使用 Ceph - 到目前为止它一直在为我们工作。
  • FoundationDB 是新的(新)孩子
  • 您可能会发现this 的答案很有趣。

标签: key-value-store distributed-filesystem


【解决方案1】:

只需使用 Ceph(我的意思是直接使用 librados)。不要使用 GlusterFS——它很麻烦。

【讨论】:

    猜你喜欢
    • 2011-02-17
    • 2017-12-20
    • 1970-01-01
    • 2014-12-26
    • 2014-10-17
    • 1970-01-01
    • 1970-01-01
    • 2015-09-23
    • 2015-02-09
    相关资源
    最近更新 更多