Cassandra 教程

Cassandra键空间操作

Cassandra表操作

Cassandra数据CRUD操作

Cassandra CQL数据类型

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/cassandra-vs-hbase.html

Cassandra与HBase比较(区别)


下表说明了 Cassandra 和 HBase 之间的主要区别:

HBase Cassandra
HBase 是基于 Bigtable(Google) Cassandra 基于 DynamoDB(亚马逊)。它最初是由前亚马逊工程师在 Facebook 开发的。这是 Cassandra 支持多数据中心的原因之一。
HBase 使用 Hadoop 基础架构(Zookeeper,NameNode,HDFS)。部署 Hadoop 的组织必须具备 Hadoop 和 HBase 的知识。 Cassandra 与 Hadoop 分开开发,其基础工具和操作知识的要求与 Hadoop 不同。然而,对于分析,许多 Cassandra 部署使用 Cassandra + Storm(使用 zookeeper)和/或 Cassandra + Hadoop。
HBase-Hadoop 基础工具有几个由 Zookeeper,Name Node,HBase master 和数据节点组成的“移动部件”,Zookeeper 是集群的,自然是容错的。名称节点需要集群为容错。 Cassandra 使用单个节点类型。所有节点相等并执行所有功能。任何节点都可以作为协调器,确保没有 Spof。添加 Storm 或 Hadoop 当然会增加基础设施的复杂性。
HBase 非常适合进行基于范围的扫描。 Cassandra 不支持基于范围的行扫描,这可能在某些用例中是有限制的。
HBase 提供跨越一个 HBase 集群的异步复制。 Cassandra 随机分区提供了跨越单行的行复制。
HBase 仅支持有序分区。 Cassandra 正式支持有序分区,但 Cassandra 没有生产用户使用有序分配,由于“热点”创建并操作困难等热点引起。
由于有序分区,HBase 可以轻松地水平放置,同时还支持 Rowkey 范围扫描。 如果数据存储在 Cassandra 的列中以支持范围扫描,Cassandra 中行大小的实际限制是10兆字节。
HBase 支持原子比较和设置,HBase 支持一行内的事务。 Cassandra 不支持原子比较和设置。
HBase 不支持单行读取负载平衡,一行只有一个区域服务器一次提供。 Cassandra 将支持单行读取负载平衡。
Bloom 过滤器可用于 HBase 作为另一种形式的索引。 Cassandra 使用 bloom 过滤器进行键查找。
触发器由 HBase 中的协处理器功能支持。 Cassandra 不支持协处理器功能。