【问题标题】:Cassandra vs HBase Consistency ModelCassandra 与 HBase 一致性模型
【发布时间】:2015-10-27 09:44:31
【问题描述】:

Cassandra 的最终一致性模型与 HBase 有何不同?由于一致性问题,Facebook 似乎从 Cassandra 迁移到了 HBase。这些 NoSQL 数据库中的哪一个是规模和性能的理想选择,并且具有尽可能接近“即时”的一致性。当我们试图提高一致性时,性能下降的因素是什么?

【问题讨论】:

    标签: cassandra hbase eventual-consistency


    【解决方案1】:

    Here's Facebook's original post 了解他们为什么选择 HBase for Messenger。当时他们认为 HBase 是“理想的规模和性能,具有尽可能接近‘即时’的一致性”,但是他们达到了极限,后来 developed a new service called Iris 处理最近一周的消息,同时将较旧的消息存储在HBase。

    Cassandra's consistency model provides a lot of flexibility。最大的区别在于 Cassandra 是一个无共享架构:每台服务器都被设计为能够独立运行,因此以一致性为代价实现了高可用性和分区容错。

    但是,对于 HBase,只有一个事实来源,但以(明显的)可用性和分区容错为代价。从客户端的角度来看,读取过程涉及查找该数据的位置并从该服务器读取它。对该数据的任何更新都是原子的。

    Here's one HBase vs Cassandra benchmark 显示 HBase 在几乎所有(大部分)默认设置的测试中都优于 Cassandra,here's another benchmark 显示 Cassandra 在某些测试中优于 HBase。我认为这里的结论是,您的问题的答案在很大程度上取决于您的用例。

    Here's a good article 总结了每种方法的优缺点,可以帮助您决定哪一种最适合您的需求。

    【讨论】:

      猜你喜欢
      • 2011-05-24
      • 2021-11-24
      • 2014-10-13
      • 2015-08-08
      • 2017-02-23
      • 1970-01-01
      • 2015-12-26
      • 1970-01-01
      • 2018-06-17
      相关资源
      最近更新 更多