大数据平台动态性能优化方法及装置制造方法及图纸

技术编号:30023861 阅读:13 留言:0更新日期:2021-09-11 06:50
本申请公开了一种大数据平台动态性能优化方法及装置,该方法包括:遍历作业系统中的数据处理流程;其中,每个数据处理流程包括一个或多个作业;对于每个数据处理流程进行如下操作:分别查找出每个作业中的冗余数据;根据冗余数据的类型对冗余数据进行存储优化或计算性能优化。本申请公开的优化方法和装置,提升了数据存储性能与计算性能。升了数据存储性能与计算性能。升了数据存储性能与计算性能。

【技术实现步骤摘要】
大数据平台动态性能优化方法及装置


[0001]本申请涉及大数据
,尤指一种大数据平台动态性能优化方法及装置。

技术介绍

[0002]大数据平台是兼具数据接入、数据存储、数据分析、数据检索等功能在内的大数据处理系统。它包含数据集成、数据服务、数据存储、基于SQL的作业系统几个模块。
[0003]数据集成模块提供接口或协议,用于将外部数据通过接口、数据总线、或者主动拉取的方式接入到系统中。
[0004]数据服务模块支持将数据表以SQL的方式注册为对外接口,对外提供数据检索、接入、更新、删除服务,支持通过消息总线的方式对外提供数据的订阅推送服务。
[0005]数据存储引擎负责将数据存储在多种异构数据源中,数据源可以是支持SQL的MPP数据库或者使用列式文件存储(如ORC或Parquet)的数据仓库。从外部数据接入或者分析产生的结果数据都必须基于已存在的数据表,因此,必须由业务层先创建数据表。
[0006]基于SQL的作业系统用于支撑基于SQL的数据分析处理流程的执行,一个作业由至少一个SQL组成,SQL通常都是一些DDL语句(比如表的创建、修改、删除),或者查询插入语句insert into xxxx as select*from xxxx...语句,有至少一个输入表和一个结果输出表,多个作业由时序依赖关系组成工作流。作业系统负责解析作业或工作流,使他们按照预定于的依赖关系和和定时周期执行(如果有定义周期执行的话)。同时它也对外提供接口接受作业或工作流的接口触发执行和状态监控请求。r/>[0007]如果需要基于大数据平台开发业务,外部业务层需要:
[0008]使用SQL定义数据接入API(应用程序接口)接口,以支持外部数据导入平台;使用SQL在作业系统中定义数据处理流程;在存储引擎中创建数据接入、处理流程中需要用到的数据表;使用SQL定义数据检索API接口,以对外暴露处理后数据的接口;除了业务层定义的数据接入、检索服务API外,外部系统不允许采用其他方式访问平台内部的数据。
[0009]在业务处理中,作业执行完成后产生的结果数据会被插入到一张新的数据表。在很多场景下,中间结果表包含的字段通常只是最终业务所需字段的一部分,并不是全部,但保存过多的数据又会对数据平台存储空间和基于此表的后续计算产生较大性能影响。此外,长期不使用的业务流程空跑也会浪费系统资源。

技术实现思路

[0010]本申请提供了一种大数据平台动态性能优化方法及装置,能够提升大数据平台的数据存储性能和计算性能。
[0011]本申请提供的一种大数据平台动态性能优化方法,包括:
[0012]遍历作业系统中的数据处理流程;其中,每个数据处理流程包括一个或多个作业;
[0013]对于每个数据处理流程进行如下操作:
[0014]分别查找出每个作业中的冗余数据;
[0015]根据冗余数据的类型对冗余数据进行存储优化和/或计算性能优化。
[0016]一种示例性的实施例中,每个作业包括数据表,每个数据表包括字段;
[0017]冗余数据的类型包括冗余字段、冗余作业、冗余数据表;
[0018]分别查找出每个作业中的冗余数据,包括:分别查找出每个作业中的以下一种或多种类型的冗余数据:冗余字段、冗余数据表、冗余作业。
[0019]一种示例性的实施例中,每个数据处理流程中至少一个作业包括出向API;
[0020]当冗余数据的类型为冗余字段时,分别查找出每个作业中的冗余数据,包括:
[0021]遍历出向API直接关联的数据表;
[0022]对于每个与出向API直接关联的数据表进行如下操作:
[0023]将该数据表中满足第一预设条件的字段判定为冗余字段;
[0024]遍历每个作业,如果该作业的数据输出表是包含有冗余字段的数据表,则将该作业的数据输入表中与冗余字段对应的字段判定为冗余字段。
[0025]一种示例性的实施例中,所述第一预设条件包括:该字段与出向API的返回结果字段以及数据排序条件字段以及数据过滤条件字段不相同。
[0026]一种示例性的实施例中,分别查找出每个作业中的冗余字段,还包括:
[0027]对于每个作业分别进行如下处理:
[0028]获取该作业的数据输入表的字段与其他作业中的字段的对应关系;获取所述其他作业的作业关联条件字段、排序条件字段、过滤条件字段;
[0029]如果该作业的数据输入表中的字段与所述其他作业中的字段不存在对应关系,且该作业的数据输入表中的字段不是其他作业的作业关联条件字段以及排序条件字段以及过滤条件字段,则判定该作业的数据输入表中的字段为冗余字段;
[0030]其中,所述其他作业为数据处理流程中除该作业之外的作业。
[0031]一种示例性的实施例中,当冗余数据的类型为冗余作业和冗余数据表时,分别查找出每个作业中的冗余数据,包括:
[0032]获取出向API上一次的调用时间;
[0033]如果上一次的调用时间与当前时间的差值超过预设阈值,则判定该出向API为冗余作业;
[0034]判定与该出向API相关联的全部作业为冗余作业;判定与冗余作业相关联的数据表为冗余数据表。
[0035]一种示例性的实施例中,所述判定与该出向API相关联的全部作业为冗余作业,判定与冗余作业相关联的数据表为冗余数据表,包括:
[0036]获取该出向API引用的数据输入表且满足第二预设条件的数据输入表,将所获取的数据输入表判定为冗余数据表;
[0037]查找以获取到的数据输入表作为数据输出表的作业,将查找到的作业判定为冗余作业;
[0038]将冗余作业的全部输入表中满足第二预设条件的数据输入表判定为冗余数据表。
[0039]一种示例性的实施例中,对冗余数据进行存储优化和/或计算性能优化,包括:
[0040]对冗余字段不进行存储;
[0041]和/或,对冗余作业和冗余数据表进行锁定。
[0042]一种示例性的实施例中,当新增出口API接口或修改出口API接口时,触发冗余字段的重新查找。
[0043]一种示例性的实施例中,当接收到激活被锁定的出口API接口的命令时,激活被锁定的出口API接口,并激活被锁定的该出口API接口关联的被锁定的作业和数据表。
[0044]本申请提供的一种大数据平台动态性能优化装置,包括存储器和处理器,
[0045]所述存储器,用于保存用于优化的程序;
[0046]所述处理器,用于读取执行所述用于优化的程序,执行如下操作:
[0047]遍历作业系统中的数据处理流程;其中,每个数据处理流程包括一个或多个作业;
[0048]对于每个数据处理流程进行如下操作:
[0049]分别查找出每个作业中的冗余数据;
[0050]根据冗余数据的类型对冗余数据进行存储优化和/或计算性能优化。
[0051]一种示例性的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种大数据平台动态性能优化方法,其特征在于,遍历作业系统中的数据处理流程;其中,每个数据处理流程包括一个或多个作业;对于每个数据处理流程进行如下操作:分别查找出每个作业中的冗余数据;根据冗余数据的类型对冗余数据进行存储优化和/或计算性能优化。2.如权利要求1所述的方法,其特征在于:其中,每个作业包括数据表,每个数据表包括字段;冗余数据的类型包括冗余字段、冗余作业、冗余数据表;分别查找出每个作业中的冗余数据,包括:分别查找出每个作业中的以下一种或多种类型的冗余数据:冗余字段、冗余数据表、冗余作业。3.如权利要求2所述的方法,其特征在于:其中,每个数据处理流程中至少一个作业包括出向API;当冗余数据的类型为冗余字段时,分别查找出每个作业中的冗余数据,包括:遍历出向API直接关联的数据表;对于每个与出向API直接关联的数据表进行如下操作:将该数据表中满足第一预设条件的字段判定为冗余字段;遍历每个作业,如果该作业的数据输出表是包含有冗余字段的数据表,则将该作业的数据输入表中与冗余字段对应的字段判定为冗余字段。4.如权利要求3所述的方法,其特征在于:所述第一预设条件包括:该字段与出向API的返回结果字段以及数据排序条件字段以及数据过滤条件字段不相同。5.如权利要求3所述的方法,其特征在于:分别查找出每个作业中的冗余字段,还包括:对于每个作业分别进行如下处理:获取该作业的数据输入表的字段与其他作业中的字段的对应关系;获取所述其他作业的作业关联条件字段、排序条件字段、过滤条件字段;如果该作业的数据输入表中的字段与所述其他作业中的字段不存在对应关系,且该作业的数据输入表中的字段不是其他作业的作业关联条件字段以及排序条件字段以及过滤条件字段,则判定该作...

【专利技术属性】
技术研发人员:徐陇浙蒋照耀
申请(专利权)人:浙江宇视科技有限公司
类型:发明
国别省市:

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

1