一种数据处理方法及装置的制造方法

文档序号:8512492阅读:210来源:国知局
一种数据处理方法及装置的制造方法
【技术领域】
[0001] 本发明涉及计算机技术领域,尤其涉及一种数据处理方法及装置。
【背景技术】
[0002] 近年来,随着社会信息化的快速发展,无论在科学研宄、工业生产、商业和互联网 领域,数据都呈现出爆炸式增长。目前,很多应用中的数据已从太字节(Terabyte,TB)级 迅速发展到拍字节(Petabyte,PB)级甚至更高的数量级。因此,面向大数据处理的计算 框架已经成为热点话题,其中具有代表性的计算框架包括海杜普(Hadoop)和Spark等。 Hadoop和Spark等框架都在计算机技术领域获得了广泛的应用,但是每个计算框架均存在 不足:例如,Hadoop提供的映射规约(MapReduce)模型虽然简单易用,但是其计算模型具 有局限性,表达能力有限,在解决诸如迭代计算、图分析等复杂问题时,很难将算法映射到 MapReduce模型中,且开发的工作量大,运行效率低下;而Spark虽然迭代运算性能好,但是 对内存要求很高。
[0003] 因此,大数据处理的发展趋势为通过融合多种计算框架的数据处理平台处理大数 据,即在计算机的集群中通过资源管理系统来容纳多种计算框架,典型的资源管理系统如 Mesos 以及 YARN 等。
[0004] 然而,由于这类资源管理系统允许包含的多种计算框架共享一个集群资源,且每 个计算框架的编程语言不尽相同,因此,收到待处理的数据任务时,用户通常根据经验指定 计算框架执行该待处理数据任务,而不是通过运行时间和资源消耗选择计算框架,数据处 理效率较低,降低了系统的工作性能。

【发明内容】

[0005] 本发明实施例提供一种数据处理方法及装置,用以解决现有技术中融合多种计算 框架的资源管理系统在处理数据任务时,不是通过运行时间和资源消耗选择计算框架,数 据处理效率较低的问题,降低了系统的工作性能。
[0006] 本发明实施例提供的具体技术方案如下:
[0007] 第一方面,一种数据处理方法,包括:
[0008] 接收任务请求,所述任务请求中携带有用户提交的任务;
[0009] 根据所述任务请求中的所述任务,生成包含至少一个子任务的子任务集;
[0010] 确定执行每个子任务的输入数据;
[0011] 针对所述子任务集中的每个子任务执行以下操作:
[0012] 在系统配置的所有计算框架中确定具有执行该子任务的能力的计算框架作为候 选计算框架,其中,所述候选计算框架的数目大于或等于2 ;
[0013] 根据该子任务的输入数据、以及每个候选计算框架对应的预测模型,分别预测每 个候选计算框架执行该子任务时对应的运行时间和资源消耗;
[0014] 根据预测的每个候选计算框架执行该子任务时对应的运行时间和资源消耗,在所 述候选计算框架中,筛选出执行该子任务的目标计算框架;
[0015] 基于筛选出的执行所述子任务集中的每个子任务的目标计算框架,执行对应的子 任务。
[0016] 结合第一方面,在第一种可能的实现方式中,所述任务请求中还携带有所述任务 的输入数据;
[0017] 确定执行每个子任务的输入数据,包括:
[0018] 根据所述任务请求中携带的所述任务的输入数据,确定执行每个子任务的输入数 据。
[0019] 结合第一方面,在第二种可能的实现方式中,接收任务请求之前,还包括:
[0020] 在系统配置的所有计算框架中,将具有执行相同任务类型的所有计算框架中的、 执行所述相同任务类型的应用程序接口 API通过预设的编程语言进行封装,形成统一 API ;
[0021] 在系统配置的所有计算框架中确定具有执行该子任务的能力的计算框架作为候 选计算框架,包括:
[0022] 确定该子任务的任务类型;
[0023] 确定该子任务的任务类型对应的统一 API ;
[0024] 根据确定的所述统一 API,确定具有执行该子任务的任务类型的所有计算框架,并 将确定的计算框架作为候选计算框架。
[0025] 结合第一方面或第一方面的以上任一种可能的实现方式,在第三种可能的实现方 式中,获得候选计算框架对应的预测模型,包括:
[0026] 读取预设的训练样本集合,所述训练样本集合是针对所述候选计算框架执行该子 任务的能力预设的;
[0027] 分别以运行时间、资源消耗为目标特征,对所述训练样本集合中除运行时间、资源 消耗以外的其它特征进行训练,得到所述候选计算框架对应的预测模型。
[0028] 结合第一方面或第一方面的以上任一种可能的实现方式,在第四种可能的实现方 式中,根据预测的每个候选计算框架执行该子任务时对应的运行时间和资源消耗,在所述 候选计算框架中,筛选出执行该子任务的目标计算框架,包括:
[0029] 在所述候选计算框架中,选择预测的资源消耗小于系统的可用资源的候选计算框 架作为第一候选计算框架;
[0030] 在所述第一候选计算框架中,筛选出预测的运行时间最小的第一候选计算框架作 为目标计算框架。
[0031] 结合第一方面的第三种可能的实现方式,在第五种可能的实现方式中,基于确定 的执行所述子任务集中的每个子任务的目标计算框架,执行对应的子任务之后,还包括:
[0032] 将在该子任务的目标计算框架中执行该子任务产生的各个特征,作为新的训练样 本;
[0033] 将所述新的训练样本添加至所述训练样本集合。
[0034] 第二方面,一种数据处理装置,包括:
[0035] 接收单元,用于接收任务请求,所述任务请求中携带有用户提交的任务;
[0036] 生成单元,用于根据所述任务请求中的所述任务,生成包含至少一个子任务的子 任务集;
[0037] 确定单元,用于确定执行每个子任务的输入数据;
[0038] 处理单元,用于针对所述子任务集中的每个子任务执行以下操作:
[0039] 在系统配置的所有计算框架中确定具有执行该子任务的能力的计算框架作为候 选计算框架,其中,所述候选计算框架的数目大于或等于2 ;
[0040] 根据该子任务的输入数据、以及每个候选计算框架对应的预测模型,分别预测每 个候选计算框架执行该子任务时对应的运行时间和资源消耗;
[0041] 根据预测的每个候选计算框架执行该子任务时对应的运行时间和资源消耗,在所 述候选计算框架中,筛选出执行该子任务的目标计算框架;
[0042] 运行单元,用于基于筛选出的执行所述子任务集中的每个子任务的目标计算框 架,执行对应的子任务。
[0043] 结合第二方面,在第一种可能的实现方式中,所述接收单元接收的所述任务请求 中还携带有所述任务的输入数据;
[0044] 所述确定单元,用于:
[0045] 根据所述任务请求中携带的所述任务的输入数据,确定执行每个子任务的输入数 据。
[0046] 结合第二方面,在第二种可能的首先方式中,配置单元,用于在接收任务请求之 前,在系统配置的所有计算框架中,将具有执行相同任务类型的所有计算框架中的、执行所 述相同任务类型的应用程序接口 API通过预设的编程语言进行封装,形成统一 API ;
[0047] 所述处理单元,在系统配置的所有计算框架中确定具有执行该子任务的能力的计 算框架作为候选计算框架时,用于:
[0048] 确定该子任务的任务类型;
[0049] 确定该子任务的任务类型对应的统一 API ;
[0050] 根据确定的所述统一 API,确定具有执行该子任务的任务类型的所有计算框架,并 将确定的计算框架作为候选计算框架。
[0051] 结合第二方面或第二方面的以上任一种可能的实现方式,在第三种可能的实现方 式中,所述处理单元在获得候选计算框架对应的预测模型时,用于:
[0052] 读取预设的训练样本集合,所述训练样本集合是针对所述候选计算框架执行
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1