列存储和行列混存
数据在磁盘中按照列的方式进行组织和物理存储。行存储架构和列存储架构的数据库分别适用于不同的应用,具备各自的优劣势,如下图所示。列存储架构对查询、统计和分析类操作具备天然的优势。
例如,在分析系统中,约100列的业务表是很常见的。对于常见的分析查询来说,对该业务表列的引用一般不超过10个。对I/O是主要瓶颈的分析系统而言,相较于传统的行式数据库,列式存储技术可以很容易地带来一个数量级的性能提升。
面对海量数据分析的I/O瓶颈,分析型数据库把表数据按列的方式存储,其优势体现在以下几个方面。
- 降低I/O:只有访问查询所涉及的列产生I/O,查询没有涉及的列不需要访问,不产生I/O;
- 高压缩比:压缩比可以达到 1 ~ 20 倍以上;
- 支持列存和行列混存。
高效透明压缩技术
高效透明压缩技术能够按照数据类型和数据分布规律自动选择最优压缩算法,尽可能减少数据所占的存储空间,降低查询的 I/O 消耗,提升查询性能。并设置了库级,表级,列级压缩选项,灵活平衡性能与压缩比的关系,而且压缩与解压缩过程对用户是透明的。
从 I/O 资源消耗节约的角度来看,对 I/O是主要瓶颈的分析系统而言,相较于传统的行式数据库,高效透明压缩技术可以带来约一个数量级的性能