本文针对Cassandra 3.0和CQL3.0介绍
Cassandra的github上已经更新到3.11版本了。
https://github.com/apache/cassandra
1 一些疑惑
在学习Cassandra的过程中感受到了前所未有的迷惑,就一个数据模型,前前后后看了很多介绍和文档,也听过别人讲座,结果现在一回想还是不清楚数据模型是什么,这让我很不能理解,于是今天整理一下。尽量让事情变得简单。下面是一些很具有误导性的地方
1.1 关于Key-Value
一直以KV的角度在学习 Cassandra,但是看文档和各种解释总和KV对不上,明明就是关系表啊,哪里有key value,发现Cassandra 的 github 已经不说自己是KV数据库了,第一句介绍是
Apache Cassandra is a highly-scalable partitioned row store. Rows are organized into tables with a required primary key.
翻译一下,Cassandra 是一个高可扩展的分区行式存储,其中包括一个主键。上来就用KV的思想来学习是不利于理解的,只会越来越乱,但是 Cassandra 也不是完全没有KV的影子,后边具体介绍。
1.2 关于列存
Cassandra 到底是行式存储还是列式存储?现在我觉得,Cassandra 就是 行式存储 ,列存是把相同属性的数据放在一起有利于压缩&#x