大数据处理中的任务优化方法和装置的制造方法
【专利摘要】本发明公开了一种大数据处理中的任务优化方法和装置,包括:分析多个任务的数据处理逻辑;根据所述多个任务的数据处理逻辑确定多个任务之间的数据关系;对所述数据关系进行分析,确定是否将所述多个任务合并为一个任务或者将所述多个任务中的一个任务拆分成多个任务。减少了数据仓库中需要执行的计算任务数量,节约了计算资源,有助于提高数据仓库的处理效率。
【专利说明】
大数据处理中的任务优化方法和装置
技术领域
[0001 ]本发明属于计算机领域,具体地说,涉及一种大数据处理中的任务优化方法和装置。【背景技术】
[0002]随着互联网的快速发展,很多互联网公司都已积累了 TB量级的数据。数据仓库每天都在接收来自不同生态的数据,例如来自手机、智能电视、视频网站的用户数据记录等, 做为大数据资源的一部分。
[0003]数据从数据仓库的入口机进入数据仓库以及在数据仓库内部进行分层,都需要进行数据处理,每次数据处理过程都是多个任务的集合,每个任务都具有内在的处理逻辑,例如任务1是将A表中的部分字段的数据读取再写入到B表。有时,当很多数据工程师都需要某些数据时,不同的数据工程师利用现有数据获取到所需要数据方法路径可能就会不同,此时就会出现很多重复的任务,或者虽然并不重复,但目的是相同的任务。有时,有些任务对表的某些字段的更新处理较慢,导致后续可利用其他字段进行处理的任务也需要等待该表更新完成而无法继续向下处理,导致任务处理的时间变慢。
[0004]这些问题都是由于对任务的内在处理逻辑分析不到位而造成的,导致了很多计算资源的浪费,影响数据仓库的处理速度。
【发明内容】
[0005]有鉴于此,本发明实施例提供了一种大数据处理中的任务优化方法和装置,用以解决现有技术中由于对任务的内在处理逻辑分析不到位而导致浪费计算资源的技术问题。
[0006]为了解决上述技术问题,本发明公开了一种大数据处理中的任务优化方法,包括: 分析多个任务的数据处理逻辑;根据多个任务的数据处理逻辑确定多个任务之间的数据关系;对数据关系进行分析,确定是否将多个任务合并为一个任务或者将多个任务中的一个任务拆分成多个任务。
[0007]为了解决上述技术问题,本发明还公开了一种大数据处理中的任务优化装置,包括:分析模块,用于分析多个任务的数据处理逻辑;确定模块,用于根据所述多个任务的数据处理逻辑确定多个任务之间的数据关系;处理模块,用于对所述数据关系进行分析,确定是否将所述多个任务合并为一个任务或者将所述多个任务中的一个任务拆分成多个任务。
[0008]与现有技术相比,本发明实施例提供的大数据处理中的任务优化方法和装置,通过对数据仓库中多个任务的数据处理逻辑进行分析,得到任务之间的数据关系,根据该数据关系确定是否对任务进行合并或者拆分,提高数据仓库的任务执行效率,有助于对数据仓库计算资源的合理利用。【附图说明】
[0009]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0010]图1是本发明实施例提供的一种大数据处理中的任务优化方法的流程图;
[0011]图2是本发明实施例提供的一种大数据处理中的任务优化方法的流程图;
[0012]图3是本发明实施例提供的一种大数据处理中的任务优化方法的流程图;
[0013]图4是本发明实施例提供的一种大数据处理中的任务优化装置的框图。【具体实施方式】
[0014]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0015]本发明实施例中,针对数据仓库中的计算任务进行分析,分析每个任务的数据处理逻辑,通过数据处理逻辑来找到各个任务之间的逻辑关系以及数据依赖关系,对各个任务之间产生的中间数据以及任务的执行情况进行分析,找到可以对现有任务进行优化的点,对现有任务进行适当的合并和拆分,从而节省数据仓库的计算资源并提高任务的执行效率。下面分别对本发明实施例提供的多种任务优化方法分别进行说明。
[0016]图1是本发明实施例提供的一种大数据处理中的任务优化方法,适用服务器,该方法包括以下步骤。
[0017]S10,分析多个任务的数据处理逻辑。
[0018]数据处理逻辑包括处理对象和计算方法。处理对象包括源数据、目标数据等,例如任务T01是从表A读取三个字段的数据并写入表B。计算方法是指利用源数据生成目标数据的方法,如果是直接从表A读取数据并写入表B则不存在计算方法,而如果对从表A读取的数据进行计算之后将结果写入表B,在该任务存在表A与表B之间的计算方法。
[0019]S11,根据多个任务的数据处理逻辑确定多个任务之间的数据关系。
[0020]数据关系包括任务之间的中间数据以及数据依赖关系。例如,任务TO 1从表A读取三个字段的数据并写入表B,任务T02对表B中的数据进行筛选,筛选出满足预设条件的数据并写入表C,那么,表B就被视为任务T01和任务T02的中间数据。[〇〇21]数据依赖关系是指在后执行的任务需要依赖由在前执行的任务输出的数据。任务 T01从表A读取第一字段和第二字段的数据并直接写入表B,从表A读取第三字段和第四字段的数据,对第三字段和第四字段的数据进行预测分析,将预测结果写入表B;任务T02从表B 读取第一字段和第二字段的数据进行筛选,将筛选结果写入表C;任务T03从表B读取预测结果,对预测结果进行评估,将评估结果写入表D。那么,任务T02和任务T03就依赖于任务T01 的输出数据,任务T02和任务T03分别与任务T01具有数据依赖关系。[〇〇22]S12,对数据关系进行分析,确定是否将多个任务合并为一个任务或者将多个任务中的一个任务拆分成多个任务。[〇〇23]分析是否存在不会被使用的中间数据或者多个任务中在先执行的任务是否会影响在后执行的任务的执行效率。如果存在不会被使用的中间数据,则可以将多个任务进行合并,从而减少执行任务的数量,节省数据仓库的计算资源。如果在先执行的任务影响在后执行的任务的执行效率,则将该在先执行的任务按照数据依赖关系拆分成多个任务,将拆分后的多个任务中的一个任务的输出数据做为该在后执行的的任务的输入数据,使该在后执行的任务能够更快的获得其所依赖的数据从而完成执行,提高该在后执行的任务的执行效率。
[0024]下面首先对数据仓库中将多个任务进行合并的情形进行说明。图2是本发明实施例提供的一种大数据处理中的任务优化方法,适用服务器,该方法包括以下步骤。[〇〇25]S20,分析多个任务的数据处理逻辑。[〇〇26] 数据处理逻辑包括处理对象和计算方法。处理对象包括源数据、目标数据等,例如任务T01是从表A读取三个字段的数据并写入表B。计算方法是指利用源数据生成目标数据的方法,如果是直接从表A读取数据并写入表B则不存在计算方法,而如果对从表A读取的数据进行计算之后将结果写入表B,在该任务存在表A与表B之间的计算方法。[〇〇27]S21,根据多个任务的数据处理逻辑确定多个任务之间产生的中间数据。[〇〇28]从多个任务的数据处理逻辑中,找出多个任务的之间的逻辑关系。例如,任务T01 从表A读取三个字段的数据并写入表B,任务T02对表B中的三个字段的数据进行筛选,筛选出满足预设条件的数据并写入表C,任务T03读取表C的数据并添加到表D中。可以看出任务 T01至T03是按照彼此之间的逻辑关系依次进行的。找到多个任务之间的逻辑关系后,就可以确定各个任务之间都产生了哪些中间数据,上例中的表B和表C即可以被确定为中间数据。
[0029]不同的数据工程师对得到目标数据而设置的计算方式会有所不同,有时还会根据其所负责的业务的实际需求来得到一些中间数据供进行其他计算使用。因此,需要进一步判断这些中间数据会被使用,也就是判断这些中间数据是否有必要进行保存。[〇〇3〇] S22,分析中间数据的使用状态以确定中间数据是否需要继续被保存。[0031 ]使用状态包括该中间数据是否会被用于其它计算,以及该中间数据本身是否是其他任务链的最终结果。因此,对于中间数据是否需要保存的判定,可以通过多种方式进行。 [〇〇32]在一个实施例中,该步骤S22可进一步被实施为以下步骤。
[0033]S220,根据业务需求分析中间数据是否在业务中被使用。
[0034]业务需求包括该数据是否用于其它业务数据的计算以及该中间数据在业务中是否也是需要利用的最终结果。例如,中间数据B记录了上海的各门店在2016年1月至3月的智能电视销量,如果业务中还需要进一步筛选出销量排名前五位的门店,则代表该中间数据B 还会被使用;或者,该中间数据B本身就是一个统计上海市在2016年1月至3月的智能电视销量的任务链的最终结果,则代表该中间数据也需要被使用。
[0035]S221,当中间数据在业务中不被使用时,确定中间数据不需要继续被保存。
[0036]实现了根据预设的业务逻辑中对数据的实际需求来判定任务链的中间数据是否需要被保存。
[0037]在另一实施例中,该步骤S22还可以进一步被实施为以下步骤。
[0038]S222,统计中间数据的未被使用的累积时长,当累积时长达到预设门限时,标记中间数据为不被使用的数据。[〇〇39]对于被判定为任务链中的中间数据,会统计该中间数据未被使用的累积时长,例如,只要没有出现针对中间数据B的读取操作,就说明该中间数据B没有被使用,当中间数据 B被读取时,累积时长将被清零并重新开始计时,如果在预设时长(例如12小时)都没有针对中间数据B的读取操作,则标记该中间数据B为不被使用的数据。
[0040]为了降低发生误判的概率,还会进一步对该中间数据被标记为不被使用的数据的次数进行统计。如果在接下来的预设时长该数据仍然没有被使用,则再一次标记该中间数据为不会被使用的数据。
[0041] S223,当中间数据被标记为不被使用的数据的次数大于或等于预设门限时,确定中间数据不需要继续被保存。[〇〇42]例如,中间数据B已连续10次被标记为不被使用的数据,则可以认为该数据不需要被继续保存。
[0043]这种不会被使用的中间数据的出现往往都是由于不同的数据工程师通过不同的方式获取目标数据时而人为配置的,随意性会比较强又不会被其他其他数据工程师所利用。
[0044] S23,当中间数据不需要被保存时,根据数据处理逻辑将多个任务合并为一个任务。[〇〇45]如上例中,如果表B被判定为不需要保存的中间数据,则根据数据处理逻辑将任务 T01和T02合并为T12,合并后的任务T12的处理对象就是表A和表C,计算方法也相应合并为从表A中读取三个字段的数据并根据预设条件进行筛选,将筛选结果写入表B。如果表C被判定为不需要保存的中间数据,则根据数据处理逻辑将任务T02和T03合并为T23,合并后的任务T23的处理对象就是表B和表D,计算方法也相应合并为对表B中三个字段数据进行筛选并将筛选结果添加至表D。如果表B和表C都被判定为不需要保存的中间数据,则根据数据处理逻辑将任务T01、T02和T03合并为T13,合并后的任务T13的处理对象就是表A和表D,计算方法也相应合并为从表A中读取三个字段的数据并按照预设条件进行筛选,将筛选结果添加到表D。
[0046]也就是说,如果两个任务之间存在不会被使用的中间数据,则可以这两个任务合并一个任务,如果连续出现多个不会被使用的中间数据,则可以将多个任务合并为一个任务,从而减少了数据仓库中需要执行的计算任务数量,节约了计算资源,有助于提高数据仓库的处理效率。[〇〇47]在一个实施例中,上述大数据处理中的任务优化方法可进一步包括以下步骤。 [〇〇48] S24,根据数据处理逻辑判断是否同时存在多个能够产生相同中间数据的任务。
[0049] S25,当同时存在多个能够产生相同中间数据的任务时,将多个能够产生相同中间数据的任务合并为一个任务。
[0050]该多个能够产生相同中间数据的任务来自于不同数据工程师的配置。例如,大家都已知存在表A,甲需要提取表A中三个字段的数据并写入表B,对表B的数据进行预测分析, 输出分析结果至表C;而乙需要提取表A中相同的三个字段的数据并写入表B,对表B的数据进行筛选并将结果输出到表D。可见此时存在两个从表A读取三个字段数据并写入表B的任务,那么将这两个任务合并为一个,甲乙配置的其他后续任务共同利用该合并后的任务的输出结果。
[0051]对同时产生相同中间数据的多个任务进行合并,可以进一步减少计算任务的数量,节约计算资源。
[0052]下面对数据仓库中将一个任务拆分为多个任务的情形做进一步说明,对本发明实施例还提供了一种大数据处理中的任务优化方法,适用于服务器,如图3所示,该方法包括以下步骤。[〇〇53] S30,分析多个任务的数据处理逻辑。[〇〇54] S31,根据多个任务的数据处理逻辑确定多个任务之间的数据依赖关系。
[0055]数据依赖关系是指在后执行的任务需要依赖由在前执行的任务输出的数据。[〇〇56]例如,任务T01从表A读取第一字段和第二字段的数据并直接写入表B,从表A读取第三字段和第四字段的数据,对第三字段和第四字段的数据进行预测分析,将预测结果写入表B;任务T02从表B读取第一字段和第二字段的数据进行筛选,将筛选结果写入表C;任务 T03从表B读取预测结果,对预测结果进行评估,将评估结果写入表D。可以看出,任务T02依赖于T01中的第一字段和第二字段的数据,任务T03依赖于T01中的预测结果数据。
[0057] S32,根据数据依赖关系,判断在多个任务中先执行的任务是否影响到后执行的任务的执行效率。[〇〇58]在上例中,任务T02和任务T03的执行需要等待任务T01执行完成,而由于预测分析的过程会相对较慢,因此即使第一字段和第二字段的数据已经被写入表B,任务T02也不能开始执行,需要等待预测结果被写入表B,任务T01执行完毕后再开始执行任务T02,而任务 T02对表B的预测结果不存在依赖关系,可见,此时在先执行的任务T01影响到了在后任务 T02的执行效率,拖延了任务T02开始执行的时间。
[0059]这种情况的出现通常是由于数据工程师在任务配置时考虑不太周全而导致的。
[0060] S33,当判断先执行的任务影响到后执行的任务的执行效率时,根据数据依赖关系将先执行的任务拆分为多个任务,以使后执行的任务能够更早的获得所依赖的数据并开始执行。[0061 ] 在上例中,将任务T01进行拆分,拆分为任务T011和任务T012,任务T011从表A读取第一字段和第二字段的数据并写入表B,任务T012从表A读取第三字段和第四字段的数据并进行预测分析,将预测结果写入表B。任务T011的执行会相对更快,T011执行完成后,任务 T02就可以开始执行,而不必等待任务T012执行完成,从而提高了在后执行的任务T02的执行效率。
[0062]本发明实施例中,当发现在前任务的执行过程对在后任务的执行效率带来不好的影响时,根据数据依赖关系对在前任务进行拆分,目的是让拆分后的任务能够让在后任务更快的获得其所依赖的数据,从而使该在后任务能够比拆分之前更快的开始执行,提高总体的执行效率。
[0063]下面是本发明的装置实施例,用于执行本发明的上述方法实施例。
[0064]图4是本发明实施例提供的一种大数据处理中的任务优化装置,包括:[〇〇65]分析模块40,用于分析多个任务的数据处理逻辑;确定模块41,用于根据所述多个任务的数据处理逻辑确定多个任务之间的数据关系;处理模块42,用于对所述数据关系进行分析,确定是否将所述多个任务合并为一个任务或者将所述多个任务中的一个任务拆分成多个任务。
[0066]在一个实施例中,该确定模块41进一步包括:第一确定子模块,用于根据多个任务的数据处理逻辑确定多个任务之间产生的中间数据;
[0067]该处理模块42进一步包括:分析子模块,用于分析中间数据的使用状态以确定中间数据是否需要继续被保存;第一合并子模块,用于当中间数据不需要被保存时,根据数据处理逻辑将多个任务合并为一个任务。
[0068]在一个实施例中,该分析子模块进一步包括:分析单元,根据业务需求分析中间数据是否在业务中被使用;第一确定单元,当中间数据在业务中不被使用时,确定中间数据不需要继续被保存。
[0069]在一个实施例中,该分析子模块进一步包括:标记单元,统计中间数据的未被使用的累积时长,当累积时长达到预设门限时,标记中间数据为不被使用的数据;第二确定单元,当中间数据被标记为不被使用的数据的次数大于或等于预设门限时,确定中间数据不需要继续被保存。
[0070]在一个实施例中,该处理模块42还包括:第一判断子模块,用于根据数据处理逻辑判断是否同时存在多个能够产生相同中间数据的任务;第二合并子模块,用于当同时存在多个能够产生相同中间数据的任务时,将多个能够产生相同中间数据的任务合并为一个任务。
[0071]在一个实施例中,该确定模块41进一步包括:第二确定子模块,用于根据多个任务的数据处理逻辑确定多个任务之间的数据依赖关系;[〇〇72]所述处理模块42包括:第二判断子模块,用于根据所述数据依赖关系,判断在多个任务中先执行的任务是否影响到后执行的任务的执行效率;拆分子模块,用于当判断先执行的任务影响到后执行的任务的执行效率时,根据数据依赖关系将先执行的任务拆分为多个任务,并将拆分出的多个任务中的一个任务的输出数据作为后执行的任务的输入数据。
[0073] 此外,本发明实施例中可以通过硬件处理器(hardware processor)来实现上述各个功能模块。[〇〇74] 本发明实施例还提供了一种服务器,该服务器包括:包括处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为:分析多个任务的数据处理逻辑;根据多个任务的数据处理逻辑确定多个任务之间的数据关系;对所述数据关系进行分析,确定是否将多个任务合并为一个任务或者将多个任务中的一个任务拆分成多个任务。
[0075]在一个实施例中,所述根据多个任务的数据处理逻辑确定多个任务之间的数据关系包括:根据多个任务的数据处理逻辑确定多个任务之间产生的中间数据;
[0076]所述对所述数据关系进行分析,确定是否将多个任务合并为一个任务包括:分析中间数据的使用状态以确定中间数据是否需要继续被保存;当中间数据不需要被保存时, 根据数据处理逻辑将多个任务合并为一个任务。
[0077]在一个实施例中,所述分析中间数据的使用状态以确定中间数据是否需要继续被保存包括:根据业务需求分析中间数据是否在业务中被使用;当中间数据在业务中不被使用时,确定中间数据不需要继续被保存。
[0078]在一个实施例中,所述分析中间数据的使用状态以确定中间数据是否需要继续被保存包括:统计中间数据的未被使用的累积时长,当累积时长达到预设门限时,标记中间数据为不被使用的数据;当中间数据被标记为不被使用的数据的次数大于或等于预设门限时,确定中间数据不需要继续被保存。
[0079]在一个实施例中,所述对数据关系进行分析,确定是否将多个任务合并为一个任务还包括:根据数据处理逻辑判断是否同时存在多个能够产生相同中间数据的任务;当同时存在多个能够产生相同中间数据的任务时,将多个能够产生相同中间数据的任务合并为一个任务。
[0080]在一个实施例中,所述根据多个任务的数据处理逻辑确定多个任务之间的数据关系包括:根据多个任务的数据处理逻辑确定多个任务之间的数据依赖关系;
[0081]所述对数据关系进行分析,确定是否将多个任务中的一个任务拆分成多个任务包括:根据数据依赖关系,判断在多个任务中先执行的任务是否影响到后执行的任务的执行效率;当判断先执行的任务影响到后执行的任务的执行效率时,根据数据依赖关系将先执行的任务拆分为多个任务,并将拆分出的多个任务中的一个任务的输出数据作为后执行的任务的输入数据。
[0082]以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0083]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0084]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换; 而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【主权项】
1.一种大数据处理中的任务优化方法,其特征在于,包括:分析多个任务的数据处理逻辑;根据所述多个任务的数据处理逻辑确定多个任务之间的数据关系;对所述数据关系进行分析,确定是否将所述多个任务合并为一个任务或者将所述多个 任务中的一个任务拆分成多个任务。2.根据权利要求1所述的方法,其特征在于,所述根据所述多个任务的数据处理逻辑确 定多个任务之间的数据关系包括:根据所述多个任务的数据处理逻辑确定多个任务之间产生的中间数据;所述对所述数据关系进行分析,确定是否将所述多个任务合并为一个任务包括:分析所述中间数据的使用状态以确定所述中间数据是否需要继续被保存;当所述中间数据不需要被保存时,根据所述数据处理逻辑将所述多个任务合并为一个 任务。3.根据权利要求2所述的方法,其特征在于,所述分析所述中间数据的使用状态以确定 所述中间数据是否需要继续被保存包括:根据业务需求分析所述中间数据是否在业务中被使用;当所述中间数据在业务中不被使用时,确定所述中间数据不需要继续被保存。4.根据权利要求2所述的方法,其特征在于,所述分析所述中间数据的使用状态以确定 所述中间数据是否需要继续被保存包括:统计所述中间数据的未被使用的累积时长,当所述累积时长达到预设门限时,标记所 述中间数据为不被使用的数据;当所述中间数据被标记为不被使用的数据的次数大于或等于预设门限时,确定所述中 间数据不需要继续被保存。5.根据权利要求2所述的方法,其特征在于,所述对所述数据关系进行分析,确定是否 将所述多个任务合并为一个任务还包括:根据数据处理逻辑判断是否同时存在多个能够产生相同中间数据的任务;当同时存在多个能够产生相同中间数据的任务时,将所述多个能够产生相同中间数据 的任务合并为一个任务。6.根据权利要求1所述的方法,其特征在于,所述根据所述多个任务的数据处理逻辑确 定多个任务之间的数据关系包括:根据所述多个任务的数据处理逻辑确定多个任务之间的数据依赖关系;所述对所述数据关系进行分析,确定是否将所述多个任务中的一个任务拆分成多个任 务包括:根据所述数据依赖关系,判断在所述多个任务中先执行的任务是否影响到后执行的任 务的执行效率;当判断先执行的任务影响到后执行的任务的执行效率时,根据所述数据依赖关系将所 述先执行的任务拆分为多个任务,并将所述拆分出的多个任务中的一个任务的输出数据作 为所述后执行的任务的输入数据。7.—种大数据处理中的任务优化装置,其特征在于,包括:分析模块,用于分析多个任务的数据处理逻辑;确定模块,用于根据所述多个任务的数据处理逻辑确定多个任务之间的数据关系;处理模块,用于对所述数据关系进行分析,确定是否将所述多个任务合并为一个任务 或者将所述多个任务中的一个任务拆分成多个任务。8.根据权利要求7所述的装置,其特征在于,所述确定模块包括:第一确定子模块,用于根据所述多个任务的数据处理逻辑确定多个任务之间产生的中 间数据;所述处理模块包括:分析子模块,用于分析所述中间数据的使用状态以确定所述中间数据是否需要继续被 保存;第一合并子模块,用于当所述中间数据不需要被保存时,根据所述数据处理逻辑将所 述多个任务合并为一个任务。9.根据权利要求8所述的装置,其特征在于,所述分析子模块包括:分析单元,根据业务需求分析所述中间数据是否在业务中被使用;第一确定单元,当所述中间数据在业务中不被使用时,确定所述中间数据不需要继续 被保存。10.根据权利要求8所述的装置,其特征在于,所述分析子模块包括:标记单元,统计所述中间数据的未被使用的累积时长,当所述累积时长达到预设门限 时,标记所述中间数据为不被使用的数据;第二确定单元,当所述中间数据被标记为不被使用的数据的次数大于或等于预设门限 时,确定所述中间数据不需要继续被保存。11.根据权利要求8所述的装置,其特征在于,所述处理模块还包括:第一判断子模块,用于根据数据处理逻辑判断是否同时存在多个能够产生相同中间数 据的任务;第二合并子模块,用于当同时存在多个能够产生相同中间数据的任务时,将所述多个 能够产生相同中间数据的任务合并为一个任务。12.根据权利要求8所述的装置,其特征在于,所述确定模块包括:第二确定子模块,用于根据所述多个任务的数据处理逻辑确定多个任务之间的数据依 赖关系;所述处理模块包括:第二判断子模块,用于根据所述数据依赖关系,判断在所述多个任务中先执行的任务 是否影响到后执行的任务的执行效率;拆分子模块,用于当判断先执行的任务影响到后执行的任务的执行效率时,根据所述 数据依赖关系将所述先执行的任务拆分为多个任务,并将所述拆分出的多个任务中的一个 任务的输出数据作为所述后执行的任务的输入数据。
【文档编号】G06F9/50GK105975600SQ201610308355
【公开日】2016年9月28日
【申请日】2016年5月11日
【发明人】刘宏斌, 国铁龙, 向滔
【申请人】乐视控股(北京)有限公司, 乐视网信息技术(北京)股份有限公司