任务数据压缩切换方法、宜压缩程度评价方法及相关装置与流程

文档序号:11285954阅读:196来源:国知局
任务数据压缩切换方法、宜压缩程度评价方法及相关装置与流程

本发明涉及数据库技术领域,尤其涉及一种计算平台任务数据压缩切换方法、宜压缩程度评价方法及相关装置。



背景技术:

一个大型的计算平台,例如分布式计算集群上,通常会同时运行大量的计算任务;一些情况下,计算平台会对这些计算任务的中间过程和输出结果产生的数据进行压缩,以减轻磁盘存储压力及后续对数据的网络传输压力。相关技术中,普遍通过预设参数来判定是否对这些任务数据进行压缩,即只要预设参数表示对任务数据进行压缩,则无论其他实际情况如何,一律对任务数据进行压缩,反之,只要预设参数表示不对任务数据进行压缩,则无论其他实际情况如何,都不会压缩任务数据。

实际应用中,上述对任务数据的压缩控制方式存在很多弊端。例如,在预设参数表示对任务数据进行压缩的情况下,所有计算任务产生的数据都进行压缩,使得任务执行需要消耗更多的时间,特别是在计算任务量很大时,会大大降低计算平台的任务执行效率;反之在预设参数表示不对任务数据进行压缩的情况下,所有计算任务产生的数据都不压缩,会给计算平台的磁盘存储及网络传输带来巨大的压力。



技术实现要素:

为克服相关技术的问题,本申请提供一种计算平台任务数据压缩切换方法、宜压缩程度评价方法及相关装置。

本申请第一方面,提供一种计算平台任务数据压缩切换方法,包括:

针对所述计算平台,获取表征支持对其任务数据进行压缩的正向压缩指标,以及表征不支持对其任务数据进行压缩的的负向压缩指标;

根据所述正向压缩指标和所述负向压缩指标,判断所述计算平台是否符合压缩切换条件;

如果所述计算平台符合压缩切换条件,则压缩计算平台的任务数据,否则,不压缩计算平台的任务数据。

结合第一方面,在本申请第一方面第一种可行的实施方式中,针对所述计算平台,

所述获取表征支持对其任务数据进行压缩的正向压缩指标,包括:获取所述计算平 台的cpu余量和内存余量中的至少一项;

所述获取表征不支持对其任务数据进行压缩的负向压缩指标,包括:获取所述计算平台的磁盘余量和网络传输余量中的至少一项。

结合第一方面,或者第一方面第一种可行的实施方式,在本申请第一方面第二种可行的实施方式中,根据所述正向压缩指标和所述负向压缩指标,判断所述计算平台是否符合压缩切换条件,包括:

根据所述正向压缩指标计算所述正向压缩指数;其中,所述正向压缩指数与所述正向压缩指标正相关;

根据所述负向压缩指标计算所述负向压缩指数;其中,所述负向压缩指数与所述负向压缩指标正相关;

根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件。

结合第一方面第二种可行的实施方式,在本申请第一方面第三种可行的实施方式中,根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件,包括:

根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数;

判断所述压缩切换指数是否在预设压缩区间内,如果是,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

结合第一方面第二种可行的实施方式,在本申请第一方面第四种可行的实施方式中,根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件,包括:

比较所述正向压缩切换指数与预设正向压缩阈值,并比较所述负向压缩切换指数与预设反向压缩阈值;

如果所述正向压缩指数不小于所述正向压缩阈值且所述反向压缩指数不大于所述反向压缩阈值,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

本申请第二方面,提供一种计算平台任务数据宜压缩程度评价方法,包括:

获取表征支持对所述计算平台任务数据进行压缩的正向压缩指标;

获取表征不支持对所述计算平台任务数据进行压缩的负向压缩指标;

根据所述正向压缩指标和所述负向压缩指标,确定表征所述计算平台任务数据宜压缩程度的压缩切换指数。

结合第二方面,在第二方面第一种可行的实施方式中,所述获取所述计算平台的正向压缩指标,包括:

获取计算平台的cpu余量和内存余量中的至少一个;

所述获取所述计算平台的反向压缩指标,包括:

获取所述计算平台的磁盘余量和网络传输余量中的至少一个。

结合第二方面,或者第二方面第一种可行的实施方式,在第二方面第二种可行的实施方式中,根据所述正向压缩指标和所述负向压缩指标,确定所述计算平台的压缩切换指数,包括

根据所述正向压缩指标计算正向压缩指数;其中,所述正向压缩指数与所述正向压缩指标正相关;

根据所述反向压缩指标计算反向压缩指数;其中,所述反向压缩指数与所述反向压缩指标正相关;

根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数。

本申请第三方面,提供一种计算平台任务数据压缩切换装置,包括:

指标获取单元,用于针对所述计算平台,获取表征支持对其任务数据进行压缩的正向压缩指标,以及表征不支持对其任务数据进行压缩的的负向压缩指标;

压缩判断单元,用于根据所述正向压缩指标和所述负向压缩指标,判断所述计算平台是否符合压缩切换条件;

切换执行单元,用于在所述计算平台符合压缩切换条件时,压缩计算平台的任务数据,否则,不压缩计算平台的任务数据。

结合第三方面,在第三方面第一种可行的实施方式中,所述指标获取单元具体被配置为:

针对所述计算平台,获取以下正向压缩指标中的至少一项:cpu余量和内存余量,并获取以下负向压缩指标中的至少一项:磁盘余量和网络传输余量。

结合第三方面,或者第三方面第一种可行的实施方式,在第三方面第二种可行的实施方式中,所述压缩判断单元包括:

指数计算模块,用于根据所述正向压缩指标计算所述正向压缩指数,并根据所述负 向压缩指标计算所述负向压缩指数;其中,所述正向压缩指数与所述正向压缩指标正相关,所述负向压缩指数与所述负向压缩指标正相关;

压缩判断模块,用于根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件。

结合第三方面第二种可行的实施方式,在第三方面第三种可行的实施方式中,所述压缩判断模块包括:

第一压缩判断模块,用于根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数,并判断所述压缩切换指数是否在预设压缩区间内,如果是,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

结合第三方面第二种可行的实施方式,在第三方面第四种可行的实施方式中,所述压缩判断模块包括:

第二压缩判断模块,用于比较所述正向压缩切换指数与预设正向压缩阈值,并比较所述负向压缩切换指数与预设反向压缩阈值,如果所述正向压缩指数不小于所述正向压缩阈值且所述反向压缩指数不大于所述反向压缩阈值,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

本申请第四方面,提供一种计算平台任务数据宜压缩程度评价装置,包括:

正向指标获取单元,用于获取表征支持对所述计算平台任务数据进行压缩的正向压缩指标;

负向指标获取单元,用于获取表征不支持对所述计算平台任务数据进行压缩的负向压缩指标;

压缩指数计算单元,用于根据所述正向压缩指标和所述负向压缩指标,确定表征所述计算平台任务数据宜压缩程度的压缩切换指数。

结合第四方面,在第四方面第一种可行的实施方式中,所述正向指标获取单元具体被配置为:获取计算平台的cpu余量和内存余量中的至少一个;

所述负向指标获取单元具体被配置为:获取所述计算平台的磁盘余量和网络传输余量中的至少一个。

结合第四方面,或者第四方面第一种可行的实施方式,在第四方面第二种可行的实施方式中,所述压缩指数计算单元具体被配置为:

根据所述正向压缩指标计算正向压缩指数,并根据所述反向压缩指标计算反向压缩 指数;其中,所述正向压缩指数与所述正向压缩指标正相关,所述反向压缩指数与所述反向压缩指标正相关;

根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数。

由以上技术方案可知,本申请实施例提供的技术方案,通过获取计算平台的正向压缩指标和负向压缩指标,以综合评价计算平台当前情况下是否适合对任务数据进行压缩,如果适合,即符合压缩切换条件,则控制计算平台对此情况下产生的任务数据进行压缩,如果实际应用情况改变,不再符合切换条件,则控制计算平台不再对任务数据进行压缩。可见,本实施例可以实现根据计算平台的实际应用情况实时进行压缩控制、切换,相对于相关技术中一概根据预设参数决定是否压缩的控制方式,本实施例通过对集群的相关指标进行实时监控,实现对任务数据是否进行压缩的自动切换,避免出现因大量数据等待压缩导致任务执行效率下降,或者因存储及传输大量未压缩数据导致磁盘及网络压力增大的现象。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请一示例性实施例示出的一种分布式计算平台的整体架构图。

图2为本申请一示例性实施例示出的一种计算平台任务数据压缩切换方法的流程示意图。

图3为本申请一示例性实施例示出的一种计算平台任务数据宜压缩程度评价方法的流程示意图。

图4为本申请一示例性实施例示出的一种计算平台任务数据压缩切换装置的结构框图。

图5为本申请一示例性实施例示出的一种计算平台任务数据宜压缩程度评价装置的结果框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附 图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

为了全面理解本申请,在以下详细描述中提到了众多具体的细节,但是本领域技术人员应该理解,本申请可以无需这些具体细节而实现。在其他实施例中,不详细描述公知的方法、过程、组件和电路,以免不必要地导致实施例模糊。

为明确本申请实施例的应用场景,首先对大型分布式计算平台/集群的架构进行介绍。如图1所示,在一个大型的分布式计算集群上,通常由ambari(安装、部署、配置和管理工具)、zookeeper(分布式协作服务)、hbase(实时分布式数据库)、hive(数据仓库)、pig(数据流处理)、mahout(数据挖掘库)、mapreduce(分布式计算构架)、hdfs(分布式文件系统)、flume(日志收集工具)、sqoop(数据库etl工具)等多个子系统构成。集群在工作过程中,每天会运行大量的分布式任务,且同一任务可能需要多个子系统的以流水线的方式合作执行完成,所以任务执行过程中产生的中间数据不仅需要磁盘存储,还需要在不同的子系统之间进行传输。在上述背景下,可以通过hive(数据仓库)对这些任务中间过程和输出结果产生的数据进行压缩,可以减轻后续的磁盘和网络传输压力,但相应的会增加集群的cpu和内存使用率,增长任务执行时间;而如果对这些任务中间过程和输出结果产生的数据不进行压缩,则相对可以节省任务执行时间,提高任务执行效率,但会增加磁盘存储和网络传输的压力。现有技术中,hive的默认方案仅根据预设参数判断是否对任务数据进行压缩,不考虑计算集群的实际状态是否适合,会导致当集群不适合进行数据压缩时,仍有大量的任务在等待数据压缩,当集群适合进行数据压缩时,反而有大量的任务没有数据压缩就直接进入网络传输,给网络传输带来巨大的压力。

有鉴于此,本发明旨在通过对集群的实际状态进行实时监控,从而确定适合集群当前状态的处理方式,即实现根据集群的实时状态对hive在压缩和不压缩两种处理方式之间的自动切换。

图2为本申请一示例性实施例示出的一种计算平台任务数据压缩切换方法的流程示意图。如图1所示,所述方法包括:

步骤s101,针对所述计算平台,获取表征支持对其任务数据进行压缩的正向压缩指标,以及表征不支持对其任务数据进行压缩的的负向压缩指标;

其中,正向压缩指标即表征支持(适合)对计算平台任务数据进行压缩的各项指标,也就是值越大表示进行任务数据压缩越有利的变量;相应的,负向压缩指标即表征不支持(不适合)对计算平台任务数据进行压缩的各项指标,也就是值越大表示进行任务数 据压缩越不利的变量。

具体的,可以通过相应的检测模块直接对计算平台中的cpu、内存、磁盘和网路等进行检测,以得到相关的正向压缩指标和反向压缩指标,而实现步骤s101。也可以通过读取计算平台任务执行过程中与cpu、内存、磁盘或网络传输等相关的参数,使用以这些参数为因变量的常规计算函数来计算得到各项正向压缩指标和反向压缩指标。

步骤s102,根据所述正向压缩指标和所述负向压缩指标,判断所述计算平台是否符合压缩切换条件;

步骤s103,如果所述计算平台符合压缩切换条件,则压缩计算平台的任务数据,否则,不压缩计算平台的任务数据。

优选的,上述步骤s101是实时执行的,即实时获取计算平台的正向压缩指标和负向压缩指标,以便实时且综合地对计算平台是否适合进行数据压缩进行判断,进而在判断结果与计算平台当前的压缩状态不一致时,及时切换其压缩状态。

例如,在计算平台的压缩状态为对任务数据进行压缩的情况下,如果判定结果为不适合对计算平台任务数据进行压缩,则自动将该计算平台的压缩状态切换为不压缩任务数据,从而可以避免大量数据等待压缩导致任务执行效率下降的现象;反之,在计算平台的压缩状态为不压缩任务数据的情况下,如果判定结果为适合对计算平台任务数据进行压缩,则自动将该计算平台的压缩状态切换为对任务数据进行压缩,从而可以避免因存储及传输大量未压缩数据导致磁盘及网络压力增大的现象。

由以上技术方案可知,本申请通过获取计算平台的正向压缩指标和负向压缩指标,以综合评价计算平台当前情况下是否适合对任务数据进行压缩,如果适合,即符合压缩切换条件,则控制计算平台对此情况下产生的任务数据进行压缩,如果实际应用情况改变,不再符合切换条件,则控制计算平台不再对任务数据进行压缩。可见,本实施例可以实现根据计算平台的实际应用情况实时进行压缩控制、切换,相对于相关技术中一概根据预设参数决定是否压缩的控制方式,本实施例通过对集群的相关指标进行实时监控,实现对任务数据是否进行压缩的自动切换,避免出现因大量数据等待压缩导致任务执行效率下降,或者因存储及传输大量未压缩数据导致磁盘及网络压力增大的现象。

可选的,上述步骤s101所述的获取正向压缩指标具体可以包括:获取计算平台的cpu余量和内存余量、磁盘i/o余量等指标中的一项或多项。

可选的,上述步骤s101所述的获取负向压缩指标具体可以包括:获取计算平台的磁盘余量和网络传输余量等指标中的一项或多项。

在本申请一个可行的实施例中,上述步骤s102所述的根据所述正向压缩指标和所述负向压缩指标,判断所述计算平台是否符合压缩切换条件,具体可以包括以下步骤:

s1021、根据所述正向压缩指标计算所述正向压缩指数;

s1022、根据所述负向压缩指标计算所述负向压缩指数;

s1023、根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件。

其中,所述正向压缩指数用于表征计算平台适合进行任务数据压缩的程度,所述正向压缩指数与各项正向压缩指标正相关,即正向压缩指数以各项正向压缩指标为自变量,随着各项正向压缩指标的增大而增大,可以表示为a∝a1,a∝a2,……,a∝an(a表示正向压缩指数,a1、a2、……、an表示n个不同的正向压缩指标)。

所述正向压缩指数a越大,说明计算平台进行任务数据压缩越有利,可以通过多次实验,得到a1~an各项正向压缩指标和正向压缩指数a之间的经验函数a=f(a1,a2,…,an),通过该经验函数计算得到正向压缩指数。

例如,可以采用求平均函数a=(a1+a2+…+an)/n,以各个正向压缩指标的平均值作为正向压缩指数;也可以采用加权和函数a=a1*q1+a2*q2+…+an*qn(q1、q2、……、qn为分别为相应正向压缩指标a1、a2、……、an的权重)或者加权平均值函数a=(a1*q1+a2*q2+…+an*qn)/n,将计算结果作为正向压缩指数。

相应的,所述反向压缩指数用于表征计算平台不适合进行任务数据压缩的程度,所述负向压缩指标与所述负向压缩指数正相关,即反向压缩指数以各项反向压缩指标为自变量,随着各项负向压缩指标的增大而增大,可以表示为b∝b1,b∝b2,……,b∝bm(b表示正向压缩指数,b1、b2、……、bm表示m个不同的负向压缩指标)。

所述反向压缩指数越大,说明计算平台进行任务数据压缩越不利。与上述正向压缩指数的获取方式相似,可以通过多次实验,得到b1~bm各项反向压缩指标和反向压缩指数b之间的经验函数,例如上述求平均函数、加权和函数、加权平均值函数等,并通过该经验函数计算得到反向压缩指数。

由以上技术方案可知,本实施例将多项正向压缩指标整合为一个正向压缩指数,将多项负向压缩指标整合为一个负向压缩指数,进而根据该正向压缩指数和负向压缩指数确定计算平台是否符合压缩切换条件,实现对计算平台对应的整个集群适宜压缩程度的综合判断,保证最终确定的计算平台的压缩状态为对实际应用情况最有利的状态,避免出现因大量数据等待压缩导致任务执行效率下降,或者因存储及传输大量未压缩数据导致磁盘及网络压力增大的现象。

在本申请一个可行的实施方式中,上述步骤s1023所述的根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件,具体可以包括:

根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数;

判断所述压缩切换指数是否在预设压缩区间内,如果是,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

在一种具体实施方式中,压缩切换指数t的计算公式可以为t=a/b(a为正向压缩指数,b为反向压缩指数);相应于此计算公式,可以设置压缩切换指数t对应的预设压缩区间为[t1,∞),即如果根据公式t=a/b计算得到的压缩切换指数t不小于第一压缩阈值t1(相当于上述压缩切换条件),则判定所述计算平台符合压缩切换条件,进而对此后产生的任务数据进行压缩,可以减少计算平台数据读写量,降低硬盘和网络传输负荷;反之,如果t小于t1,则判定所述计算平台不符合压缩切换条件,从而不压缩任务数据,以提高任务执行效率,降低cpu和内存负荷。一般的,上述第一压缩阈值t1大于1,以保证在正向压缩指数大于负向压缩指数的前提下才允许压缩任务数据,具体取值可以根据任务数据压缩算法效率、任务数据平均压缩比和网络传输速率等参数由经验公式计算得到(所述经验公式根据多次实验得到),也可以由用户根据当前计算平台运行情况凭借经验进行设置。

在另一种具体实施方式中,压缩切换指数t的计算公式也可以为t=b/a(a为正向压缩指数,b为反向压缩指数);相应于此计算公式,可以设置压缩切换指数t对应的预设压缩区间为(0,t2],即如果根据公式t=b/a计算得到的压缩切换指数t不大于第二压缩阈值t2(相当于上述压缩切换条件),则判定所述计算平台符合压缩切换条件;反之,如果t小于t2,则判定所述计算平台不符合压缩切换条件。一般的,上述第二压缩阈值t2小于1,以保证在正向压缩指数大于负向压缩指数的前提下才允许压缩任务数据;t2的具体取值可参照上述t1,此处不再赘述。

在本申请另一个可行的实施方式中,上述步骤s1023所述的根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件,具体可以包括:

比较所述正向压缩切换指数与预设正向压缩阈值,并比较所述负向压缩切换指数与预设反向压缩阈值;

如果所述正向压缩指数不小于所述正向压缩阈值且所述反向压缩指数不大于所述反向压缩阈值,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

本实施例中,可以预先设定正向压缩阈值a0和负向压缩阈值b0,在计算得到正向压缩指数a和负向压缩指数b后,分别将a与a0、b与b0进行比较,如果a≥a0且b≤b0(相当于上述压缩切换条件),则判定所述计算平台符合压缩切换条件,否则判定 所述计算平台不符合压缩切换条件。

上述预设正向压缩阈值和预设反向压缩阈值具体可以根据任务数据压缩算法效率、任务数据平均压缩比和网络传输速率由经验公式计算得到。

另外,本申请还提供了一种计算平台任务数据宜压缩程度评价方法,图3为该方法的流程示意图。参照图3,所述计算平台任务数据宜压缩程度评价方法包括:

步骤s201,获取表征支持对所述计算平台任务数据进行压缩的正向压缩指标;

步骤s202,获取表征不支持对所述计算平台任务数据进行压缩的负向压缩指标;

步骤s203,根据所述正向压缩指标和所述负向压缩指标,确定表征所述计算平台任务数据宜压缩程度的压缩切换指数。

可见,本申请实施例将计算平台任务数据适宜压缩的程度量化为压缩切换指数,该压缩切换指数至少可以用于判断当前情况下是否适合对计算平台任务数据进行压缩。具体的,如果该压缩切换指数在预设压缩区间内,说明在当前情况下适宜对计算平台的任务数据进行压缩,可以起到减少计算平台数据读写量、降低硬盘和网络传输负荷等作用;反之,如果该压缩切换指数不在预设压缩区间内,说明在当前情况下不适宜对计算平台的任务数据进行压缩,可以起到提高任务执行效率,降低cpu和内存负荷等作用。

具体的,本实施例基于多项正向压缩指标和负向压缩指标计算得到的压缩切换指数,可以保证该压缩切换指数能准确反映相应计算平台的综合应用情况,进而可以依据该压缩切换指数准确判断计算平台是否适宜压缩任务数据。

本实施例中,所述正向压缩指标表示计算平台中支持任务数据压缩的参数,即其值越大表示压缩任务数据对计算平台越有利。在一个可行的实施方式中,上述正向压缩指标包括但不限于以下任意一种或几种:cpu余量、内存余量、磁盘i/o余量。

相应的,本实施例中,所述负向压缩指标表示计算平台中不支持任务数据压缩的参数,即其值越大表示不压缩任务数据对计算平台越有利。在一个可行的实施方式中,上述负向压缩指标包括但不限于以下任意一种或几种:磁盘余量、网络传输余量。

本实施例中,具体可以通过在计算平台中设置指标检测模块,直接检测上述cpu余量、内存余量等正向压缩指标,以及磁盘余量、网络传输余量等负向压缩指标;也可以通过读取计算平台任务执行过程中与cpu、内存、磁盘或网络传输等正/负向压缩指标相关的参数,以这些参数为自变量通过相应的关系函数来计算得到正/负向压缩指标。

在本申请一个可行的实施方式中,上述步骤s203所述的根据正向压缩指标和负向压缩指标计算压缩切换指数,可以包括如下步骤:

根据所述正向压缩指标计算正向压缩指数,并根据所述负向压缩指标计算负向压缩指数;

根据所述正向压缩指数和反向压缩指数的比值,确定计算平台的压缩切换指数。

其中,所述正向压缩指数用于表征计算平台适合进行任务数据压缩的程度,所述正向压缩指数与各项正向压缩指标正相关,即正向压缩指数以各项正向压缩指标为自变量,随着各项正向压缩指标的增大而增大。所述负向压缩指数用于表征计算平台不适合进行任务数据压缩的程度,所述负向压缩指标与所述负向压缩指数正相关,即反向压缩指数以各项反向压缩指标为自变量,随着各项负向压缩指标的增大而增大。可选的,可通过相应的经验函数(如求平均值函数、加权和函数、加权平均值函数等)来计算上述正向压缩指数及负向压缩指标,具体方法可参照前文计算平台任务数据压缩切换方法实施例中相关内容,此处不再赘述。

上述压缩切换指数的计算公式可以有多种,本实施例采用最简单的求比值方式,将正向压缩指数和负向压缩指数之间的比值作为压缩切换指数,具体可以为t=a/b(a为正向压缩指数,b为反向压缩指数),或者t=b/a。需要说明的是,在根据所述压缩切换指数判断是否对计算平台任务数据进行压缩时,针对不同计算公式得到的压缩切换指数,分别设置不同的压缩区间;例如,若采用t=a/b计算压缩切换指数,则对应的压缩区间设置为[t1,∞),若采用t=b/a计算压缩切换指数,则对应的压缩区间设置为(0,t2],具体可参照前文计算平台任务数据压缩切换方法实施例中相关内容。

通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,并存储在一个存储介质中,通过读取并执行该存储介质中的相关指令使得相关智能设备可以执行本申请各个实施例所述计算平台任务数据压缩切换方法和/或计算平台任务数据宜压缩程度评价方法的全部或部分步骤。而前述的存储介质可以包括:只读存储器(rom)、随机存取存储器(ram)、磁碟或者光盘等各种可以存储数据和程序代码的介质。

与上文计算平台任务数据压缩切换方法相对应的,本申请还提供一种计算平台任务数据压缩切换装置。具体的,本申请提供的压缩切换装置可以设置于图1所示集群的hive中。图4为本申请一示例性实施例示出的该装置的一种结构框图。参照图4,该装置包括:

指标获取单元u301,用于针对所述计算平台,获取表征支持对其任务数据进行压缩的正向压缩指标,以及表征不支持对其任务数据进行压缩的的负向压缩指标;

压缩判断单元u302,用于根据所述正向压缩指标和所述负向压缩指标,判断所述计算平台是否符合压缩切换条件;

切换执行单元u303,用于在所述计算平台符合压缩切换条件时,压缩计算平台的任务数据,否则,不压缩计算平台的任务数据。

可选地,本申请上述指数计算单元具体被配置为:针对所述计算平台,获取以下正向压缩指标中的至少一项:cpu余量和内存余量,并获取以下负向压缩指标中的至少一项:磁盘余量和网络传输余量。

优选的,本申请上述压缩判断单元,具体可以包括:

指数计算模块,用于根据所述正向压缩指标计算所述正向压缩指数,并根据所述负向压缩指标计算所述负向压缩指数;其中,所述正向压缩指数与所述正向压缩指标正相关,所述负向压缩指数与所述负向压缩指标正相关;

压缩判断模块,用于根据所述正向压缩指数和所述反向压缩指数,判断所述计算平台是否符合压缩切换条件。

在本申请一个可行的实施方式中,上述压缩判断模块具体可以为:第一压缩判断模块;该第一压缩判断模块用于,根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数,并判断所述压缩切换指数是否在预设压缩区间内,如果是,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

在本申请另一个可行的实施方式中,上述压缩判断模块具体可以为:第二压缩判断模块;该第二压缩判断模块用于,比较所述正向压缩切换指数与预设正向压缩阈值,并比较所述负向压缩切换指数与预设反向压缩阈值,如果所述正向压缩指数不小于所述正向压缩阈值且所述反向压缩指数不大于所述反向压缩阈值,则判定所述计算平台符合压缩切换条件,否则判定所述计算平台不符合压缩切换条件。

由以上技术方案可知,本申请实施例提供的计算平台任务数据压缩切换装置,通过获取计算平台的正向压缩指标和负向压缩指标,以综合评价计算平台当前情况下是否适合对任务数据进行压缩,如果适合,即符合压缩切换条件,则控制计算平台对此情况下产生的任务数据进行压缩,如果实际应用情况改变,不再符合切换条件,则控制计算平台不再对任务数据进行压缩。可见,本实施例可以实现根据计算平台的实际应用情况实时进行压缩控制、切换,相对于相关技术中一概根据预设参数决定是否压缩的控制方式,本实施例通过对集群的相关指标进行实时监控,实现对任务数据是否进行压缩的自动切 换,避免出现因大量数据等待压缩导致任务执行效率下降,或者因存储及传输大量未压缩数据导致磁盘及网络压力增大的现象。

另外,相对于上述计算平台任务数据宜压缩程度评价方法实施例,本申请还提供了一种计算平台任务数据宜压缩程度评价装置,图5为本申请一示例性实施例示出的该装置的一种结构框图。如图5所示,所述计算平台任务数据宜压缩程度评价装置包括:

正向指标获取单元u401,用于获取表征支持对所述计算平台任务数据进行压缩的正向压缩指标;

负向指标获取单元u402,用于获取表征不支持对所述计算平台任务数据进行压缩的负向压缩指标;

压缩指数计算单元u403,用于根据所述正向压缩指标和所述负向压缩指标,确定表征所述计算平台任务数据宜压缩程度的压缩切换指数。

可选的,上述正向指标获取单元具体被配置为:获取计算平台的cpu余量和内存余量中的至少一个。

可选的,上述负向指标获取单元具体被配置为:获取所述计算平台的磁盘余量和网络传输余量中的至少一个。

可选的,上述压缩指数计算单元具体被配置为:

根据所述正向压缩指标计算正向压缩指数,并根据所述反向压缩指标计算反向压缩指数;其中,所述正向压缩指数与所述正向压缩指标正相关,所述反向压缩指数与所述反向压缩指标正相关;

根据所述正向压缩指数和所述反向压缩指数的比值,确定所述计算平台的压缩切换指数。

由以上技术方案可知,本申请实施例提供的计算平台任务数据宜压缩程度评价装置,将计算平台任务数据适宜压缩的程度量化为压缩切换指数,该压缩切换指数至少可以用于判断当前情况下是否适合对计算平台任务数据进行压缩。具体的,如果该压缩切换指数在预设压缩区间内,说明在当前情况下适宜对计算平台的任务数据进行压缩,可以起到减少计算平台数据读写量、降低硬盘和网络传输负荷等作用;反之,如果该压缩切换指数不在预设压缩区间内,说明在当前情况下不适宜对计算平台的任务数据进行压缩,可以起到提高任务执行效率,降低cpu和内存负荷等作用。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。另外,本说明书中的 各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1