1、什么是Cassandra:分布式key-value存储系统,是一个混合型的非关系的数据库
2、存储结构:基于列族Columm Family 的四维或五维模型。在Cassandra写入数据之前,需要先记录日志CommitLog,然后数据开始写入到Column Family对应的Memtable(是一种按照Key排序数据的内存结构)中,在满足一定条件时,再把Memtable的数据批量刷新到磁盘,存储为SSTable
3、基本概念:
Cluster:Cassandra的节点实例,包含度多个KeySpace
KeySpace:用于存放ColumnFamliy的容器,相当于关系型数据库中的schema或者database
ColumnFamily:用于存放Column的容器,类似关系型数据库的中的table
SuperColumn: 特殊的Column,它的Value可以包含多个Column
2、存储结构:基于列族Columm Family 的四维或五维模型。在Cassandra写入数据之前,需要先记录日志CommitLog,然后数据开始写入到Column Family对应的Memtable(是一种按照Key排序数据的内存结构)中,在满足一定条件时,再把Memtable的数据批量刷新到磁盘,存储为SSTable
3、基本概念:
Cluster:Cassandra的节点实例,包含度多个KeySpace
KeySpace:用于存放ColumnFamliy的容器,相当于关系型数据库中的schema或者database
ColumnFamily:用于存放Column的容器,类似关系型数据库的中的table
SuperColumn: 特殊的Column,它的Value可以包含多个Column
Columns: Cassandra的最基本单位,由name,value,timestamp组成
4、关系模型图如下
5、ScyllaDB是用C++重写的Cassandra,每节点每秒处理100万TPS。完全兼容Cassandra,拥有比Cassandra多10x倍的吞吐量,降低了延迟
6、使用cqlsh连接ScyllaDB(cql全拼是:cassandra query language )