哪个键值数据库用于BLOB存储?

时间:2015-01-22 11:17:13

标签: database key-value-store nosql

我们有一项服务,目前在MySQL数据库之上运行,并使用JBoss来运行该应用程序。数据库增长速度正在加快,我希望更改设置以改进扩展。问题不在于大量行,也没有(特别是)大量的查询,而是存储在db中的大量BLOB。特别是创建或恢复备份所需的时间(我们使用mysqldump和Percona Xtrabackup)是一个问题以及我们需要水平扩展以便将来继续扩展磁盘空间这一事实。目前db大小约为500GB。

我认为可以很好地满足我们未来需求的安排是一个混合数据库,它使用MySQL和一些键值数据库。后者只存储BLOB。元数据以及应用程序的用户管理和业务逻辑的数据将保留在MySQL数据库中,并受益于结构化表和完全一致性。应用程序本身将处理数据库之间的一致性问题。

问题是要使用哪个数据库?有很多NoSQL数据库可供选择。以下是我正在寻找什么品质的一些观点:

  • 分布在多个节点上,可以灵活添加或删除。
  • 存储冗余,数据库自动确保每个值对象至少存储在两个不同的节点上。
  • 价值对象'大小可以从几十个字节到大约100MB。
  • 从JBoss之上的Java EJB应用程序访问数据库,以及用C ++编写的程序来处理数据库中的数据。每种都需要某种连接器。
  • 不需要数据结构。单个字符串或甚至只是一个大整数就足以满足值的键,纯字节数组。
  • 不需要更新值对象,只需插入和删除。如果某个特定对象被一个履行相同角色的新对象淘汰,则删除旧对象并插入一个带有新密钥的新对象。

看了一下,Riak听起来不错,除了problems存储大值对象。你会推荐哪个数据库?

0 个答案:

没有答案