学分高考 IT技术

分布式列存储框架

发布时间: 2022-03-17 11:48:02

分布式列存储框架,在生产生活中会接触到很多信息数据,而大部分信息是由非结构化数据组成的,特别是在大数据处理过程中尤为明显。这些数据都无法用关系型数据库的思维方式建模,因此在大数据的处理过程中,就出现了很多非结构化数据处理需求。

为了存储便利,易于理解,在完整的大数据体系中采用了很多NoSQL(Not OnlySQL的缩写)数据库。基于NoSQL理念设计的最著名的系统是Google的BigTable和滑铁卢大学开发的Hbase。Facebook将Google BigTable和Amazon Dynamo的完全分布式架构集于一身,开发了Cassandra,后于2010年正式成为了Apache基金会项目。

Cassandra和Hbase的出现不但使NoSQL的处理速度得到了前所未有的提升,而且它们能够组成集群化也为Hadoop、Spark等需要大容量数据快速写入的业务场景提供了非常有用的工具。著名的甲骨文公司Oracle也有自己的NoSQL产品,叫做NoSQL Database。

1.Cassandra简介


Cassandra的名字来源于希腊神话的一位女先知,因此该项目的Logo是一只明亮的眼睛。最突出的特点是它的可扩展性,给集群添加新节点时,可以直接指向新的主机,不必重启任何进程和改变任何查询,是非常便利的自动热扩展机制。这是一个非常好的特性。

此外,Cassandra还有一个优良的特性,即支持SQL语言。这也让广大的SQL爱好者觉得非常亲切,大大降低了学习的门槛。

2.Hbase简介


Hbase采用Java语言开发,和Cassandra一样,同样借鉴了Google的BigTable模型,主要为Hadoop生态圈提供了列存储服务。

Hbase使用HFile对文件进行列式存储,HFile存储以列族为单位。在读取时如果只需用行键作为索引要扫描一个列族的内容,那么其他不相干的列族即便存在和索引条件对应的逻辑关系也不会被扫描到,这种方式在一定程度上避免了IO拥塞,也更加适合这种小尺寸的OLTP操作。

但是和Cassandra一样,Hbase也不支持事务操作。

3.Cassandra和Hbase对比


(1)Cassandra部署更简单。Cassandra只有一种角色,而Hbase除了RegionServer外还需要ZooKeeper来同步集群状态。

(2)数据一致性是否可配置。Cassandra的数据一致性是可以配置的,可以更改为最终一致性,而Hbase是强一致性的。

(3)负载均衡算法不同。Cassandra通过一致性哈希来决定数据存储的位置,而Hbase靠Master节点管理数据的分配,将过热的节点上的Region动态分配给负载较低的节点。因此Cassandra的平均性能会优于Hbase,但是Hbase有Master节点,热数据的负载更均衡。

(4)单点问题。正是由于Hbase存在Master节点,因此会存在单点问题。

温馨提示:
本文【分布式列存储框架】由作者教培参考提供。该文观点仅代表作者本人,学分高考系信息发布平台,仅提供信息存储空间服务,若存在侵权问题,请及时联系管理员或作者进行删除。
我们采用的作品包括内容和图片部分来源于网络用户投稿,我们不确定投稿用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的权利,请联系我站将及时删除。
内容侵权、违法和不良信息举报
Copyright @ 2024 学分高考 All Rights Reserved 版权所有. 湘ICP备17021685号