[发明专利]基于列分解的列存储数据库数值数据压缩方法无效
申请号: | 201110421832.7 | 申请日: | 2011-12-15 |
公开(公告)号: | CN102521363A | 公开(公告)日: | 2012-06-27 |
发明(设计)人: | 郭琰;章涛;吴恒山 | 申请(专利权)人: | 武汉达梦数据库有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 李智 |
地址: | 430073 湖北省武汉*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 分解 存储 数据库 数值 数据压缩 方法 | ||
技术领域
本发明属于计算机中的数据库技术领域,具体涉及一种基于列分解的列存储数据库数值数据压缩方法。
背景技术
随着数据库技术的广泛应用,联机分析处理、数据仓库和数据挖掘等查询密集型应用对数据库管理系统的查询性能提出了更高的挑战。数据压缩技术是提高数据库管理系统的查询性能的方法之一。数据压缩的目的是为了减少I/O,从而提高查询效率。一般利用数据分布规律的特点来达到减少存储空间的目的。但是在查询的过程中,需要对数据进行解压。当解压所花费的时间超过了压缩所带来的数据查找及传输开销节约的时间时,压缩的效果就被抵消了。因此,需要在数据的压缩比和解压开销之间进行折中以保证查询效率。
在联机分析处理、决策支持等应用中,列存储数据库性能优于行存储数据库。原因是:在行存储数据库中,由于数据按照行的格式进行存储,而元组的各个属性的类型很可能不同,所以相邻数据之间关联性不强,使得压缩比不高。在列存储数据库中,数据是按列进行存储的,每一列的类型是一致的,数据之间存在较高的关联性,可以获得较高的压缩比。考虑到解压的时间开销,一般采用轻量级的压缩算法。重量级压缩算法虽然压缩比很高,但是解压的时间开销较大,并且无法在压缩后的数据上直接执行查询。
另外,在列存储数据库中,有一些专门针对字符型数据进行压缩的方法,以获取压缩比和解压开销之间的平衡。但是,专门针对数值型数据进行压缩的方法比较少。对于数值型的数据,如果其本身具有一定的分布规律,则可以利用轻量级压缩算法进行压缩。但是,当其本身并没有明显的分布规律时,就无法直接利用轻量级压缩算法进行压缩,需要研究更好的数值数据压缩方法。
发明内容
本发明的目的在于提供一种基于列分解的列存储数据库数值数据压缩方法,同时适用于数值型数据有明显分布规律和无明显分布规律的情况。
基于列分解的列存储数据库数值数据压缩方法,具体为:基于列分解的列存储数据库数值数据压缩方法,具体为:提取数据表中的一列数据,将所述列数据中的每个数据分解得到多个子列,每个子列内的不同数据占用空间相等,在每个子列内统计数据分布规律的特征值,依据所述数据分布规律的特征值选取相应的轻量级压缩算法对所述子列进行压缩。
所述子列中的每个数据占用空间为字节或字节的倍数。
所述不同子列中的数据占用空间相等或不相等。
所述轻量级压缩算法为字典编码压缩法、位图编码压缩法、行程编码压缩法、FOR编码压缩法中的一种。
本发明的技术效果体现在:
本发明将没有规律的数值数据列分解为若干个子列,然后分别在分解后的子列数据中统计数据分布规律的特征值,选择合适的轻量级压缩算法作为子列的数据压缩算法,分别对各个子列数据进行压缩,从而实现对没有规律的数值数据列的部分压缩。同样地,本发明也可适用于有规律的数值数据列压缩。
附图说明
图1为本发明方法工作流程图。
图2为本发明实例压缩后的存储示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述,但该实施例不应理解为对本发明的限制。
参考图1,基于列分解的列存储数据库数值数据压缩方法,具体为:提取数据表中的一列数据,将所述列数据中的每个数据分解从而得到多个子列,每个子列中的各数据占用空间相等,对每个子列统计数据分布规律的特征值,依据所述数据分布规律的特征值选取适当的轻量级压缩算法对所述子列进行压缩。
所述子列中的每个数据占用空间为字节或字节的倍数。所述不同子列中的数据占用空间相等或不相等。
对于每个待压缩的子列数据,扫描整个子列上的数据,统计数据分布规律的特征值,根据这些特征值计算采用各种轻量级压缩算法压缩后子列数据的占用空间,选择占用空间最小的作为压缩算法,对该子列数据进行压缩后存储。所述轻量级压缩算法为字典编码压缩法、位图编码压缩法、行程编码压缩法、FOR编码压缩法中的一种。
在数值数据列上进行的查询,则转换成在这S个子列上的查询,包括等值查询和范围查询两种情况,将查询条件中的值进行分解,转换为对这S个子列上的等值查询和范围查询,使得查询可以直接在压缩的子列数据上进行,将各个子列上的查询结果集求交,得到最终的查询结果。
实施例:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库有限公司,未经武汉达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110421832.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:管道式流体面筋破碎均质装置
- 下一篇:汽车冷暖电动空调系统