CN105653698A - 一种数据库表Hive Table的数据加载方法和装置 - Google Patents

一种数据库表Hive Table的数据加载方法和装置 Download PDF

Info

Publication number
CN105653698A
CN105653698A CN201511025089.8A CN201511025089A CN105653698A CN 105653698 A CN105653698 A CN 105653698A CN 201511025089 A CN201511025089 A CN 201511025089A CN 105653698 A CN105653698 A CN 105653698A
Authority
CN
China
Prior art keywords
compression
data
algorithm
compression algorithm
loaded
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
Application number
CN201511025089.8A
Other languages
English (en)
Inventor
王猛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201511025089.8A priority Critical patent/CN105653698A/zh
Publication of CN105653698A publication Critical patent/CN105653698A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了一种数据库表Hive?Table的数据加载方法,包括:获取需要加载到数据库表Hive?Table的待加载数据;确定所述待加载数据中的目标数据;采用预设的多个压缩算法对所述目标数据进行压缩处理;依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;将压缩后的待加载数据加载到数据库表Hive?Table中。本申请实施例通过采用符合Hive表数据列值的分布情况的压缩算法,结合自适应决策为待加载数据选择适合其分布特征的压缩算法进行压缩,获得更高的数据压缩,节省更多的存储空间,减少磁盘数据传输量IO,提高Hive查询效率。

Description

一种数据库表Hive Table的数据加载方法和装置
技术领域
本申请涉及数据库技术领域,特别是涉及一种数据库表HiveTable的数据加载方法和一种数据库表HiveTable的数据加载装置。
背景技术
由于Hadoop(分布式系统基础架构)集群写入数据量巨大,并且越来越多的历史数据需要保存到Hive(基于Hadoop的数据仓库工具)来进行深度分析。为此,对海量数据进行压缩十分重要,这能够节省存储成本,减少磁盘IO,进而提高查询效率。而针对Hive数据的分布规律进行压缩则能取得更高的压缩性能.
然而,无论是文本文件TextFile,顺序文件SequenceFile还是列记录文件RecordColumnFile,Hive当前的主流存储结构所支持的压缩算法都是LZO(Lempel-Ziv-Oberhumer),SNAPPY等通用压缩算法。这些压缩算法虽然对存储结构的组织形式没有要求,但是它们并没有利用数据列值之间的分布规律进行压缩。
对于Hive最新的ORC(OptimizedRecordColumnar)以及Parquet存储结构,也仅仅提供了如RunLengthEncoding等少数压缩算法,也没有利用数据列分布规律为其选择最适压缩算法。
然而,通常情况下用户并不知道Hive表的每一个数据列的具体分布情况是怎么样,采用哪种相应的压缩算法进行压缩综合性能更优。因而需要采用针对Hive数据分布规律的自适应压缩算法。
发明内容
鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据库表HiveTable的数据加载方法和相应的一种数据库表HiveTable的数据加载装置。
为了解决上述问题,本申请实施例公开了一种数据库表HiveTable的数据加载方法,包括:
获取需要加载到数据库表HiveTable的待加载数据;
确定所述待加载数据中的目标数据;
采用预设的多个压缩算法对所述目标数据进行压缩处理;
依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;
采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;
将压缩后的待加载数据加载到数据库表HiveTable中。
优选的,所述数据库表HiveTable包括多个数据列,所述数据列包括多个数据页,所述确定所述待加载数据中的目标数据的步骤包括:
确定所述待加载数据中需要加载到所述数据库表HiveTable的任一数据列的第一个数据页中的目标数据;
所述采用所述最优的压缩算法对目标数据之外的其余数据进行压缩的步骤包括:
采用所述最优的压缩算法对需要加载到目标数据所在的数据列中其余数据页的数据进行压缩。
优选的,所述依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法的步骤包括:
确定所述目标数据经过各个压缩算法的压缩处理后的压缩指标;所述压缩指标包括:压缩比、压缩时间、解压缩时间;
采用所述压缩指标计算各个压缩算法的相对压缩比、相对压缩时间和相对解压缩时间;
选取相对压缩比、相对压缩时间与相对解压缩时间之和最少的压缩算法作为最优压缩算法;
所述相对压缩比为将某一个压缩算法的压缩比与各个压缩算法的压缩比相加和的比值乘以预设第一权重;
所述相对压缩时间为将某一个压缩算法的压缩时间与各个压缩算法的压缩时间相加和的比值乘以预设第二权重;
所述相对解压缩时间为将某一个压缩算法的解压缩时间与各个压缩算法的解压缩时间相加和的比值乘以预设第三权重。
优选的,所述预设第一权重大于所述预设第二权重,所述预设第三权重大于所述预设第二权重。
优选的,所述预设的多个压缩算法包括:
位填充压缩算法BitPackingCompression,字典压缩算法DictionaryCompression,运行长度压缩算法RunLengthCompression,变量增量压缩算法DeltaCompression,以及由这几种算法生成的组合算法。
同时,本申请还公开了一种数据库表HiveTable的数据加载装置,包括:
数据获取模块,用于获取需要加载到数据库表HiveTable的待加载数据;
目标数据确定模块,用于确定所述待加载数据中的目标数据;
目标数据压缩模块,用于采用预设的多个压缩算法对所述目标数据进行压缩处理;
最优算法选取模块,用于依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;
其余数据压缩模块,用于采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;
数据加载模块,用于将压缩后的待加载数据加载到数据库表HiveTable中。
优选的,所述数据库表HiveTable包括多个数据列,所述数据列包括多个数据页;
所述目标数据确定模块进一步包括:
列目标数据确定子模块,用于确定所述待加载数据中需要加载到所述数据库表HiveTable的任一数据列的第一个数据页中的目标数据;
所述其余数据压缩模块进一步包括:
列其余数据压缩子模块,用于采用所述最优的压缩算法对需要加载到目标数据所在的数据列中其余数据页的数据进行压缩。
优选的,所述最优算法选取模块进一步包括:
压缩指标确定子模块,用于确定所述目标数据经过各个压缩算法的压缩处理后的压缩指标;所述压缩指标包括:压缩比、压缩时间、解压缩时间;
相对指标计算子模块,用于采用所述压缩指标计算各个压缩算法的相对压缩比、相对压缩时间和相对解压缩时间;
相对指标选取子模块,用于选取相对压缩比、相对压缩时间与相对解压缩时间之和最少的压缩算法作为最优压缩算法;
所述相对压缩比为将某一个压缩算法的压缩比与各个压缩算法的压缩比相加和的比值乘以预设第一权重;
所述相对压缩时间为将某一个压缩算法的压缩时间与各个压缩算法的压缩时间相加和的比值乘以预设第二权重;
所述相对解压缩时间为将某一个压缩算法的解压缩时间与各个压缩算法的解压缩时间相加和的比值乘以预设第三权重。
优选的,所述预设第一权重大于所述预设第二权重,所述预设第三权重大于所述预设第二权重。
优选的,所述预设的多个压缩算法包括:
位填充压缩算法BitPackingCompression,字典压缩算法DictionaryCompression,运行长度压缩算法RunLengthCompression,变量增量压缩算法DeltaCompression,以及由这几种算法生成的组合算法。
本申请实施例包括以下优点:
本申请实施例通过采用符合Hive表数据列值的分布情况的压缩算法,结合自适应决策为待加载数据选择适合其分布特征的压缩算法进行压缩,获得更高的数据压缩,节省更多的存储空间,减少磁盘数据传输量IO,提高Hive查询效率。需要说明的是,本申请实施对加载数据的自适应压缩方法虽然是基于hive数据仓库来进行阐述的,但是该方法对于其他基于Hadoop的面向OLAP(OnlineAnalyticalProcessing,联机分析处理)分析计算的工具如spark,impala,presto,drill等都适用,这些计算工具都可以利用该自适应的压缩算法来节省数据存储空间,减小磁盘数据传输量IO,提高查询效率。
附图说明
图1是本申请的一种数据库表HiveTable的数据加载方法实施例的步骤流程图;
图2是本申请实施例中数据库表HiveTable的示意图;
图3是本申请的一种数据库表HiveTable的数据加载装置实施例的结构框图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例的核心构思之一在于,通过采用符合Hive表数据列值的分布情况的压缩算法,结合自适应决策为待加载数据选择适合其分布特征的压缩算法进行压缩。
参照图1,示出了本申请的一种数据库表HiveTable的数据加载方法实施例的步骤流程图,具体可以包括如下步骤:
步骤101,获取需要加载到数据库表HiveTable的待加载数据;
步骤102,确定所述待加载数据中的目标数据;
步骤103,采用预设的多个压缩算法对所述目标数据进行压缩处理;
步骤104,依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;
步骤105,采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;
步骤106,将压缩后的待加载数据加载到数据库表HiveTable中。
从待加载数据中选取一部分数据作为目标数据,实际中,可以选择多部分的数据作为多个目标数据。
对于目标数据,采用多个符合Hive表数据列值的分布情况的压缩算法进行压缩运算,根据目标数据经各个压缩算法压缩之后的压缩性能,选取压缩性能最好的压缩算法对目标数据之外的数据进行压缩。因而无论待加载数据具有什么样分布规律,都可以根据多个压缩算法的压缩性能,自适应选择性能最优的压缩算法。
在本申请实施例中,所述预设的多个压缩算法具体可以包括:位填充压缩算法BitPackingCompression,字典压缩算法DictionaryCompression,运行长度压缩算法RunLengthCompression,变量增量压缩算法DeltaCompression,以及由这几种算法生成的组合算法。
参照图2所示是本申请实施例中数据库表HiveTable的示意图,数据库表HiveTable包括多个数据列column,每个数据列包括多个数据页page;
在本申请实施例的一种优选示例中,所述步骤102具体可以包括如下子步骤:
子步骤S11,确定所述待加载数据中需要加载到所述数据库表HiveTable的任一数据列的第一个数据页中的目标数据;
由于待加载数据在加载过程中首先加载到数据列的第一个数据页中。因而选择数据列中的第一个数据页的数据作为目标数据。
在本申请实施例的一种优选示例中,所述步骤105具体可以包括一下子步骤:
子步骤S21,采用所述最优的压缩算法对需要加载到目标数据所在的数据列中其余数据页的数据进行压缩。
对于数据列中,除第一数据页中的目标数据外的其他数据,都采用最优的压缩算法进行压缩处理。
最优的压缩算法选择,具体可以根据特定的压缩指标来选择。在本申请实施例的一种优选示例中,所述步骤104具体可以包括如下子步骤:
子步骤S31,确定所述目标数据经过各个压缩算法的压缩处理后的压缩指标;所述压缩指标可以包括:压缩比、压缩时间、解压缩时间;
其中,压缩比、压缩时间、解压缩时间可以通过将经过压缩处理之后的数据,与不经任何压缩处理的平滑编码进行计算得到。
子步骤S32,采用所述压缩指标计算各个压缩算法的相对压缩比、相对压缩时间和相对解压缩时间;
子步骤S33,选取相对压缩比、相对压缩时间与相对解压缩时间之和最少的压缩算法作为最优压缩算法。
其中,所述相对压缩比为将某一个压缩算法的压缩比与各个压缩算法的压缩比相加和的比值乘以预设第一权重;
所述相对压缩时间为将某一个压缩算法的压缩时间与各个压缩算法的压缩时间相加和的比值乘以预设第二权重;
所述相对解压缩时间为将某一个压缩算法的解压缩时间与各个压缩算法的解压缩时间相加和的比值乘以预设第三权重。
例如,假设有算法A,B,C三种压缩算法。
则算法A的相对压缩比为:算法A压缩比/(算法A压缩比+算法B压缩比+算法C压缩比)*第一权重;
算法A的相对压缩时间为:算法A压缩时间/(算法A压缩时间+算法B压缩时间+算法C压缩时间)*第二权重;
算法A的相对解压缩时间为:算法A解压缩时间/(算法A解压缩时间+算法B解压缩时间+算法C解压缩时间)*第三权重;
三个相对压缩指标之和最小的压缩算法,即为当前目标数据的最优算法。
鉴于Hive的数据更多的是用于查询而非只进行存储却很少进行查询的冷数据,在本申请实施例的一种优选示例中,
设置预设第一权重大于所述预设第二权重,所述预设第三权重大于所述预设第二权重。
由于Hive中的数据更多用于查询,因此,设置相对压缩比的第一权重大于相对压缩时间的第二权重,设置相对解压缩时间的第三权重大于相对压缩时间的第二权重。
在具体实现中,可以将第一权重设置为0.4,第二权重设置为0.2,第三权重设置为0.4;当然,权重的设置可以根据实际情况进行调整,本申请对此不作限定。
需要说明的是,本申请实施对加载数据的自适应压缩方法虽然是基于hive数据仓库来进行阐述的,但是该方法对于其他基于Hadoop的面向OLAP(OnlineAnalyticalProcessing,联机分析处理)分析计算的工具如spark,impala,presto,drill等都适用,这些计算工具都可以利用该自适应的压缩算法来节省数据存储空间,减小磁盘数据传输量IO,提高查询效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图3,示出了本申请的一种数据库表HiveTable的数据加载装置实施例的结构框图,具体可以包括如下模块:
数据获取模块31,用于获取需要加载到数据库表HiveTable的待加载数据;
目标数据确定模块32,用于确定所述待加载数据中的目标数据;
目标数据压缩模块33,用于采用预设的多个压缩算法对所述目标数据进行压缩处理;
最优算法选取模块34,用于依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;
其余数据压缩模块35,用于采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;
数据加载模块36,用于将压缩后的待加载数据加载到数据库表HiveTable中。
作为本申请实施例的一种优选示例,所述数据库表HiveTable包括多个数据列,所述数据列包括多个数据页;
所述目标数据确定模块进一步包括:
列目标数据确定子模块,用于确定所述待加载数据中需要加载到所述数据库表HiveTable的任一数据列的第一个数据页中的目标数据;
所述其余数据压缩模块进一步包括:
列其余数据压缩子模块,用于采用所述最优的压缩算法对需要加载到目标数据所在的数据列中其余数据页的数据进行压缩。
作为本申请实施例的一种优选示例,所述最优算法选取模块进一步包括:
压缩指标确定子模块,用于确定所述目标数据经过各个压缩算法的压缩处理后的压缩指标;所述压缩指标包括:压缩比、压缩时间、解压缩时间;
相对指标计算子模块,用于采用所述压缩指标计算各个压缩算法的相对压缩比、相对压缩时间和相对解压缩时间;
相对指标选取子模块,用于选取相对压缩比、相对压缩时间与相对解压缩时间之和最少的压缩算法作为最优压缩算法。
所述相对压缩比为将某一个压缩算法的压缩比与各个压缩算法的压缩比相加和的比值乘以预设第一权重;
所述相对压缩时间为将某一个压缩算法的压缩时间与各个压缩算法的压缩时间相加和的比值乘以预设第二权重;
所述相对解压缩时间为将某一个压缩算法的解压缩时间与各个压缩算法的解压缩时间相加和的比值乘以预设第三权重。
作为本申请实施例的一种优选示例,所述预设第一权重大于所述预设第二权重,所述预设第三权重大于所述预设第二权重。
作为本申请实施例的一种优选示例,所述预设的多个压缩算法包括:
位填充压缩算法BitPackingCompression,字典压缩算法DictionaryCompression,运行长度压缩算法RunLengthCompression,变量增量压缩算法DeltaCompression,以及由这几种算法生成的组合算法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种数据库表HiveTable的数据加载方法和一种数据库表HiveTable的数据加载装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种数据库表HiveTable的数据加载方法,其特征在于,所述的方法包括:
获取需要加载到数据库表HiveTable的待加载数据;
确定所述待加载数据中的目标数据;
采用预设的多个压缩算法对所述目标数据进行压缩处理;
依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;
采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;
将压缩后的待加载数据加载到数据库表HiveTable中。
2.根据权利要求1所述的方法,其特征在于,所述数据库表HiveTable包括多个数据列,所述数据列包括多个数据页,所述确定所述待加载数据中的目标数据的步骤包括:
确定所述待加载数据中需要加载到所述数据库表HiveTable的任一数据列的第一个数据页中的目标数据;
所述采用所述最优的压缩算法对目标数据之外的其余数据进行压缩的步骤包括:
采用所述最优的压缩算法对需要加载到目标数据所在的数据列中其余数据页的数据进行压缩。
3.根据权利要求2所述的方法,其特征在于,所述依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法的步骤包括:
确定所述目标数据经过各个压缩算法的压缩处理后的压缩指标;所述压缩指标包括:压缩比、压缩时间、解压缩时间;
采用所述压缩指标计算各个压缩算法的相对压缩比、相对压缩时间和相对解压缩时间;
选取相对压缩比、相对压缩时间与相对解压缩时间之和最少的压缩算法作为最优压缩算法;
所述相对压缩比为将某一个压缩算法的压缩比与各个压缩算法的压缩比相加和的比值乘以预设第一权重;
所述相对压缩时间为将某一个压缩算法的压缩时间与各个压缩算法的压缩时间相加和的比值乘以预设第二权重;
所述相对解压缩时间为将某一个压缩算法的解压缩时间与各个压缩算法的解压缩时间相加和的比值乘以预设第三权重。
4.根据权利要求3所述的方法,其特征在于,所述预设第一权重大于所述预设第二权重,所述预设第三权重大于所述预设第二权重。
5.根据权利要求4所述的方法,其特征在于,所述预设的多个压缩算法包括:
位填充压缩算法BitPackingCompression,字典压缩算法DictionaryCompression,运行长度压缩算法RunLengthCompression,变量增量压缩算法DeltaCompression,以及由这几种算法生成的组合算法。
6.一种数据库表HiveTable的数据加载装置,其特征在于,所述的装置包括:
数据获取模块,用于获取需要加载到数据库表HiveTable的待加载数据;
目标数据确定模块,用于确定所述待加载数据中的目标数据;
目标数据压缩模块,用于采用预设的多个压缩算法对所述目标数据进行压缩处理;
最优算法选取模块,用于依据所述目标数据经过各个压缩算法的压缩处理后的压缩结果选取最优的压缩算法;
其余数据压缩模块,用于采用所述最优的压缩算法对目标数据之外的其余数据进行压缩;
数据加载模块,用于将压缩后的待加载数据加载到数据库表HiveTable中。
7.根据权利要求6所述的装置,其特征在于,所述数据库表HiveTable包括多个数据列,所述数据列包括多个数据页;
所述目标数据确定模块进一步包括:
列目标数据确定子模块,用于确定所述待加载数据中需要加载到所述数据库表HiveTable的任一数据列的第一个数据页中的目标数据;
所述其余数据压缩模块进一步包括:
列其余数据压缩子模块,用于采用所述最优的压缩算法对需要加载到目标数据所在的数据列中其余数据页的数据进行压缩。
8.根据权利要求7所述的装置,其特征在于,
所述最优算法选取模块进一步包括:
压缩指标确定子模块,用于确定所述目标数据经过各个压缩算法的压缩处理后的压缩指标;所述压缩指标包括:压缩比、压缩时间、解压缩时间;
相对指标计算子模块,用于采用所述压缩指标计算各个压缩算法的相对压缩比、相对压缩时间和相对解压缩时间;
相对指标选取子模块,用于选取相对压缩比、相对压缩时间与相对解压缩时间之和最少的压缩算法作为最优压缩算法;
所述相对压缩比为将某一个压缩算法的压缩比与各个压缩算法的压缩比相加和的比值乘以预设第一权重;
所述相对压缩时间为将某一个压缩算法的压缩时间与各个压缩算法的压缩时间相加和的比值乘以预设第二权重;
所述相对解压缩时间为将某一个压缩算法的解压缩时间与各个压缩算法的解压缩时间相加和的比值乘以预设第三权重。
9.根据权利要求8所述的装置,其特征在于,所述预设第一权重大于所述预设第二权重,所述预设第三权重大于所述预设第二权重。
10.根据权利要求9所述的装置,其特征在于,所述预设的多个压缩算法包括:
位填充压缩算法BitPackingCompression,字典压缩算法DictionaryCompression,运行长度压缩算法RunLengthCompression,变量增量压缩算法DeltaCompression,以及由这几种算法生成的组合算法。
CN201511025089.8A 2015-12-30 2015-12-30 一种数据库表Hive Table的数据加载方法和装置 Pending CN105653698A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511025089.8A CN105653698A (zh) 2015-12-30 2015-12-30 一种数据库表Hive Table的数据加载方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511025089.8A CN105653698A (zh) 2015-12-30 2015-12-30 一种数据库表Hive Table的数据加载方法和装置

Publications (1)

Publication Number Publication Date
CN105653698A true CN105653698A (zh) 2016-06-08

Family

ID=56491069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511025089.8A Pending CN105653698A (zh) 2015-12-30 2015-12-30 一种数据库表Hive Table的数据加载方法和装置

Country Status (1)

Country Link
CN (1) CN105653698A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108197168A (zh) * 2017-12-18 2018-06-22 中国移动通信集团广东有限公司 一种数据压缩方法、设备和计算机可读存储介质
CN108322220A (zh) * 2018-02-08 2018-07-24 华为技术有限公司 编解码方法、装置及编解码设备
CN109800782A (zh) * 2018-12-11 2019-05-24 国网甘肃省电力公司金昌供电公司 一种基于模糊knn算法的电网故障检测方法及装置
CN110222009A (zh) * 2019-05-28 2019-09-10 咪咕文化科技有限公司 一种Hive入库异常文件自动处理方法及装置
CN110232050A (zh) * 2019-04-24 2019-09-13 深圳点猫科技有限公司 一种基于编程语言对文件进行压缩的方法和电子设备
CN111061722A (zh) * 2018-10-16 2020-04-24 阿里巴巴集团控股有限公司 一种数据压缩、数据解压缩方法、装置及设备
CN111782734A (zh) * 2019-04-04 2020-10-16 华为技术服务有限公司 数据压缩、解压方法和装置
CN113452378A (zh) * 2021-06-28 2021-09-28 国网北京市电力公司 孪生数据的压缩方法、装置与计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090157712A1 (en) * 2007-12-14 2009-06-18 Bmc Software, Inc. Dynamic Compression of Systems Management Data
CN103729429A (zh) * 2013-12-26 2014-04-16 浪潮电子信息产业股份有限公司 一种基于HBase压缩方法
CN104348490A (zh) * 2014-11-14 2015-02-11 北京东方国信科技股份有限公司 一种基于效果优选的组合数据压缩算法
CN104462334A (zh) * 2014-12-03 2015-03-25 天津南大通用数据技术股份有限公司 一种列存数据库的数据压缩方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090157712A1 (en) * 2007-12-14 2009-06-18 Bmc Software, Inc. Dynamic Compression of Systems Management Data
CN103729429A (zh) * 2013-12-26 2014-04-16 浪潮电子信息产业股份有限公司 一种基于HBase压缩方法
CN104348490A (zh) * 2014-11-14 2015-02-11 北京东方国信科技股份有限公司 一种基于效果优选的组合数据压缩算法
CN104462334A (zh) * 2014-12-03 2015-03-25 天津南大通用数据技术股份有限公司 一种列存数据库的数据压缩方法及装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108197168A (zh) * 2017-12-18 2018-06-22 中国移动通信集团广东有限公司 一种数据压缩方法、设备和计算机可读存储介质
CN108322220A (zh) * 2018-02-08 2018-07-24 华为技术有限公司 编解码方法、装置及编解码设备
CN111061722A (zh) * 2018-10-16 2020-04-24 阿里巴巴集团控股有限公司 一种数据压缩、数据解压缩方法、装置及设备
CN111061722B (zh) * 2018-10-16 2023-06-06 阿里巴巴集团控股有限公司 一种数据压缩、数据解压缩方法、装置及设备
CN109800782A (zh) * 2018-12-11 2019-05-24 国网甘肃省电力公司金昌供电公司 一种基于模糊knn算法的电网故障检测方法及装置
CN111782734A (zh) * 2019-04-04 2020-10-16 华为技术服务有限公司 数据压缩、解压方法和装置
CN111782734B (zh) * 2019-04-04 2024-04-12 华为技术服务有限公司 数据压缩、解压方法和装置
CN110232050A (zh) * 2019-04-24 2019-09-13 深圳点猫科技有限公司 一种基于编程语言对文件进行压缩的方法和电子设备
CN110222009A (zh) * 2019-05-28 2019-09-10 咪咕文化科技有限公司 一种Hive入库异常文件自动处理方法及装置
CN110222009B (zh) * 2019-05-28 2021-08-06 咪咕文化科技有限公司 一种Hive入库异常文件自动处理方法及装置
CN113452378A (zh) * 2021-06-28 2021-09-28 国网北京市电力公司 孪生数据的压缩方法、装置与计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN105653698A (zh) 一种数据库表Hive Table的数据加载方法和装置
TWI603211B (zh) Construction of inverted index system based on Lucene, data processing method and device
US9048862B2 (en) Systems and methods for selecting data compression for storage data in a storage system
US8219564B1 (en) Two-dimensional indexes for quick multiple attribute search in a catalog system
JP6338817B2 (ja) データベースミドルウェアを用いたデータ管理システム及びその方法
CN104715039A (zh) 基于硬盘和内存的列式存储和查询方法及设备
CN104348490A (zh) 一种基于效果优选的组合数据压缩算法
US10678779B2 (en) Generating sub-indexes from an index to compress the index
EP3289484B1 (en) Method and database computer system for performing a database query using a bitmap index
CN108897761A (zh) 一种聚簇存储方法及装置
US8854239B2 (en) Data processing apparatus and method
CN103678408A (zh) 一种查询数据的方法及装置
CN106897280A (zh) 数据查询方法及装置
CN106970929A (zh) 数据导入方法及装置
CN105553937A (zh) 数据压缩的系统和方法
CN112579714A (zh) 数据查询方法、装置、设备及机器可读存储介质
CN103365923A (zh) 用于评估数据库的分区方案的方法和装置
CN103049561B (zh) 一种数据压缩方法、存储引擎及存储系统
CN105138527A (zh) 一种数据分类回归方法及装置
CN104462080A (zh) 针对检索结果进行分组统计的索引结构创建方法和系统
Crume et al. Compressing intermediate keys between mappers and reducers in scihadoop
Li et al. Optimizational method of HBase multi-dimensional data query based on Hilbert space-filling curve
CN105630999A (zh) 服务器压缩数据的方法和装置
CN105528463A (zh) 一种搜索引擎的索引数据加载方法和装置
CN116126901A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160608