cassandra的table结构分析

来源:互联网 发布:jsp mysql 选课 源码 编辑:程序博客网 时间:2024/06/05 20:23

组合键(Compound keys)和聚类(clustering)

组合键提供了聚类功能。例如定义(a, b) PRIMARY KEY是一个组合键。

建议使用uuid类型作为key,便于进行序列化操作。

cassandra规定组合键的第一个成员a用于分区(partition),后面的成员b则用于聚类。

实际存储时,a值相同的行存储在一起,并按照b进行排序,这就使查询等操作十分高效。

a值相同的行在进行插入,更新和删除等操作时是原子的,互不干扰的。

归集列(Collection columns)

CQL 3 引入以下归集类型

• 集合
• 列表
• 映射

以前的cassandra版本在处理一个用户多个邮箱等问题时不如SQL优雅(SQL只需再建立一个邮箱表就可以了),

新的cassandra CQL 3版本可以通过把邮箱字段定义为归集类型即可。

再比如对于一首mp3歌曲,可以用集合类型设定tags,用list类型设定评论,用map类型设定点播时间等。

待续...