数据库的类型
- 关系数据库:关系型数据是把数据以表的形式进行储存,然后再各个表之间建立关系,通过这些表之间的关系来操作不同表之间的数据
- 非关系数据库:NoSQL或非关系数据库,支持存储和操作非及格化及半结构化及半结构化数据。相比于关系数据库NoSQL没有固定的表结构,且数据之间不存在表与表之间的关系,数据之间可以是独立的。
- OLTP数据库:OLTP数据库是一种高速分析数据库,专为多个用户执行大量事务而设计
- OLAP数据库:OLAP数据库是指在同时分析多个数据维度,帮助团队刚好地理解其数据中的复杂关系
OLAP数据库
- 大量数据的读写,PB级的存储
- 多维分析,复杂的聚合函数
- 窗口函数,自定义UDF
- 离线/实时分析
SQL的优点
- 标准化,ISO和ANSI是长期建立使用SQL数据标准库
- 高度非过程化,用SQL进行数据操作,用户只需提出"做什么",而不指明"怎么做",因此用户无须了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成,这不但大大减轻了用户负担,而且利于提高数据独立性。
SQL的执行
Analyzer:变量绑定、类型推导、语义检查、安全、权限检查,完整性检查等。为生产计划做准备
列示存储
数据压缩
- 数据压缩可以使读的数据量更少,在IO密集型计算中获得更大的性能优势
- 相同类型压缩效率更高
- 排序之后压缩效率更高
- 可以针对不同类型使用不同的压缩算法