一种数据的动态加载处理方法及系统技术方案

技术编号:10356801 阅读:85 留言:0更新日期:2014-08-27 13:02
本发明专利技术提供一种数据的动态加载处理方法及系统,所述方法包括:获取当前系统的待加载的原子任务;根据所述的原子任务生成组合任务;动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率;根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务。通过将原ETL任务中的源表——目标表关系视为一个原子任务,对其进行动态组合,使得ETL任务具备较高的灵活性,实现原子任务较高层次的复用度,动态组合任务加载,做到系统资源得以充分的利用,最大程度地优化提升数据仓库对外提供服务质量。

【技术实现步骤摘要】
一种数据的动态加载处理方法及系统
本专利技术关于计算机数据
,特别是关于计算机数据的抽取、转换、装载技术,具体的讲是一种数据的动态加载处理方法及系统。
技术介绍
数据仓库是一个庞大的数据海洋,海量的数据都是通过ETL(ExtractTransformLoad、数据抽取、转换、装载)任务来完成加载转换的。随着计算机技术的日益发展,数据仓库的规模不断壮大,纳入的数据源与日俱增,其时效性也参差不齐。现有技术中的ETL任务,是将进相同数据仓库模型实体的不同源表全部组合在同一个加载任务中,仅当该任务的所有上游源表到齐后,才开始加载转换。因此,通过现有技术中的ETL任务来完成加载转换存在如下问题:1、加载任务若集中在一段时间内爆发,爆发前上游数据到达却不加载,会导致系统空闲;爆发后若系统繁忙压力较大,会导致加载速度受限于系统资源。2、涉及批量中关键路径上的作业,只能通过固定拆分任务实现调整,不够自动、灵活。因此,如何提出一种基于数据的动态加载处理的方案,其能够克服数据仓库ETL任务内容固定组合所带来的不利影响是本领域亟待解决的技术难题。
技术实现思路
为了克服现有技术存在的数据仓库ETL任务内容固定组合所带来的不利影响的技术问题,本专利技术提供了一种数据的动态加载处理方法及系统,将原ETL任务中的源表——目标表关系视为一个原子任务,对其进行动态组合,实现较优原子组合,以充分利用系统资源,提高ETL效率,提高数据仓库对外数据服务效益。本专利技术的目的之一是,提供一种数据的动态加载处理方法,包括:获取当前系统的待加载的原子任务;根据所述的原子任务生成组合任务;动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率;根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务。本专利技术的目的之一是,提供了一种数据的动态加载处理系统,所述的系统具体包括:原子任务获取装置,用于获取当前系统的待加载的原子任务;组合任务生成装置,用于根据所述的原子任务生成组合任务;即时使用率采集装置,用于动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率;组合任务加载装置,用于根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务。本专利技术的有益效果在于,提供了一种数据的动态加载处理方法及系统,通过将原ETL任务中的源表——目标表关系视为一个原子任务,对其进行动态组合,使得ETL任务具备较高的灵活性,实现原子任务较高层次的复用度,动态组合任务加载,做到系统资源得以充分的利用,最大程度地优化提升数据仓库对外提供服务质量。为让本专利技术的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种数据的动态加载处理方法的流程图;图2为图1中的步骤S102的具体流程图;图3为图1中的步骤S104的实施方式一的具体流程图;图4为图1中的步骤S104的实施方式二的具体流程图;图5为图1中的步骤S104的实施方式三的具体流程图;图6为图3中的步骤S304的具体流程图;图7为图3中的步骤S305的具体流程图;图8为本专利技术提供的一种数据的动态加载处理方法在具体实例中的流程图;图9为本专利技术实施例提供的一种数据的动态加载处理系统的结构框图;图10为本专利技术实施例提供的一种数据的动态加载处理系统中组合任务生成装置200的结构框图;图11为本专利技术实施例提供的一种数据的动态加载处理系统中组合任务加载装置400的实施方式一的结构框图;图12为本专利技术实施例提供的一种数据的动态加载处理系统中组合任务加载装置400的实施方式二的结构框图;图13为本专利技术实施例提供的一种数据的动态加载处理系统中组合任务加载装置400的实施方式三的结构框图;图14为本专利技术实施例提供的一种数据的动态加载处理系统中资源确定模块404的结构框图;图15为本专利技术实施例提供的一种数据的动态加载处理系统中加载模块405的结构框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术提出一种数据的动态加载处理方法,克服了数据仓库ETL任务内容固定组合所带来的不利影响,将原ETL任务中的源表——目标表关系视为一个原子任务,不同的任务按需动态地组合多个原子任务,实现较优原子组合,以充分利用系统资源,提高ETL效率,提高数据仓库对外数据服务效益。图1为本专利技术提出的一种数据的动态加载处理方法的具体流程图,由图1可知,所述的方法包括:S101:获取当前系统的待加载的原子任务。在具体的实施例中,原子任务的格式定义如下:ATOM_S-TBL_T-TBL_YYYYMMDD,去找,S-TBL表示源表、T-TBL表示目标表、YYYYMMDD表示加载日期。当前系统中存储有原子定义的描述,如表1所示,原子的具体内容如表2所示。表1表2序号域名备注1原子编号如:ATOM_12源表如:MF1_LTHAGACC3目标表如:T02_PROD_GROUP_TREE_INFO_H_MF0_A4加工逻辑如:拉链算法表2中的拉链算法是数据仓库中存储数据的一种算法,维护数据的生存周期,实现逻辑删除,保留数据的历史变迁过程。数据表中关链的数据即为删除,开链数据即为有效。算法逻辑如下(记:源表为s,目录表为t):1、创建临时表:v存储s表数据2、全量比对v表和t表若存在v表和t表,则根据v表记录按主键更新t表记录,并将其关链;若存在v表,不存在t表,则根据v表记录插入t表,并开链。S102:根据所述的原子任务生成组合任务。图2为图1中的步骤S102的具体流程图,由图2可知,在具体的实施例中该步骤具体包括:S201:确定所述原子任务的目标表。在具体的实施例中,原子任务的格式定义若为:ATOM_S-TBL_T-TBL_YYYYMMDD,则可直接确定出目标表为T-TBL。S202:确定所述原子任务的源表。在具体的实施例中,原子任务的格式定义若为:ATOM_S-TBL_T-TBL_YYYYMMDD,则可直接确定出源表为S-TBL。S203:根据所述原子任务的源表以及目标表对所述的原子任务进行组合,生成组合任务。在具体的实施方式中,首先汇集T-TBL相同的原子任务集,将原ETL任务中的源表——目标表关系视为一个原子任务,不同的ETL任务按需动态地组合多个原子任务,生成组合任务,使得ETL任务具备较高的灵活性。在具体的实施方案中,按照表1、表2的原子定义,获取原子加工逻辑,组合所有原子任务,生成组合任务,原子任务组合实例如表3所示:表3由图1可知,该方法还包括:S103:动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率。如具体实施例中,采集当前系统即时资源消耗情况,即IO本文档来自技高网...
一种数据的动态加载处理方法及系统

【技术保护点】
一种数据的动态加载处理方法,其特征是,所述的方法具体包括:获取当前系统的待加载的原子任务;根据所述的原子任务生成组合任务;动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率;根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务。

【技术特征摘要】
1.一种数据的动态加载处理方法,其特征是,所述的方法具体包括:获取当前系统的待加载的原子任务;根据所述的原子任务生成组合任务;动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率;根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务,该步骤包括:获取当前系统的CPU使用上限以及IO使用上限;根据所述的即时CPU使用率、当前系统的CPU使用上限判断所述的即时CPU使用率是否饱和;当判断为否时,根据所述的即时IO使用率、当前系统的IO使用上限继续判断所述的即时IO使用率是否饱和;当判断为否时,确定所述组合任务的加载所需资源;其中,确定所述组合任务的加载所需资源包括:获取所述原子任务的原子生成记录、运行时间以及数据规模;根据所述的运行时间以及数据规模确定原子数据加载效率;根据所述的原子数据加载效率以及原子生成记录确定所述组合任务的加载完成时间;获取所述原子任务的到达时间区间;当所述组合任务的加载完成时间在所述的到达时间区间内时,获取所述原子任务的资源消耗;根据所述的资源消耗以及原子生成记录确定所述组合任务的加载所需资源。2.根据权利要求1所述的方法,其特征是,根据所述的原子任务生成组合任务具体包括:确定所述原子任务的目标表;确定所述原子任务的源表;根据所述原子任务的源表以及目标表对所述的原子任务进行组合,生成组合任务。3.根据权利要求2所述的方法,其特征是,根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务还包括:根据所述的加载所需资源、所述的CPU使用上限以及IO使用上限加载所述的组合任务。4.根据权利要求3所述的方法,其特征是,根据所述的加载所需资源、所述的CPU使用上限以及IO使用上限加载所述的组合任务具体包括:根据所述加载所需资源确定所述组合任务加载所需的CPU使用率以及IO使用率;判断所述组合任务加载所需的CPU使用率是否超出当前系统的CPU使用上限;当判断为否时,继续判断所述组合任务加载所需的IO使用率是否超出当前系统的IO使用上限;当判断为否时,加载所述的组合任务。5.根据权利要求2所述的方法,其特征是,根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务还包括:当所述的即时IO使用率饱和时,获取所述原子任务的运行时间、资源消耗;根据所述的运行时间、资源消耗确定所述原子任务的属性偏向;根据所述原子任务的属性偏向确定所述组合任务的属性偏向;判断所述组合任务的属性偏向是否为CPU型;当判断为是时,加载所述的组合任务。6.根据权利要求2所述的方法,其特征是,根据所述的即时CPU使用率、即时IO使用率加载所述的组合任务还包括:当所述的即时CPU使用率饱和时,根据所述的即时IO使用率、当前系统的IO使用上限继续判断所述的即时IO使用率是否饱和;当判断为否时,获取所述原子任务的运行时间、资源消耗;根据所述的运行时间、资源消耗确定所述原子任务的属性偏向;根据所述原子任务的属性偏向确定所述组合任务的属性偏向;判断所述组合任务的属性偏向是否为IO型;当判断为是时,加载所述的组合任务。7.一种数据的动态加载处理系统,其特征是,所述的系统具体包括:原子任务获取装置,用于获取当前系统的待加载的原子任务;组合任务生成装置,用于根据所述的原子任务生成组合任务;即时使用率采集装置,用于动态采集当前系统的即时中央处理器CPU使用率、即时输入/输出IO使用率...

【专利技术属性】
技术研发人员:江军华黄兆斌李卓辉徐炜
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1