繁体   English   中英

伏地魔与couchdb

[英]voldemort vs. couchdb

我正在尝试决定是否使用voldemort或couchdb来进行即将到来的医疗项目。 我想要一个具有高可用性,容错能力的存储系统,并且可以扩展它所投入的大量数据。

每个人的利弊是什么?

谢谢

伏地魔项目看起来不错,但到目前为止我还没有深入研究过它。

在它当前状态CouchDB可能不是“海量数据”的正确选择。 在节点之间分发数据并相应地路由查询是在路线图上,但到目前为止还没有实现。 CouchDB最大的已知生产设置使用约200G的“表格”(沙发上的“数据库”)。

CouchDB本身不支持HA,但可以轻松构建:所有CouchDB节点都在多主设置中复制彼此之间的数据库节点。 我们在CouchDB机器前放置了两个Varnish代理 ,并且使用CARP使Varnish盒子变得多余。 CouchDBs“从Web构建”设计使这些事​​情变得非常容易。

我们设置中最紧迫的问题是将大型(多MB)附件复制到CouchDB文档仍然存在问题。

我建议你也检查一下传统的RDBMS路由。 RDBMS方法之外的可用人才存在巨大问题 ,Oracle&Co。提供的功能非常强大。

从你的问题不太了解,我会说Project Voldemort或像CouchDB这样的分布式哈希表( DHT )通常都是你HA问题的解决方案。

那些DHT非常适合高可用性,但是比传统关系数据库(RDBMS)更难编写代码来保持一致性。

它们非常适合存储文档类型信息,这可能与您的医疗保健项目非常吻合,但使数据开发更加困难。

  • 大多数商店的最大限制是它们不具有事务安全性 (参见Scalaris用于事务安全存储),您需要自己确保数据一致性 - 大多数通过合并冲突数据来使用读取时间一致性)。 RDBMS更容易用于数据的一致性(ACID)
  • 加入数据也要困难得多。 在RDBM中,您可以轻松地在多个表上查询数据,您需要在CouchDB中编写代码来聚合数据。 对于其他商店, Hadoop可能是聚合信息的不错选择。

阅读关于一致性与可用性的BASECAP定理。

看到

memcacheDB是一个选项吗? 我听说过Digg如何处理HA问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM