[发明专利]位图索引压缩方法和位图索引解压方法有效
申请号: | 201410240532.2 | 申请日: | 2014-05-30 |
公开(公告)号: | CN103995887B | 公开(公告)日: | 2017-04-05 |
发明(设计)人: | 彭青松;朱仲颖;汪龙重 | 申请(专利权)人: | 上海达梦数据库有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京品源专利代理有限公司11332 | 代理人: | 邓猛烈,孟金喆 |
地址: | 201203 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 位图 索引 压缩 方法 解压 | ||
技术领域
本发明实施例涉及数据库技术领域,尤其涉及一种位图索引压缩方法和位图索引解压方法。
背景技术
随着计算机信息技术的快速发展,越来越多的用户对海量数据的存储和检索提出了更高的要求。位图索引对应于数据基表中的索引关键字,位图索引在海量数据上的应用是普遍的,例如在数据基表上通过位图索引检索某个产品在某个时间段的销售情况等等。在提升位图索引检索性能的同时,对位图索引存储空间的要求也越来越高,因此位图索引压缩技术应运而生。
现有的位图索引压缩技术,一般是通过计算数据基表的索引关键字对应的位图索引中每个1之前的0的个数,并确定该个数的二进制表示位数,同时通过添加控制信息对该个数的二进制表示位数以及该个数的二进制数进行编码,从而实现数据基表的索引关键字对应的位图索引的压缩存储。
上述位图索引压缩技术的缺陷在于:虽然通过将每个1前面的0的个数用相应位数的二进制记录,可以减少每个1前面的0的个数的存储空间,但在编码中添加的控制信息会导致位图索引的存储空间的增大;而且复杂的编码方式增加了位图索引的解压复杂度,从而影响位图索引的检索查询效率。
发明内容
本发明实施例提供一种位图索引压缩方法及装置,以减小位图索引的存储空间;本发明实施例还提供一种位图索引解压方法及装置,以降低位图索引的解压复杂度,以提高位图索引的检索查询效率。
第一方面,本发明实施例提供了一种位图索引压缩方法,包括:
对于预先建立的数据基表中所包含的索引关键字的位图索引,将该位图索引按预设段宽度分段,得到多段位图信息;
对于各段位图信息,确定该段位图信息中各有效值的偏移值,其中,所述偏移值为对应的有效值在该段位图信息中的位数;根据各有效值的偏移值确定各偏移值的二进制存储位数;根据所述二进制存储位数得到该段位图信息中各偏移值的二进制表示信息,生成并存储该段位图信息的压缩信息,该压缩信息包含各偏移值的二进制表示信息。
第二方面,本发明实施例提供了一种位图索引压缩装置,包括:
分段模块,用于对于预先建立的数据基表中所包含的索引关键字的位图索引,将该位图索引按预设段宽度分段,得到多段位图信息;
偏移值确定模块,用于对于各段位图信息,确定该段位图信息中各有效值的偏移值,其中,所述偏移值为对应的有效值在该段位图信息中的位数;
二进制存储位数确定模块,用于根据各有效值的偏移值确定各偏移值的二进制存储位数;
第一存储模块,用于根据所述二进制存储位数得到该段位图信息中各偏移值的二进制表示信息,生成并存储该段位图信息的压缩信息,该压缩信息包含各偏移值的二进制表示信息。
第三方面,本发明实施例提供了一种位图索引解压方法,包括:
获取数据基表中所包含的索引关键字的位图索引的各段位图信息的压缩信息,其中,所述各段位图信息通过将该位图索引按预设段宽度分段获得,对于各段位图信息的压缩信息,该段位图信息的压缩信息包含二进制表示信息和二进制存储位数,所述二进制表示信息包含该段位图信息中各有效值的偏移值的二进制表示信息;所述二进制存储位数包含该段位图信息中各有效值的偏移值的二进制表示信息的存储位数,所述偏移值为对应的有效值在该段位图信息中的位数;
对于各段位图信息的压缩信息,生成宽度为预设段宽度的初始化位图信息;根据该段位图信息的压缩信息中的二进制存储位数,将该段位图信息的压缩信息中的二进制表示信息转换为十进制信息,得到该段位图信息的压缩信息中各有效值的偏移值;通过将所述初始化位图信息中各有效值的偏移值对应的位设置为有效值,得到该段位图信息的压缩信息对应的解压信息。
第四方面,本发明实施例提供了一种位图索引解压装置,包括:
压缩信息获取模块,用于获取数据基表中所包含的索引关键字的位图索引的各段位图信息的压缩信息,其中,所述各段位图信息通过将该位图索引按预设段宽度分段获得,对于各段位图信息的压缩信息,该段位图信息的压缩信息包含二进制表示信息和二进制存储位数,所述二进制表示信息包含该段位图信息中各有效值的偏移值的二进制表示信息;所述二进制存储位数包含该段位图信息中各有效值的偏移值的二进制表示信息的存储位数,所述偏移值为对应的有效值在该段位图信息中的位数;
初始化位图信息生成模块,用于对于各段位图信息的压缩信息,生成宽度为预设段宽度的初始化位图信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410240532.2/2.html,转载请声明来源钻瓜专利网。