Cassandra The Definitive Guide 2nd edition-超越关系型数据库


Cassandra The Definitive Guide 2nd edition-超越关系型数据库_第1张图片
Cassandra的出现

目标

帮助开发和运维理解数据库的核心技术,通过对比传统的关系型数据库,来理解Cassandra并将其运用到实际工作中。

观点

IMS, RDBMSs, NoSQL. The horse, the car, the plane.

每种数据模型,均有自己的使用场景,一直沿用至今。

关系型数据库问题

1 Join操作在数据量巨大的时候,性能低下

2 保证数据的一致性,关系型数据库使用到事务,事务的处理是依赖锁的,存在比较重的负载

解决关系型数据库在数据量巨大的一些基本路径

a 垂直扩展,提升硬件性能

b 集群部署,引入一致性和失败转移问题

c 对数据库参数进行调优

d 应用层进行优化,比如加索引,拆分复杂SQL以及存储过程

e 添加缓存层,比如memcached、redis、EHcache等,引入更加严重的一致性问题

f 又回到数据库本身,进行denormalization(违背关系型数据的原则),比如进行数据的冗余

关系型数据模型也仅仅解决一些特定的问题,不是数据存储的银弹。

但是关系型数据库是目前被学习和使用最多的数据模型,无论是企业还是高校。似乎是一个放之四海而皆准的数据模型。

NoSQL的崛起

核心点:数据量的激增

分类

key-value型:Redis、Memccached

列存储型:HBase、Cassandra

文档存储型:MongoDB、CouchDB

图数据型:FlockDB、Neo4J

你可能感兴趣的:(Cassandra The Definitive Guide 2nd edition-超越关系型数据库)