《一种HADOOP平台时序数据增量计算方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种HADOOP平台时序数据增量计算方法及系统.pdf(11页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104199942A43申请公布日20141210CN104199942A21申请号201410456262922申请日20140909G06F17/3020060171申请人中国科学技术大学地址230026安徽省合肥市包河区金寨路96号72发明人孙广中王丹74专利代理机构北京凯特来知识产权代理有限公司11260代理人郑立明郑哲54发明名称一种HADOOP平台时序数据增量计算方法及系统57摘要本发明公开了一种HADOOP平台时序数据增量计算方法及系统,其中,该方法包括当启动时序数据增量计算任务时,从缓存服务器中获取该时序数据的历史计算状态;根据所述历史计算状态利用包含SUBC。
2、P和REDUCECP子运算的分段时序数据增量计算方法进行增量计算;其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归并操作,且所述SUBCP和REDUCECP子运算的计算状态均由缓存服务器维护。通过采用本发明公开的方法及系统,通过增量计算可以节省大量不必要的重复计算,从而提高了数据处理的效率。51INTCL权利要求书2页说明书5页附图3页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书5页附图3页10申请公布号CN104199942ACN104199942A1/2页。
3、21一种HADOOP平台时序数据增量计算方法,其特征在于,该方法包括当启动时序数据增量计算任务时,从缓存服务器中获取该时序数据的历史计算状态;根据所述历史计算状态利用包含SUBCP和REDUCECP子运算的分段时序数据增量计算方法进行增量计算;其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归并操作,且所述SUBCP和REDUCECP子运算的计算状态均由缓存服务器维护。2根据权利要求1所述的方法,其特征在于,所述分段时序数据增量计算方法包括带有状态的固定窗口宽度的滑动窗口增量计算方法所。
4、述状态表示缓存服务器所维护的时序数据的历史计算状态,所述窗口宽度固定表示包含的时间段个数固定;设窗口的宽度固定为N,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并,并减去第1个时间段的时序数据;带有状态的起始点固定的单调递增窗口的增量计算方法所述状态表示缓存服务器所维护的时序数据的历史计算状态,其窗口起始时间点固定,窗口的大小随时间递增;设窗口的起始点为第1个时间段的时序数据。
5、,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并。3根据权利要求1或2所述的方法,其特征在于,所述时序数据,以某一时间段为单位把连续的时序数据划分为多个分段,则每一个单位时间段内的时序数据运算为一个子运算;其中,分段后的时序数据满足幺半群性质。4一种HADOOP平台时序数据增量计算系统,其特征在于,该系统包括时序数据增量处理模块TSI,用于当启动时序数据增量计算任务时,从缓存。
6、服务器中获取该时序数据的历史计算状态;根据所述历史计算状态利用包含SUBCP和REDUCECP子运算的分段时序数据增量计算方法进行增量计算;其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归并操作,且所述SUBCP和REDUCECP子运算的计算状态均由缓存服务器维护;缓存服务器,用于保存时序数据的历史计算状态。5根据权利要求4所述的系统,其特征在于,所述分段时序数据增量计算方法包括带有状态的固定窗口宽度的滑动窗口增量计算方法所述状态表示缓存服务器所维护的时序数据的历史计算状态,所述窗口。
7、宽度固定表示包含的时间段个数固定;设窗口的宽度固定为N,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并,并减去第1个时间段的时序数据;带有状态的起始点固定的单调递增窗口的增量计算方法所述状态表示缓存服务器所权利要求书CN104199942A2/2页3维护的时序数据的历史计算状态,其窗口起始时间点固定,窗口的大小随时间递增;设窗口的起始点为第1个时间段的时序数据,且第1至N个时。
8、间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并。6根据权利要求4或5所述的系统,其特征在于,所述时序数据,以某一时间段为单位把连续的时序数据划分为多个分段,则每一个单位时间段内的时序数据运算为一个子运算;其中,分段后的时序数据满足幺半群性质。权利要求书CN104199942A1/5页4一种HADOOP平台时序数据增量计算方法及系统技术领域0001本发明涉及计算机技术领域,尤其涉及一种HAD。
9、OOP平台时序数据增量计算方法。背景技术0002随着当今互联网技术的飞速发展,信息采集技术等的广泛应用,在电信、气象、地质、电力、金融等诸多科学工业领域中产生和积累了海量的以时间序列形式存在的各种数据。传统的时间序列处理方法一般是选择MATLAB等相关数学计算工具进行,但是当处理的问题规模变大时,问题计算时间往往让人难以忍受的。0003当前,随着大数据处理逐渐被人们重视,一些公司、研究机构也开始了这方面的研究,相关工作主要集中在HADOOP开源分布式计算平台上。HADOOP作为一个分布式框架,可以分布式的操作大量数据,在处理海量数据上具有很多优势,比如具有高容错性、高扩展性、高可靠性等特点。0。
10、004目前,HADOOP平台并没有对时间序列数据处理提供很好的支持,并且对时序数据的增量计算相关研究比较少,导致时间序列数据新增时需要重复计算,从而降低数据处理的效率。发明内容0005本发明的目的是提供一种HADOOP平台时序数据增量计算方法及系统,通过增量计算可以节省大量不必要的重复计算,从而提高了数据处理的效率。0006本发明的目的是通过以下技术方案实现的0007一种HADOOP平台时序数据增量计算方法,该方法包括0008当启动时序数据增量计算任务时,从缓存服务器中获取该时序数据的历史计算状态;0009根据所述历史计算状态利用包含SUBCP和REDUCECP子运算的分段时序数据增量计算方法。
11、进行增量计算;0010其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归并操作,且所述SUBCP和REDUCECP子运算的计算状态均由缓存服务器维护。0011一种HADOOP平台时序数据增量计算系统,该系统包括0012时序数据增量处理模块TSI,用于当启动时序数据增量计算任务时,从缓存服务器中获取该时序数据的历史计算状态;根据所述历史计算状态利用包含SUBCP和REDUCECP子运算的分段时序数据增量计算方法进行增量计算;其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把。
12、中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归并操作,且所述SUBCP和REDUCECP子运算的计算状态均由缓存服务器维护;0013缓存服务器,用于保存时序数据的历史计算状态。说明书CN104199942A2/5页50014由上述本发明提供的技术方案可以看出,通过缓存服务器缓存时序数据的历史计算状态,当启动增量计算时,根据获取到的历史计算状态,直接进行增量数据的计算,再快速的复用历史计算结果,避免了不必要的重复计算,从而提高了数据处理的效率。附图说明0015为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
13、,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。0016图1为本发明实施例一提供的一种HADOOP平台时序数据增量计算方法的流程图;0017图2为本发明实施例一提供的一种时序数据分段机制的示意图;0018图3为本发明实施例一提供的一种分段时序数据增量计算方法的示意图;0019图4为本发明实施例一提供的一种带有状态的固定窗口宽度的滑动窗口增量计算方法的示意图;0020图5为本发明实施例一提供的一种带有状态的起始点固定的单调递增窗口的增量计算方法的示意图;0021图6为本发明实施例二提供的一种HADO。
14、OP平台时序数据增量计算系统的示意图;0022图7为本发明实施例二提供的现有HADOOP平台与增量计算系统相集成的示意图。具体实施方式0023下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。0024实施例一0025图1为本发明实施例一提供的一种HADOOP平台时序数据增量计算方法的流程图。如图1所示,该方法主要包括如下步骤0026步骤11、当启动时序数据增量计算任务时,从缓存服务器中获取该。
15、时序数据的历史计算状态。0027其中,所述时序数据,以某一时间段为单位把连续的时序数据划分为多个分段,则每一个单位时间段内的时序数据运算为一个子运算;而分段后的时序数据需要满足幺半群性质。0028所述时序数据增量计算任务则表示有新增的分段时序数据。0029步骤12、根据所述历史计算状态利用包含SUBCP和REDUCECP子运算的分段时序数据增量计算方法进行增量计算。0030其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归说明书CN104199942A3/5页6并操作,且所述SUBCP。
16、和REDUCECP子运算的计算状态均由缓存服务器维护。0031进一步的,所述分段时序数据增量计算方法包括0032带有状态的固定窗口宽度的滑动窗口增量计算方法所述状态表示缓存服务器所维护的时序数据的历史计算状态,所述窗口宽度固定表示包含的时间段个数固定;设窗口的宽度固定为N,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并,并减去第1个时间段的时序数据;0033带有状态的起始点固。
17、定的单调递增窗口的增量计算方法所述状态表示缓存服务器所维护的时序数据的历史计算状态,其窗口起始时间点固定,窗口的大小随时间递增;设窗口的起始点为第1个时间段的时序数据,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并。0034为了便于理解,下面结合附图25对本发明做进一步的介绍。0035如图2所示,为便跟发明提供的时序数据分段机制的示意图。如图2所示,对于时间序列数据,可以以某。
18、一时间段为单位把连续的时间序列数据划分为多个段,这样每个单位时间段内的时序数据运算是一个子运算。其中,划分后的子运算需要满足幺半群性质,即可对相应的子运算进行归并运算。0036如图3所示,为分段时序数据增量计算流程图,此过程利用了图2的分段时序数据机制,该计算方法包括两个子运算SUBCP子运算和REDUCECP子运算,其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;示例性的,统计以天为单位的分段时序数据中,每一时间段内网站某个页面访问流量。REDUCECP为运算合并阶段,根据自定义的操作对分段数据的计算结果归并操作;示例性的,归并以天为单位的分段时序数据中,最近N。
19、天该网站某个页面总的访问流量。且上述SUBCP子运算和REDUCECP子运算的状态由缓存服务器CACHESERVER维护。0037本发明实施例通过增量计算可以节省大量不必要的重复计算,从而提高了数据处理的效率;本发明实施例中结合分段时序数据增量计算方法与分段时序数据的相关特性,提出两种带有状态的滑动窗口增量计算方法固定宽度窗口,窗口包含的时间段个数固定;单调递增窗口,窗口起始时间点固定,随时间推移窗口大小递增。具体如下0038图4所示,为带有状态的固定窗口宽度的滑动窗口增量计算,所述的状态指CACHESERVER所维护的相关计算状态。结合图2、3中分段时序数据的相关特性及增量计算方法,如图4所。
20、示,这里假设窗口的宽度固定为N,当有第N1个新增时序数据到达时,根据CACHESERVER中的历史计算状态得知左侧的数据第1至第N个分段数序数据已经计算过,此时只需计算增量数据第N1个新增时序数据并和部分历史结果归并就可以得到所需结果,由于窗口的宽度固定为N在归并后还需要减去第1个分段数序数据;最终结合新增数序数据和历史计算结果可以得到和进行全局数据计算一样的结果,这种方法可以避免大量不必要的重复计算,从而提高了数据处理的效率。0039如图5所示,为带有状态的起始点固定的单调递增窗口的增量计算,所述状态指说明书CN104199942A4/5页7CACHESERVER所维护的相关计算状态。结合图。
21、2、3中分段时序数据的相关特性及增量计算方法,如图5所示,假设窗口的起始点为1,当有第N1个新增数序数据到达时,根据CACHESERVER中的历史计算状态得知左侧的数据第1至第N个分段数序数据已经计算过,此时只需计算增量数据第N1个新增时序数据并和部分历史结果归并就可以得到所需结果,最终结合新增数据和历史计算结果可以得到和进行全局数据计算一样的结果,这种方法可以避免大量不必要的重复计算,从而提高了数据处理的效率。0040另一方面,本发明实施例中的缓存服务器还可对插入的数据设置定时机制,其在某一时间段后识别和清除无用的旧数据以确保内存数据库不会不断膨胀。0041同时,还可以将时序数据计算算法与本。
22、发明提供的增量计算方法相结合;其中,时序数据计算算法包括如下常用时间序列计算的算法时间序列预测算法,包括简单时序平均数法、移动平均数法、加权移动平均数法等;时间序列相似性度量算法,包括ED,DTW,FASTDTW等。0042本发明实施例所提供的技术方案与现有技术相比,具有以下有益效果00431基于HADOOP平台,不改变HADOOP底层架构结构,方便编程人员编写程序;00442HADOOP平台之上支持时序数据的处理;00453支持HADOOP平台的时序数据的增量计算,减少不必要的重复计算,提高增量数据计算效率。0046实施例二0047图6为本发明实施例二提供的一种HADOOP平台时序数据增量计。
23、算系统的示意图。如图6所示,该系统主要包括0048时序数据增量处理模块TSI11,用于当启动时序数据增量计算任务时,从缓存服务器中获取该时序数据的历史计算状态;根据所述历史计算状态利用包含SUBCP和REDUCECP子运算的分段时序数据增量计算方法进行增量计算;其中,SUBCP子运算为分别对分段时序数据进行自定义的子运算并把中间结果保存;REDUCECP子运算为运算合并阶段,根据自定义的操作对已分段时序数据的计算结果归并操作,且所述SUBCP和REDUCECP子运算的计算状态均由缓存服务器维护;0049缓存服务器12,用于保存时序数据的历史计算状态。0050进一步的,所述分段时序数据增量计算方。
24、法包括0051带有状态的固定窗口宽度的滑动窗口增量计算方法所述状态表示缓存服务器所维护的时序数据的历史计算状态,所述窗口宽度固定表示包含的时间段个数固定;设窗口的宽度固定为N,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并,并减去第1个时间段的时序数据;0052带有状态的起始点固定的单调递增窗口的增量计算方法所述状态表示缓存服务器所维护的时序数据的历史计算状态,其窗口起始时间。
25、点固定,窗口的大小随时间递增;设窗口的起始点为第1个时间段的时序数据,且第1至N个时间段的时序数据已完成计算并存入所述缓存服务器中,当有第N1个新增时序数据到达时,根据缓存服务器中该时序数据的历史计算状态,利用SUBCP子运算仅进行第N1个新增时序数据的计算,再利用说明书CN104199942A5/5页8REDUCECP子运算进行第N1个新增时序数据与历史计算状态中的结果归并。0053进一步的,所述时序数据,以某一时间段为单位把连续的时序数据划分为多个分段,则每一个单位时间段内的时序数据运算为一个子运算;其中,分段后的时序数据满足幺半群性质。0054由于本系统可基于HADOOP平台实现,为便于。
26、理解,可将上述模块与现有的HADOOP平台相结合。如图7所示,基于HADOOP平台扩展了缓存服务器CACHESERVER和时序数据增量处理模块TSI;缓存服务器为缓存数据库模块,其缓存了必要的计算状态结果,相比HADOOP自身提供的缓存服务有着更丰富的数据结构表示功能;TSI模块主要用于时序数据增量计算。0055需要说明的是,上述系统中包含的各个功能模块所实现的功能的具体实现方式在前面的各个实施例中已经有详细描述,故在这里不再赘述。0056所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,。
27、即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。0057通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质可以是CDROM,U盘,移动硬盘等中,包括若干指令用以使得一台计算机设备可以是个人计算机,服务器,或者网络设备等执行本发明各个实施例所述的方法。0058以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。说明书CN104199942A1/3页9图1图2图3说明书附图CN104199942A2/3页10图4图5说明书附图CN104199942A103/3页11图6图7说明书附图CN104199942A11。