|
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系统架构比对
Cassandra与HBase系统架构比对.zip
其主要功能比Dynomite(分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非关系数据库当中功能最丰富,最像关系数据库的。支持的数据结构非常...
NULL 博文链接:https://13146489.iteye.com/blog/1123018
各种流行的分布式应用技术资料合集(涵盖Hadoop Cassandra HBase NoSQL)
benchmark_hbase_cassandra 使用 YCSB 对 HBase 和 Cassandra 进行基准测试的脚本。 数据库 - HBase 和 Cassandra benchmark_report.pdf 该文件包含使用 YCSB 的 HBase 和 Cassandra 基准测试结果的报告和观察结果。...
大数据 该存储库包含 Hadoop、Map Reduce、Cassandra、HBase、Hive、Pig、Spark 和 Mahout 的许多示例。
官方给出的三种NoSQL数据库:SequoiaDB&Cassandra&MongoDB性能对比测试报告;值得参考;
非关系数据库(经常被称为NoSQL)的特点是弹性和可伸缩性。另外,它们可以存储大数据并与云计算系统协同工作。这些因素导致非关系数据库非常流行。在2013年,NoSQL数据库的种类达到了150多个,并且一直在增长,多种...
The HBase design patterns apply equally well to Cassandra, MongoDB, and so on. In Detail With the increasing use of NoSQL in general and HBase in particular, knowing how to build practical ...
DTCC 2014 中国数据库技术大会 大数据技术探索和价值发现 Cassandra应用和改进 360 王峰
cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战cassandra 实战...
Cassandra是一个混合型的非关系的数据库,类似于Google的BigTable。其主要功能比Dynomite(分布式的Key-Value存储系统)更丰富,但支持度却不如文档存储MongoDB(介于关系数据库和非关系数据库之间的开源产品,是非...
缓存连接通过一致的键值对缓存接口将应用程序绑定到多个支持数据存储,例如 RDBMS、NoSQL 存储(例如:Cassandra、HBase)和流(例如:JMS、Kafka) 文档 EhCacheConnection 的特性和用法的详细文档可以在找到
本文是Cassandra数据模型设计第一篇(全两篇),该系列文章包含了eBay使用Cassandra数据模型设计的一些实践。其中一些最佳实践我们是通过社区学到的,有些对我们来说也是新知识,还有一些仍然具有争议性,可能在要...
DevCenter cassandra客户端 DevCenter cassandra客户端 DevCenter cassandra客户端
Cassandra(apache-cassandra-4.0.1-bin.tar.gz)是一套开源分布式NoSQL数据库系统。它最初由Facebook开发,用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身...
The rising popularity of Apache Cassandra rests on its ability to handle very large data sets that include hundreds of terabytes -- and that's why this distributed database has been chosen by ...