12.4 Cassandra数据模型

12.4 Cassandra数据模型

卜算子·大数据”一个开源、成体系的大数据学习教程。——每周日更新

  • 没有JOIN操作

Cassandra没有表的连接操作,跟关系型数据库设计相比最好的方式是,反(非)规范化设计,设计为两个表连接后的结果表。

  • 没有参照完整性(外键)
    虽然表中可以存储别的表的ID,但是没有级联删除的操作,所以没有外键操作。

  • 非规范化的设计在Cassandra数据库中表现最佳。适当冗余,相同的数据出现在不同的表中,具有不同的键。

  • 物化视图
    基于已经存在的基础表,创建多个非规范化的数据视图(物化视图)。

  • 查询优先设计

设计表从查询的结果开始设计表(结果表)。

  • 存储空间设计
    Cassandra每个表都是存储在磁盘上的单独文件中,相关的列尽量保持在同一个表中(磁盘文件)。
    搜索单个分区的查询性能最佳,优化最小搜索分区数量。

  • 排序设计
    Cassandra查询中的ORDER BY仅支持聚类列(Clustering columns)排序。

  • 分区单元值计算方法
    避免分区太宽,分区中的单元值太大。
    分区中的单元值计算方法:
    分区中的单元值=静态列数+表的行数*(列数-主键列数-静态列数)
    Cassandra的限制是每个分区20亿。

这里写图片描述 本节完成

长按关注从入门到精通

这里写图片描述
开源、源码获取 https://github.com/wangxiaoleiAI/big-data

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值