|
Cassandra
|
HBase
|
一致性
|
Quorum NRW策略
通过Gossip协议同步Merkle Tree,维护集群节点间的数据一致性
|
单节点,无复制,强一致性
|
可用性
|
1,基于Consistent Hash相邻节点复制数据,数据存在于多个节点,无单点故障。
2,某节点宕机,hash到该节点的数据自动路由到下一节点做hinted handoff,源节点恢复后推送回源节点。
3,通过Gossip协议维护集群所有节点的健康状态,并发送同步请求,维护数据一致性。
4,SSTable,纯文件,单机可靠性一般。
|
1,存在单点故障,Region Server宕机后,短时间内该server维护的region无法访问,等待failover生效。
2,通过Master维护各Region Server健康状况和Region分布。
3,多个Master,Master宕机有zookeeper的paxos投票机制选取下一任Master。Master就算全宕机,也不影响Region读写。Master仅充当一个自动运维角色。
4,HDFS为分布式存储引擎,一备三,高可靠,0数据丢失。
5,HDFS的namenode是一个SPOF。
|
伸缩性
|
1,Consistent Hash,快速定位数据所在节点。
2,扩容需在Hash Ring上多个节点间调整数据分布。
|
1,通过Zookeeper定位目标Region Server,最后定位Region。
2,Region Server扩容,通过将自身发布到Master,Master均匀分布。
|
负载均
衡
|
请求Zookeeper取得整个集群地址,然后根据Consistent Hash选择合适的节点。client会缓存集群地址。
|
请求Zookeeper取读写数据路由表定位Region Server,Master会修改这个路由表。Client自身也会缓存一部分路由信息。
|
数据差异比较算法
|
Merkle Tree , Bloom Filter
|
Bloom Filter
|
锁与事务
|
Client Timestap(Dynamo使用vector lock)
|
Optimistic Concurrency Control
|
读写性能
|
数据读写定位非常快。
|
数据读写定位可能要通过最多6次的网络RPC,性能较低。
|
CAP点评
|
1,弱一致性,数据可能丢失。
2,可用性高。
3,扩容方便。
|
1,强一致性,0数据丢失。
2,可用性低。
3,扩容方便。
|
转自:http://rdc.taobao.com/team/jm/archives/915
分享到:
相关推荐
这种设计使得Cassandra具有高可扩展性和高性能。 HBase的数据模型是基于table的,每个table可以包含多个row,每个row又可以包含多个column family,每个column family又可以包含多个column。与Cassandra相比,HBase...
本文将对比分析Cassandra 和 HBase 的数据模型、系统架构以及API接口等方面的异同点。 #### 二、Cassandra简介 Cassandra 是一个高度可扩展且分布式的键值存储系统,最初由Facebook开发并开源。它采用了Amazon ...
Cassandra和HBase是两个广泛使用的分布式NoSQL数据库,它们在处理大规模数据存储和检索方面表现出色。两者都设计用于处理PB级的数据,支持高并发读写操作,并且是高度可扩展的。然而,它们在系统架构和设计理念上...
这个合集涵盖了四个关键的技术:Hadoop、Cassandra、HBase和NoSQL,这些都是构建大规模分布式数据存储和处理系统的基础。 **Hadoop** 是一个开源的框架,主要用于处理和存储大量数据。《Hadoop权威指南》是了解...
与Cassandra相比,HBase更注重实时查询和随机读写,而Cassandra更侧重于写入性能和最终一致性。两者都在大数据环境下有各自的适用场景。 关键概念包括: - **行键(RowKey)**:唯一标识一行,决定数据的物理存储...
benchmark_hbase_cassandra 使用 YCSB 对 HBase 和 Cassandra 进行基准测试的脚本。 数据库 - HBase 和 Cassandra benchmark_report.pdf 该文件包含使用 YCSB 的 HBase 和 Cassandra 基准测试结果的报告和观察结果。...
### HBase架构简介 HBase是一种分布式的、面向列的开源数据库,是Apache顶级项目之一。它基于Google的Bigtable...此外,HBase通过合理的架构设计确保了系统的高可用性和扩展性,使其成为处理大规模数据的理想选择。
在此次性能对比测试中,bankmarkUG使用了Yahoo Cloud Serving Benchmark(YCSB)作为测试平台,目的是为了比较SequoiaDB、Cassandra和MongoDB在不同工作负载场景下的性能表现。YCSB是一个用于评估云存储系统中数据库...
Cassandra在设计时考虑了高可用性和可扩展性,适合处理大规模实时读写操作。 4. **HBase**:基于Hadoop的分布式数据库,支持实时查询。它是一个NoSQL表格存储系统,提供了强一致性和高并发读写能力,特别适合于处理...
本文是Cassandra数据模型设计第一篇(全两篇),该系列文章包含了eBay使用Cassandra数据模型设计的一些实践。其中一些最佳实践我们是通过社区学到的,有些对我们来说也是新知识,还有一些仍然具有争议性,可能在要...
CQL 与 HBase kv 接口对比 * CQL 是趋势:Cassandra 的 CQL 是趋势,提供了类 SQL 的查询方式,支持丰富的数据结构和操作。 * HBase kv 接口:HBase 的 kv 接口是传统的 key-value 存储方式,缺乏丰富的数据结构和...
大数据促进了 NoSQL 的迅速繁荣,出现了大量的技术多样的 NoSQL 系统,这些 NoSQL 系统主要可以分为三大类:即文档系统(MongoDB)、键值系统(Cassandra、Hbase)和图系统(Neo4J)。 1.2 Cassandra NoSQL 数据库...
非关系数据库(经常被称为NoSQL)的特点是弹性和可伸缩性。另外,它们可以存储大数据并与云计算系统协同工作。这些因素导致非关系数据库非常流行。在2013年,NoSQL数据库的种类达到了150多个,并且一直在增长,多种...
作者Nishant Garg凭借其在软件架构和开发领域的丰富经验,特别是在Java、Java Enterprise Edition、SOA、Spring、Hibernate、Hadoop、Hive、Flume、Sqoop、Oozie、Spark、Shark、YARN、Impala、Kafka、Storm、Solr/...
通过结合Kafka、FlumeNG、Storm与HBase等关键技术,本架构设计实现了对大数据集的实时处理和历史数据的高效查询。不仅可以支持实时数据处理,还能够有效管理海量数据,为用户提供快速、准确的服务。
Cassandra的设计灵感来源于亚马逊的Dynamo和谷歌的BigTable,因此它继承了这些系统的优点,比如分布式的架构、没有单点故障的高可用性,以及能够水平扩展的可扩展性。 在DTCC 2014中国数据库技术大会上,360的...