没有join操作。有轻量级事务和批处理,但是没有外键等。
反规范化。3.0支持物化视图,允许在一个表上创建数据的多个物化视图。
使用cassandra要从查询入手,而不是先从数据模型开始。先对查询建模,然后根据查询来组织数据,然后再构建表结构。
cassandra建表要考虑磁盘怎么存储数据,也就是要求要保证相关的列定义在同一个表中,不像RDBMS去关联查询。
尽可能搜索最小的分区去满足一个给定的查询。搜索单个分区往往会得到最优的性能。
排序需要提前设计,根据集群键排序。只能是和设计排序一样,或者完全相反。

引入物化视图主要是为了解决二级索引的一些问题:基数很大的列要查询很多节点。
物化视图通过存储预配置的视图来解决,视图支持非集群键的其他列的查询。物化视图简化开发:应用不用保持多个反规范化的表同步,cassandra会负责更新物化视图,保证和基表一致。对写操作的性能有很小的影响。

计算分区大小
cassandra限制每个分区最大20亿个单元(32位Int最大值)。
公式:
a*.分区中值(或者单元)个数 = 静态列数 + 行数*每行值的个数。
每行的值=列数 - 主键列数 - 静态列数。
主要决定分区大小还是行数。
计算磁盘大小:
公式为单个分区的磁盘大小:
磁盘大小=分区键的字节数+ 静态列的字节数 + sum(集群键列 * 对应集群键列的行数) + 行数 * 常规列 + 每个单元存储的时间戳大小(8字节) * 分区中值的个数(见a*)
记住cassandra是宽行,如果集群键一样,只会保存一个。
还要考虑多副本。
分解大分区:使用组合分区键。

最新文章

  1. 【代码笔记】iOS-UILable电子表显示
  2. 实践.Net Core在Linux环境下的第一个Hello World
  3. Netron源码解读(一):GraphControl画布对象
  4. CCI4.5/LintCode Validate Binary Search Tree
  5. 【leetcode】 Scramble String (hard)★
  6. Android缓存学习入门(二)
  7. HDU 4751 Divide Groups
  8. jQuery Event.stopPropagation() 函数详解
  9. html5 canvas 笔记四(变形 Transformations)
  10. libreoffice转换文档的方法(支持各平台各版本的libreoffice)
  11. 关于 android的 渲染器 Shader
  12. 【甘道夫】怎样在cdh5.2上执行mahout的itemcf on hadoop
  13. Redis整合Spring结合使用缓存实例(转)
  14. JavaSE_坚持读源码_HashSet对象_Java1.7
  15. [转]python3之paramiko模块(基于ssh连接进行远程登录服务器执行命令和上传下载文件的功能)
  16. Sublime Text 插件之HTML-CSS-JS Prettify—格式化HTML CSS JS与显示函数列表
  17. cxGrid动态设置单元格对齐方式
  18. Visual Studio2013安装过程
  19. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
  20. c++从string类型转换为bool类型

热门文章

  1. 轻量级 Kubernetes K3s - Github热点
  2. —用python写图片格式批量处理工具
  3. ceph对接k8s storage class
  4. 初识vue-简单的自定义标签页面
  5. 【Redis3.0.x】数据类型
  6. dotnet高性能buffer
  7. selenium自动化 | 实现抢课功能
  8. 通用寄存器_MOV_ADD_SUB_AND_OR_NOT
  9. 【Oracle】Oracle SQL的优化软件
  10. random模块常用函数