CN102609491A - 一种基于列存储的区级数据压缩方法 - Google Patents
一种基于列存储的区级数据压缩方法 Download PDFInfo
- Publication number
- CN102609491A CN102609491A CN2012100199459A CN201210019945A CN102609491A CN 102609491 A CN102609491 A CN 102609491A CN 2012100199459 A CN2012100199459 A CN 2012100199459A CN 201210019945 A CN201210019945 A CN 201210019945A CN 102609491 A CN102609491 A CN 102609491A
- Authority
- CN
- China
- Prior art keywords
- district
- compression method
- data
- statistic
- representes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及一种基于列存储的数据压缩方法,其特征在于包括以下步骤:步骤1、将按列存储的数据进一步划分为多个区;步骤2、为区中的数据定义一组统计信息;步骤3、利用步骤2中的统计信息,为每一个区按顺序定义一组统计量,进行该区数据分布特点的量化估计;步骤4、利用学习得到的区的统计量计算相邻两区之间的相似因子;步骤5、对于一列中的第一个区,依次计算各个统计量的值,采用逐步选择的方法,根据统计值进行压缩方法选择;步骤6、对于剩余第i个区,利用该区的统计值计算相邻两区之间的相似因子;若相似性较高,则直接沿用上一区的压缩策略,否则按照步骤5中压缩方法选择方式,重新选择压缩方法;步骤7、对当前区按获得的压缩方法进行压缩。本发明提供了一种基于列存储的压缩方法,按区进行压缩,并设计了高效的压缩策略选择方法,能够有效的支持面向列存储的海量数据管理。
Description
技术领域
本发明涉及一种基于列存储的区级压缩方法。
背景技术
目前,数据仓库等分析型应用中包含的数据量急剧增加,为了提高读优化(read-optimized)系统的性能,人们开始考虑一种与传统行存储不同的存储方式-----列存储。列存储技术是将数据表以列为单位进行存储,数据表记录中的同一属性值被存储在一起。在进行查询的时候,只需要将需要的列读入内存,减少了读入的数据量,使得系统的查询效率得到提高。然而,数据仓库需要处理的数据量是非常庞大的,这造成查询时大量的I/O。由于CPU处理与磁盘访问发展的不平衡,使得I/O成为了查询的瓶颈。因此,减少I/O的次数能显著的提高查询的效率。而数据压缩则能在一定程度上减少I/O的次数。列存储中,数据具有相同的数据类型,相邻数据之间具有较高的相似性,使得列存储系统和传统的行存储系统相比具有更好的压缩效率。因此,基于列存储的数据压缩成为了一个研究的热点。
研究表明,不同压缩方法对同种数据类型的压缩效果是不同的,同样相同的压缩方法对不同类型数据的压缩效果也是不同的。因此,对不同的数据类型采用不同的压缩方法十分必要。现存的基于列存储的压缩技术往往是建立在整个列上面的,即这些方法将一个列的数据采用同一种压缩方式进行压缩,忽略了局部数据在分布上存在着差异性。由此看来在较小的粒度上面进行压缩可以提高压缩率。然而,为每个区进行学习时间复杂度高,并不可行。因此,如何设计有效的压缩方法成为一项迫切需要解决的任务。
发明内容
本发明的目的是提供一种基于列存储的压缩方法,克服传统方法的局限性,提高压缩率,减少压缩的复杂度。
为了达到上述目的,本发明的技术方案是提供了一种基于列存储的区级数据压缩方法,其特征在于,步骤为:
步骤1、对于按列列存储的数据,任意一个列Ai中的数据在逻辑上对应一个数据段Si,Si∈S,S为所有数据段的集合,将每个数据段均匀分为若干个区,区是一系列连续块的集合;
步骤2、定义一组统计信息,记为集合Ti={t,o,r,s,a,d,n,c,l},其中t表示第i个区的数据类型,o表示i个区是否排序,r表示第i个区中item的数目,s表示区中相同值的数目,a表示区中相同值的总的item条数,d表示区中不同值的数,n表示区中空值的数目,c表示区中相同值连续的平均数目,l表示区中item的平均长度;
步骤3、在步骤2的基础上按顺序定义一组统计量,第i个区的该组统计量记为各统计量分别描述第i区中数据分布的不同特点,依次对应于:区的数据类型,为枚举类型,包括整型、浮点型、字符型、布尔型、变长字符等,区中数据是否排序,区中空值记录所占的百分比,区中相同值所占的百分比,区中相同值连续的平均数目,区中不同值的数目,区中连续块的平均长度;
步骤5、对于一列中的第一个区,利用统计量进行压缩方法选择;
步骤6、对于剩余的第i个区,利用步骤4获得其与前一区的相似因子,若相似性较高,则直接沿用上一区的压缩策略,否则利用步骤3中当前区统计值,重新选择压缩方法;
步骤7、对该区按获得的压缩方法进行压缩。
优选地,所述步骤5的特点为采用逐步选择的方式,按顺序依次计算qi中各统计量的值,并根据统计值逐步进行压缩方法选择,将选择过程中最后使用到的统计量下标保存在变量j中。
优选地,所述步骤6的特点为无需为每个区进行所有统计量的学习,利用同一列数据的分布相似性进行压缩方法推荐,减少压缩复杂度,具体为:
6.2、否则,获取当前区的其它统计信息,重复步骤5中选择压缩方法的过程,获取当前区的压缩方法。
本发明的优点是:提供了一种基于列存储的压缩方法,按区进行压缩,并设计了高效的压缩策略选择方法,能够有效的支持面向列存储的海量数据管理。
具体实施方式
为使本发明更明显易懂,兹以一优选实施例详细说明如下。
本发明提供了一种基于列存储的区级数据压缩方法,其步骤为:
步骤1、对于按列列存储的数据,任意一个列Ai中的数据在逻辑上对应一个数据段Si,Si∈S,S为所有数据段的集合,将每个数据段均匀分为若干个区,区是一系列连续块的集合,块中依次存放该列的数据记录(以下记为item);
步骤2、定义一组统计信息,第i个区的统计信息记为集合Ti={t,o,r,s,a,d,n,c,l},其中t表示第i个区的数据类型,o表示i个区是否排序,r表示第i个区中item的数目,s表示区中相同值的数目,a表示区中相同值的总的item条数,d表示区中不同值的数,n表示区中空值的数目,c表示区中相同值连续的平均数目,l表示区中item的平均长度;
步骤3、在步骤2的基础上按顺序定义一组统计量,第i个区的该组统计量记为qi中各统计量的值分别描述第i区中数据分布的不同特点,依次对应于:区的数据类型,包括整型、浮点型、字符型、布尔型、变长字符等,区中数据是否排序,区中空值记录所占的百分比,区中相同值所占的百分比,区中相同值连续的平均数目,区中不同值的数目,区中连续块的平均长度。其中统计量的计算方式如下:
步骤5、对于一列中的第一个区,利用步骤2和3,按顺序依次计算该区的各统计值,在现有的压缩方法中选择一个压缩方法,可供选择的压缩方法包括字典编码、游程编码、位图编码、空值编码、整数编码、LZ编码。由于使用LZ编码压缩的数据在查询过程中需全部解压缩,时间复杂度较高,上述过程将其放在压缩策略选择的最后一步。将选择过程中最后使用到的统计值下标保存在变量j中。选择压缩方法的规则如下:
1)初始化推荐压缩策略(以下简称为mtemp)=不压缩;
其中,σ1,σ2,σ3,σ4,σ5是用来估计压缩算法的阈值,其具体取值根据数据特点经验给出。
步骤6、对于剩余的区采取基于区的压缩模式。无需对每个区进行压缩方法学习和选择,利用局部连续区之间的数据分布一般情况下具有一致性的特点,进行压缩策略推荐,其步骤为:首先利用步骤4中得到的相似因子,若相似性较高,则直接沿用上一区的压缩策略,否则利用步骤3中当前区的统计量,进行压缩方法的修正,其具体过程如下:
2)、否则,获取当前区的其它统计信息,重复步骤5中选择压缩方法的过程,获取当前区的压缩方法步骤
7、对当前区按获得的压缩方法进行压缩。
Claims (3)
1.一种基于列存储的区级数据压缩方法,其特征在于,步骤为:
步骤1、对于按列列存储的数据,任意一个列Ai中的数据在逻辑上对应一个数据段Si,Si∈S,S为所有数据段的集合,将每个数据段均匀分为若干个区,区是一系列连续块的集合;
步骤2、定义一组统计信息,记为集合Ti={t,o,s,a,d,n,c,l},其中t表示第i个区的数据类型,o表示i个区是否排序,r表示第i个区中item的数目,s表示区中相同值的数目,a表示区中相同值的总的item条数,d表示区中不同值的数,n表示区中空值的数目,c表示区中相同值连续的平均数目,l表示区中item的平均长度;
步骤3、在步骤2的基础上按顺序定义一组统计量,第i个区的该组统计量记为各统计量分别描述第i区中数据分布的不同特点,依次对应于:区的数据类型,为枚举类型,包括整型、浮点型、字符型、布尔型、变长字符等,区中数据是否排序,区中空值记录所占的百分比,区中相同值所占的百分比,区中相同值连续的平均数目,区中不同值的数目,区中连续块的平均长度;
步骤5、对于一列中的第一个区,利用统计量进行压缩方法选择;
步骤6、对于剩余的第i个区,利用步骤4获得其与前一区的相似因子,若相似性较高,则直接沿用上一区的压缩策略,否则利用步骤3中当前区统计值,重新选择压缩方法;
步骤7、对当前区按获得的压缩方法进行压缩。
2.如权利要求1所述的一种基于列存储的区级数据压缩方法,其特征在于,所述步骤5的特点为采用逐步选择的方式,按顺序依次计算qi中各统计量的值,并根据统计值逐步进行压缩方法选择,将选择过程中最后使用到的统计量下标保存在变量j中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100199459A CN102609491A (zh) | 2012-01-20 | 2012-01-20 | 一种基于列存储的区级数据压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100199459A CN102609491A (zh) | 2012-01-20 | 2012-01-20 | 一种基于列存储的区级数据压缩方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102609491A true CN102609491A (zh) | 2012-07-25 |
Family
ID=46526863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100199459A Pending CN102609491A (zh) | 2012-01-20 | 2012-01-20 | 一种基于列存储的区级数据压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102609491A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462334A (zh) * | 2014-12-03 | 2015-03-25 | 天津南大通用数据技术股份有限公司 | 一种列存数据库的数据压缩方法及装置 |
CN106156037A (zh) * | 2015-03-26 | 2016-11-23 | 深圳市腾讯计算机系统有限公司 | 数据处理方法、装置及系统 |
CN106250523A (zh) * | 2016-08-04 | 2016-12-21 | 北京国电通网络技术有限公司 | 一种分布式列存储系统索引的方法 |
CN106557469A (zh) * | 2015-09-24 | 2017-04-05 | 阿里巴巴集团控股有限公司 | 一种处理数据仓库中数据的方法及装置 |
CN106649344A (zh) * | 2015-10-31 | 2017-05-10 | 华为数字技术(苏州)有限公司 | 一种网络日志压缩方法和装置 |
CN107193925A (zh) * | 2017-05-15 | 2017-09-22 | 浙江正泰中自控制工程有限公司 | 一种基于列式存储技术的实时数据压缩算法 |
WO2018036290A1 (zh) * | 2016-08-26 | 2018-03-01 | 华为技术有限公司 | 一种数据压缩方法及终端 |
CN108319714A (zh) * | 2018-02-08 | 2018-07-24 | 中国人民公安大学 | 一种基于HBase的列存储压缩方法 |
CN109033271A (zh) * | 2018-07-10 | 2018-12-18 | 上海达梦数据库有限公司 | 基于列存储的数据插入方法、装置、服务器及存储介质 |
CN111010189A (zh) * | 2019-10-21 | 2020-04-14 | 清华大学 | 一种对数据集的多路压缩方法、装置及存储介质 |
CN115269940A (zh) * | 2022-09-30 | 2022-11-01 | 佳卓智能科技(南通)有限责任公司 | 一种erp管理系统的数据压缩方法 |
CN117194355A (zh) * | 2023-11-08 | 2023-12-08 | 本原数据(北京)信息技术有限公司 | 基于数据库的数据处理方法、装置和电子设备 |
CN117235013A (zh) * | 2023-11-10 | 2023-12-15 | 中科数创(临沂)数字科技有限公司 | 一种基于人工智能的智慧档案管理方法 |
CN117435145A (zh) * | 2023-12-20 | 2024-01-23 | 北京清水爱派建筑设计股份有限公司 | 一种数字化建筑信息优化存储方法及系统 |
-
2012
- 2012-01-20 CN CN2012100199459A patent/CN102609491A/zh active Pending
Non-Patent Citations (1)
Title |
---|
王振玺: "列存储数据区级压缩模式与压缩策略选择方式", 《计算机学报》 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462334A (zh) * | 2014-12-03 | 2015-03-25 | 天津南大通用数据技术股份有限公司 | 一种列存数据库的数据压缩方法及装置 |
CN106156037A (zh) * | 2015-03-26 | 2016-11-23 | 深圳市腾讯计算机系统有限公司 | 数据处理方法、装置及系统 |
CN106156037B (zh) * | 2015-03-26 | 2019-11-12 | 深圳市腾讯计算机系统有限公司 | 数据处理方法、装置及系统 |
CN106557469A (zh) * | 2015-09-24 | 2017-04-05 | 阿里巴巴集团控股有限公司 | 一种处理数据仓库中数据的方法及装置 |
CN106557469B (zh) * | 2015-09-24 | 2020-11-20 | 创新先进技术有限公司 | 一种处理数据仓库中数据的方法及装置 |
CN106649344A (zh) * | 2015-10-31 | 2017-05-10 | 华为数字技术(苏州)有限公司 | 一种网络日志压缩方法和装置 |
CN106649344B (zh) * | 2015-10-31 | 2020-01-10 | 华为数字技术(苏州)有限公司 | 一种网络日志压缩方法和装置 |
CN106250523B (zh) * | 2016-08-04 | 2019-04-16 | 北京国电通网络技术有限公司 | 一种分布式列存储系统索引的方法 |
CN106250523A (zh) * | 2016-08-04 | 2016-12-21 | 北京国电通网络技术有限公司 | 一种分布式列存储系统索引的方法 |
WO2018036290A1 (zh) * | 2016-08-26 | 2018-03-01 | 华为技术有限公司 | 一种数据压缩方法及终端 |
CN107193925B (zh) * | 2017-05-15 | 2019-09-20 | 浙江正泰中自控制工程有限公司 | 一种基于列式存储技术的实时数据压缩方法 |
CN107193925A (zh) * | 2017-05-15 | 2017-09-22 | 浙江正泰中自控制工程有限公司 | 一种基于列式存储技术的实时数据压缩算法 |
CN108319714A (zh) * | 2018-02-08 | 2018-07-24 | 中国人民公安大学 | 一种基于HBase的列存储压缩方法 |
CN109033271B (zh) * | 2018-07-10 | 2021-03-02 | 上海达梦数据库有限公司 | 基于列存储的数据插入方法、装置、服务器及存储介质 |
CN109033271A (zh) * | 2018-07-10 | 2018-12-18 | 上海达梦数据库有限公司 | 基于列存储的数据插入方法、装置、服务器及存储介质 |
CN111010189B (zh) * | 2019-10-21 | 2021-10-26 | 清华大学 | 一种对数据集的多路压缩方法、装置及存储介质 |
CN111010189A (zh) * | 2019-10-21 | 2020-04-14 | 清华大学 | 一种对数据集的多路压缩方法、装置及存储介质 |
CN115269940A (zh) * | 2022-09-30 | 2022-11-01 | 佳卓智能科技(南通)有限责任公司 | 一种erp管理系统的数据压缩方法 |
CN117194355A (zh) * | 2023-11-08 | 2023-12-08 | 本原数据(北京)信息技术有限公司 | 基于数据库的数据处理方法、装置和电子设备 |
CN117194355B (zh) * | 2023-11-08 | 2024-02-13 | 本原数据(北京)信息技术有限公司 | 基于数据库的数据处理方法、装置和电子设备 |
CN117235013A (zh) * | 2023-11-10 | 2023-12-15 | 中科数创(临沂)数字科技有限公司 | 一种基于人工智能的智慧档案管理方法 |
CN117235013B (zh) * | 2023-11-10 | 2024-01-30 | 中科数创(临沂)数字科技有限公司 | 一种基于人工智能的智慧档案管理方法 |
CN117435145A (zh) * | 2023-12-20 | 2024-01-23 | 北京清水爱派建筑设计股份有限公司 | 一种数字化建筑信息优化存储方法及系统 |
CN117435145B (zh) * | 2023-12-20 | 2024-02-13 | 北京清水爱派建筑设计股份有限公司 | 一种数字化建筑信息优化存储方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102609491A (zh) | 一种基于列存储的区级数据压缩方法 | |
US9043316B1 (en) | Visual content retrieval | |
CN104348490A (zh) | 一种基于效果优选的组合数据压缩算法 | |
CN103995887A (zh) | 位图索引压缩方法和位图索引解压方法 | |
US9176995B2 (en) | Organization of data within a database | |
CN101241508A (zh) | 结构化数据序列的压缩方法 | |
CN102521363A (zh) | 基于列分解的列存储数据库数值数据压缩方法 | |
CN107229688A (zh) | 一种数据库水平分库分表方法及系统、服务器 | |
CN102737123B (zh) | 一种多维数据分布方法 | |
CN104504101A (zh) | 一种相似视频的确定方法及装置 | |
CN110069644A (zh) | 一种基于深度学习的压缩域大规模图像检索方法 | |
CN104361096B (zh) | 一种基于特征富集区域集合的图像检索方法 | |
CN104881449A (zh) | 基于流形学习数据压缩哈希的图像检索方法 | |
CN116415159B (zh) | 一种海绵城市数据管理方法及系统 | |
CN109582708A (zh) | 一种时序数据库系统 | |
CA3068333C (en) | Systems and methods for intelligently grouping financial product users into cohesive cohorts | |
CN103500224A (zh) | 一种数据写入方法及装置、数据读取方法及装置 | |
CN104462334A (zh) | 一种列存数据库的数据压缩方法及装置 | |
CN104991741B (zh) | 一种基于键值模型的情境适配电网大数据存储方法 | |
CN104933143A (zh) | 获取推荐对象的方法及装置 | |
CN108319714A (zh) | 一种基于HBase的列存储压缩方法 | |
CN109391818B (zh) | 一种基于dct变换的快速搜索分形图像压缩方法 | |
CN104133883A (zh) | 电话号码归属地数据压缩算法 | |
CN108009847A (zh) | 外卖场景下店铺embedding特征提取的方法 | |
CN112734010B (zh) | 一种适用于图像识别的卷积神经网络模型压缩方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120725 |