【问题标题】:hbase vs cassandra for messaginghbase vs cassandra 用于消息传递
【发布时间】:2016-06-08 01:29:43
【问题描述】:

几年前,Facebook 决定在其消息系统中使用 hbase 而不是 cassandra:http://highscalability.com/blog/2010/11/16/facebooks-new-real-time-messaging-system-hbase-to-store-135.html

fb 使用 hbase 的主要原因是与 cassandra 相比,读取速度比写入速度快。这个事实仍然成立吗?我正在使用 cassandra 3.0,将读取一致性级别设置为 ONE 或 TWO 时,读取速度比设置为 ALL 时快。

现在我的问题是:如果 Facebook 必须在 2016 年决定使用 cassandra 或 hbase,它的决定是否仍然是 hbase?

【问题讨论】:

    标签: cassandra hbase


    【解决方案1】:

    Cassandra 最初是为优化写入性能而设计和构建的。随着版本的发布,他们已经做了很多工作来提高读取性能,使其更接近写入性能。已经在 HBase 与 Cassandra 上进行了多个基准测试和研究,但总的来说,他们倾向于说性能大约等于 Cassandra 更好一点。但是,我总是对所有这些性能基准研究持保留态度,因为根据您设置测试的方式,您可以让任何人成为赢家。

    使用 CL=ONE 肯定会比 ALL 获得更快的读取和写入,因为协调器只需要等待任何副本而不是所有副本响应。如果您处于多 DC 场景中,则 LOCAL_ONE 将进一步提高吞吐量。

    至于 FB 是否会选择 Cassandra 而不是 HBase,这是不可能的,因为做出这个决定不仅仅是简单的性能指标。我可以说消息传递用例是 cassandra 表现良好的用例。您可以在此处阅读他们的用例:

    http://www.planetcassandra.org/blog/functional_use_cases/messaging/

    【讨论】:

      猜你喜欢
      • 2015-12-03
      • 2015-12-03
      • 2012-01-05
      • 1970-01-01
      • 1970-01-01
      • 2014-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多