CN110750582A - 数据处理方法、装置和*** - Google Patents
数据处理方法、装置和*** Download PDFInfo
- Publication number
- CN110750582A CN110750582A CN201810813835.7A CN201810813835A CN110750582A CN 110750582 A CN110750582 A CN 110750582A CN 201810813835 A CN201810813835 A CN 201810813835A CN 110750582 A CN110750582 A CN 110750582A
- Authority
- CN
- China
- Prior art keywords
- execution
- performance
- big data
- job
- data platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种数据处理方法、装置和***。其中,该方法包括:获取大数据平台的执行作业和执行作业的性能指标,其中,执行作业为对大数据平台中存储的数据进行处理的操作;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。本申请解决了现有技术中数据处理方法准确度低且效率低的技术问题。
Description
技术领域
本申请涉及大数据平台领域,具体而言,涉及一种数据处理方法、装置和***。
背景技术
目前,业界大数据平台随着业务的增长和数据的积累,数据规模和计算类型、计算复杂度都在快速增加。例如,大数据平台的数据量达到EB(艾字节,全称为Exabyte)级别,日处理作业数达到千万级、涉及运算的任务达数百万之多;作业类型包括:分布式sql、MapReduce、机器学***台也含spark sql、streaming、mllib、graph等作业类型;每类作业根据处理方式又分为批处理和准实时等多种模式。同时越来越多的客户和项目的加入,大数据平台也存在多集群计算、跨级群存储、多模式多版本共存、多入口提交作业等现状;另外线上集群计算性能也受到从底层硬件到操作***到分布式平台等各层软硬件以及执行计划、执行引擎、编译引擎、优化组件等多方面的影响和制约,关键指标分类众多各异。
如何在保障用户数据安全的前提下快速获得大数据计算平台线上作业功能实况分布和全方位性能趋势,多维度多层次勾勒大数据平台功能分布全景和性能趋势是大数据平台建设运维的迫切需求。
传统的数据处理方法为了获取线上作业功能分布是间断的利用人工去采样获取,而获取性能趋势一般是多天跟踪少量的作业来获取性能趋势;在某些必需的情况下,为获取更精确的数据是线下搭建一个对等测试集群并且用脱敏的方式从生产集群拖数据到测试集群里执行获取性能结果或分析功能分布。
但是,大数据平台传统的数据处理方法有以下几个缺点:
统计结果数据质量比较低,验证覆盖率低,结论片面;传统方法统计性能指标和功能分类粗粒度,延迟长。无论是勾勒线上功能分布全景还是性能趋势分析,传统利用人工去采样统计或者多天跟踪少量的作业来获取性能趋势的方法分析的作业规模有限制,一般只跟踪数百个作业,用少量作业的性能趋势和功能分布来描述复杂的多集群大数据平台整体,验证覆盖率低,结论片面。
数据安全得不到保障。传统方式通过线下搭建一个对等测试集群并且用人为方式脱敏的方式从生产集群拖数据到测试集群里获取性能结果或分析功能分布。脱敏处理容易有人为疏忽,造成数据泄露风险,同时脱敏数据不等于用户数据,可能违背用户程序的期望,从而造成用户程序崩溃,从而达不到模拟线上实况的目的。另外线下环境、机器配置、执行场景各种复杂度不一致,要完整还原线上真正执行场景尤其性能问题可能行很小。要模拟线上真实运行状况,往往会根据用户提交的真实请求构建测试用例,从而需要分析用户请求,这可能会造成用户知识产权的泄漏。
开销大、浪费严重、测试集过时、可用性差,传统方式统计者和分析者分离,定制化生成指标和多维查询操作成本高,延时过长;同时为了测试集群调度或者扩展性scalability,传统方式模拟生产环境搭建一个跟线上集群对等的测试集群。维护一个规模庞大的集群成本非常高,而且大规模的测试集群绝大部分时间的使用率都很低,造成严重浪费。另外线上的任务和用户作业也在不断增加和更新中,线下搭建的测试集合会随着时间过时,存在兼容性不够、代表性差、成本高等问题。
效率低,使用率低,效果差;传统方式只统计无分析,只监控无性能预警,需要人工再次去线上测试及定位问题。传统人工在采集用户执行信息到元仓等数据仓库后,编写sql(结构化查询语言,全称为Structured Query Language)语句的方式来统计,这种方式对一些功能类型抓取有较大难度,一般再每次需要数据时写一套脚本去获取数据,获取数据方式比较低效,并且每次要获取较长时间浪费计算资源,结果没有校验对比机制,效果比较差。另外如果以脱敏数据的从生产集群上抓数据和迁移执行作业到线下执行人为脱敏来分析,从搭建测试环境到拷贝脱敏后的数据到测试环境中测试,整个流程过程冗长,容易引起问题,严重影响整个开发测试的效率。
针对现有技术中数据处理方法准确度低且效率低的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种数据处理方法、装置和***,以至少解决现有技术中数据处理方法准确度低且效率低的技术问题。
根据本申请实施例的一个方面,提供了一种数据处理方法,包括:获取大数据平台的执行作业和执行作业的性能指标,其中,执行作业为对大数据平台中存储的数据进行处理的操作;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
根据本申请实施例的另一方面,还提供了一种数据处理装置,包括:获取模块,用于获取大数据平台的执行作业和执行作业的性能指标;第一处理模块,用于分析执行作业,得到执行作业的功能分类;第二处理模块,用于对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
根据本申请实施例的另一方面,还提供了一种数据处理***,包括:性能统计模块,用于获取大数据平台的执行作业和执行作业的性能指标;业务分析模块,用于分析执行作业,得到执行作业的功能分类;数据集成模块,与性能统计模块和业务分析模块连接,用于对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
根据本申请实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行如下步骤:获取大数据平台的执行作业和执行作业的性能指标;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
根据本申请实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行如下步骤:获取大数据平台的执行作业和执行作业的性能指标;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
根据本申请实施例的另一方面,还提供了一种数据处理***,包括:处理器;以及存储器,与处理器连接,用于为处理器提供处理以下处理步骤的指令:获取大数据平台的执行作业和执行作业的性能指标;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
在本申请实施例中,在获取到大数据平台的执行作业和执行作业的性能指标之后,可以分析执行作业,得到执行作业的功能分类,进一步地对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,从而实现实时勾勒大数据平台功能全景和多维性能趋势的目的。
容易注意到的是,通过对大数据平台的执行作业和执行作业的性能指标进行分析,从而得到功能分布和性能趋势,与现有技术相比,可以自动获取大数据平台的真实数据,无需人工干预进行数据脱敏,最大程度利用真实数据和真实场景,能够可靠地、完成全面地勾勒大数据平台的功能全貌和性能趋势走向,达到提高数据处理效率和准确度,提升数据处理可靠性的技术效果。
由此,本申请实施例提供的方案解决了现有技术中数据处理方法准确度低且效率低的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种用于实现数据处理方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本申请实施例的一种数据处理方法的流程图;
图3是根据本申请实施例的一种可选的sql类型分布示意图;
图4是根据本申请实施例的一种可选的数据处理方法的示意图;
图5是根据本申请实施例的一种可选的元仓数据的E-R示意图;
图6是根据本申请实施例的一种可选的Playback Detector执行流程的示意图;
图7是根据本申请实施例的一种可选的Playback Detector编译过程的示意图;
图8是根据本申请实施例的一种数据处理装置的示意图;
图9是根据本申请实施例的一种数据处理***的示意图;
图10是根据本申请实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
大数据平台:大数据平台可以是适用于大数据的技术,为了计算存储超大规模且越来越大的数据量而建设的分布式计算大数据平台。例如,阿里巴巴自主研发的海量数据处理平台MaxCompute,主要服务于批量结构化数据的存储和计算,可以提供海量数据仓库的解决方案以及针对大数据的分析建模服务。
执行作业:大数据平台中对数据进行处理的操作,可以包括多个按顺序执行的查询任务或执行任务。
元数据:提供关于信息资源或数据的一种结构化数据,是对信息资源的结构化的描述。
分布式结构化表格存储***OTS:全称为Open Table Store,构建在分布式***上的NoSQL数据库服务,提供海量结构化数据的存储和实时访问。
分布式存储***:将数据分散存储在多***立的设备上,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,不但提高了***的可靠性、可用性和存取效率,还易于扩展。
日志***SLS:全称为Simple Log Service,能够提供一个从日志采集、过滤、处理、集合到在线查询的完整的海量日志处理平台,满足各种类型的日志处理分析需求。
流计算:可以在大规模流动数据不断变化的过程中,实时地进行分析,捕捉到有用的信息,并将结果发送到下一计算节点。
逻辑计划:在一个逻辑计划中,每个查询有一个唯一标识,每一张表由一个唯一的标识,每一个列有一个唯一的标识,每一个表达式有一个唯一的标识。
有向无环图DAG:全称为Directed Acyclic Graph,是一种存储数据的方式。“有向”指所有数据顺着同一方向存储,“无环”指数据结构件不构成循环。
抽象语法树:Abstract Syntax Tree,简称为AST,是源代码的抽象语法结构的树状表现形式。一般的,在源代码的编译过程中,语法分析器创建出分析树。在后续的处理过程中,比如语义分析阶段,会添加一些信息。
实施例1
根据本申请实施例,还提供了一种数据处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现数据处理方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的性能统计模块、业务分析模块和数据集成模块,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据处理方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
在上述运行环境下,本申请提供了如图2所示的数据处理方法。图2是根据本申请实施例的一种数据处理方法的流程图。如图2所示,该方法可以包括如下步骤:
步骤S22,获取大数据平台的执行作业和执行作业的性能指标,其中,执行作业为对大数据平台中存储的数据进行处理的操作。
具体地,上述的执行作业可以是大数据平台的线上作业,包含有多个按顺序执行的查询任务或执行任务,每个查询任务可以是一个sql语句。可以根据大数据平台中的数据规模和计算类型等,对性能指标进行增加或灵活配置,性能指标可以包含不限于以下:cpu、内存、网络、硬盘读写、以及各层作业各阶段性能,但以内存划分又有配额、使用额、内存限制次数、可用内存、pagecache(页面高速缓存器)总量、内存s lab内存总量、内存脏页总量、内存扫描比率等指标。
需要说明的是,用户可以根据需求进行组合基础指标生成衍生指标,相关性能指标的趋势图反映了集群的性能走向和健康改良程度。如图3所示,图3示出了sql类型分布图,反馈了关联、聚合、排序等各类型sql作业的任务数、cpu内存消耗、数据吞吐量等多方位的性能信息。
步骤S24,分析执行作业,得到执行作业的功能分类。
具体地,可以通过对执行作业进行分析,从而得到执行作业中包含的每个查询任务或执行任务的类型、分布等等特点。查询任务可以探测分类为如下多种类型:Join、groupby、orderby、multiins、laterview、union、动态分区、view、窗口函数window、in子查询、cte写法、脚本模式、内置函数、自定义函数、隐式关联、exists、insertoverwrite、insertinton、静态分区、内置函数-udf、内置函数-udaf等。
步骤S26,对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
在一种可选的方案中,可以通过大数据技术和作业深度探测解析对历史用户的全部执行作业和执行作业的性能指标进行多维分析和机器学***台和集团的实际贡献。
图4是根据本申请实施例的一种可选的数据处理架构组件的示意图,下面结合图4对本申请一种优选的实施例进行详细说明,如图4所示,该架构可以由sql分析模块、离线和实时性能统计模块、数据ETL(全称为Extract-Transform-Load,抽取-转换-加载)集成模块等组成。整个架构的关键技术包括:元数据仓库、回放探测器Playback Detector、OPPIntegrator(输出提交处理程序集成器,OPP全称为Output Post Processor)。sql分析模块和性能统计模块中均部署有一个元数据仓库,性能统计模块可以通过离线汇总元仓信息以及通过流计算实时收集执行作业的性能指标,通过对离线汇总数据和实时性能数据进行ETL操作,多维度分析及深入挖掘,通过业务进行当前性能状况分析和历史趋势统计,提供智能分析和决策参数。
Playback Detector可以利用大数据平台本身灵活数据处理语言来构造分析任务;利用大数据平台本身超大规模计算能力来并行分析海量真实用户任务;利用大数据平台灵活的用户自定义函数UDF(全称为User Defined Functions)支持且良好的隔离方案;整个过程都在大数据平台完善的安全体系保护下,保障用户的知识产权不会泄露给开发人员和使用人员。
OPP Integrator可以通过离线汇总元仓2的信息和通过流计算实时收集执行作业的性能指标,实现进行功能分类和性能指标的集成、转换,多维度多层次勾勒大数据平台功能分布全景,同时分版本、分集群、分函数、分模式性能趋势分析和挖掘,提供管理层、研发运维多方位的功能。
通过上述架构,基于线上真实执行数据来细粒度分析线上性能现况和历史趋势,同时可以关联性能数据来分析上线功能模块和新增feature的性能提升幅度和版本升级影响的作业数量及对整个平台性能提升的贡献大小程度,在此基础上可以进一步对每个作业分维度分级别分权重打标签,勾勒构建线上用户真实场景的功能分布全图,挖掘各版本性能提升点对各部门各用户真实的性能收益和计费上的节约提升,分析各版本性能提升对整个平台和集团的实际贡献。
与传统方案比较,能够更加保护用户的数据,不需要人工干预进行数据脱敏,从而避免人为犯错的可能同时这种方式最大程度利用真实数据和真实场景,能够可靠地实时的获取超大规模线上大数据平台的功能分布和执行性能统计和长期趋势,能够完整全面地勾勒大数据平台的功能全貌和性能趋势走向,同时验证预估各功能feature和各性能改进点对大数据平台所有用户所有作业的影响范围和性能改进效果。
本申请上述实施例1所提供的方案,在获取到大数据平台的执行作业和执行作业的性能指标之后,可以分析执行作业,得到执行作业的功能分类,进一步地对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,从而实现实时勾勒大数据平台功能全景和多维性能趋势的目的。
容易注意到的是,通过对大数据平台的执行作业和执行作业的性能指标进行分析,从而得到功能分布和性能趋势,与现有技术相比,可以自动获取大数据平台的真实数据,无需人工干预进行数据脱敏,最大程度利用真实数据和真实场景,能够可靠地、完成全面地勾勒大数据平台的功能全貌和性能趋势走向,达到提高数据处理效率和准确度,提升数据处理可靠性的技术效果。
由此,本申请提供的上述实施例1的方案解决了现有技术中数据处理方法准确度低且效率低的技术问题。
在本申请上述实施例中,步骤S22,获取大数据平台的执行作业,包括:
步骤S222,实时获取第一元数据仓库中存储的第一执行作业,并按照离线采集方式获取第二元数据仓库中存储的第二执行作业,其中,大数据平台的执行作业至少包括:第一执行作业和/或第二执行作业,第一元数据仓库和第二元数据仓库在逻辑上相互独立。
具体地,如图4所示,上述的第一元数据仓库可以是元仓1,上述的第二元数据仓库可以是元仓2,第一元数据仓库部署在sql分析模块中,第二元数据仓库部署在性能统计模块中。元仓1和元仓2在物理部署上在一起,也即物理上两个仓库中的数据是存储在一起的,为了架构上方便,在逻辑分区上划分为元仓1和元仓2。
可选地,第一元数据仓库和/或第二元数据仓库的数据源包括如下至少一种:分布式结构化表格存储***、分布式存储***和日志***。
可选地,分布式结构化表格存储***中存储的数据包括如下至少一种:表的结构的元数据、表的实例的元数据、表的作业的元数据;分布式存储***存储的数据包括如下至少一种:分布式调度作业产生的文件和内部事件产生的数据;分布式调度作业产生的文件包括如下至少一种:作业状态的状态文件、作业计划的状态文件、大数据平台中任务的状态文件;内部事件产生的数据包括如下至少一种:表的大小、表的文件数量、列的大小、列的文件数量;日志***存储的日志包括:设备使用日志和大数据平台的日志。
具体地,第一元数据仓库和第二元数据仓库中存储的数据可以相同,可以使用大数据平台来分析自身的运行状况,将大数据平台中的各种元数据整理汇总成表,是OPP主要的数据来源。元仓数据来源包括:分布式结构化表格存储***OTS中存放的元数据,比如表的结构schema,实例instance、作业job的meta;分布式存储***(例如,可以是阿里巴巴研发的分布式存储***盘古)中存放了运行分布式调度(例如,可以是阿里巴巴研发的分布式调度***伏羲)job产生的作业状态jobstatus、作业计划job plan和大数据平台中任务odps(全称为Open Data Processing Service)task的状态文件detailstatus等文件,以及内部事件Checkpoint通过分析checkpoint文件,可以获取表table、列volume的大小文件个数等信息;日志***SLS可以通过写日志的形式,将数据导入大数据平台,既包括监控***(例如,可以是阿里巴巴研发的监控***神农)的关于机器使用的日志,也有大数据平台自身记录的日志。
需要说明的是,元仓数据可以分为源数据层、中间层、报表层等,元仓数据中部分实例-联系E-R图如图5所示。
需要说明的是,OPP Integrator采用功能特性分类和性能指标插拔的实现,可以不断的增加新的功能分类和性能指标,通过离线汇总和实时数据同步,最大程度地最贴切地逼近真实的大数据平台功能分布全景,多维度多层次地勾勒功能实况图,同时可以进一步全方位地做深度挖掘和趋势分析。上述的实时有两层含义,首先是指相对传统的间断的手动统计功能分布和性能趋势,本申请每天积累历史数据更新最新数据、不断用最新的数据来勾勒呈现线上的实况,同时针对特殊需求采用流计算实时秒级的采集线上执行作业的性能指标。
还需要说明的是,Palyback Detector可以插拔式的不断增加新的探测规则,精细的获取线上某类作业的分布和性能走向趋势。
在一种可选的方案中,如图4所示,OPP工具可以利用元数据仓库和日志***实时采集大数据平台的执行作业。sql分析模块可以从元仓1和日志***中实时采集大数据平台的第一执行作业,性能统计模块可以通过离线汇总元仓2中的执行作业,并实时采集执行作业的性能指标。
通过上述方案,通过将元数据仓库的建立和OPP Integartor架构设计的融合,数据处理过程中不用再脱敏真实数据,数据结果验证都是全部真实数据同时提供自动同步自动执行,无需任务干预,从而用户数据安全得到有效保证;OPP使得线上生产集群能同时运行探测任务,通过元数据仓库离线记录执行作业和实时获取线上日志分析真实的执行作业,不需要像传统方式那样生成同等规模的集群,从而降低了成本,避免浪费。
在本申请上述实施例中,步骤S22,获取执行作业的性能指标,包括:
步骤S224,获取大数据平台的日志。
步骤S226,通过流计算对大数据平台的日志进行分析,得到执行作业的性能指标。
在一种可选的方案中,如图4所示,性能统计模块中的实时数据可以通过流计算实时获取线上日志,并通过对线上日志进行分析,得到真实的执行作业,进一步得到执行作业的性能指标。
在本申请上述实施例中,步骤S24,分析执行作业,得到执行作业的功能分类,包括:
步骤S242,利用用户自定义函数中的编译器对执行作业进行编译,生成逻辑计划,其中,逻辑计划包括:与执行作业对应的查询任务的标识信息、表的标识信息、列的标识信息和表达式的标识信息。
可选地,用户自定义函数包括隔离功能,隔离功能用于保证用户的知识产权不被泄露。
具体地,上述的编辑器可以是通过机器学习得到的,通过编译器对执行作业进行编译,实现通过大数据技术和作业深度探测解析对历史用户的全部执行作业和执行作业的性能指标进行机器学习进行深入挖掘。
可选地,编译器采用抽象语法树模型。
具体地,Playback Detector可以对编译器进行相应的改造,使得编译器符合基于抽象语法树AST的访问者Visitor模型,经过编译编程一个AST抽象语法树,然后多次遍历AST抽象语法树,给树的节点绑定信息或者进行变换。
可选地,对执行作业进行编译包括如下至少一种:语法分析、类型绑定、语义分析、元数据统计绑定。
具体地,在对执行作业进行编译的过程中,可以进行语法分析,类型绑定,语义分学习,元数据统计数据绑定,然后生成逻辑计划交给优化器进行优化。
步骤S244,通过并行分析有向无环图对逻辑计划进行优化,得到执行作业的功能分类。
在一种可选的方案中,Playback Detector可以利用大数据平台的并行运算能力来探测分析每个执行作业,将编译查询作为一个UDF,然后执行一个并行DAG执行来并行上百万查询的编译优化分析,探测获得每个sql语句或执行任务的类型、分布等特点,从而得到执行作业的功能分类。如图6所示,对于新的查询任务,首先查询数据库中的元数据,然后放入回放队列,通过执行并行运算,从而得到最终的日报表。
例如,如图7所示,可以在编译过程中加入自定义的插件,使得可以在编译的过程中采集有用信息,并利用采集到的信息做进一步的深度分析和分类统计。整个编译流程包括:编译解析,查询回放元数据进行类型检查和常量合并,然后进行优化,最后生成物理执行计划,加入的插件可以分别在编译解析之后进行解析树遍历,在类型检查和常量合并之后生成AST的Visitor模型,在优化后生成执行计划Visitor模型,通过采集上述三个插件中收集的信息,进一步通过模块扁平化,可以得到最终的报表。
在本申请上述实施例中,步骤S26,对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,包括:
步骤S262,获取执行作业中的查询语句和执行实例的映射关系。
步骤S264,基于映射关系,对执行作业和执行作业的性能指标进行ETL处理,得到块矩阵。
步骤S266,对块矩阵进行多维度分析,得到大数据平台的功能分布和性能趋势。
具体地,通过对块矩阵进行多维度分析,实现通过大数据技术和作业深度探测解析对历史用户的全部执行作业和执行作业的性能指标进行多维分析。
在一种可选的方案中,OPP Integartor可以对关联sql和执行实例instance映射关联,对离线汇总数据和实时性能数据做ERL操作,多维度分析及输入挖掘建立Cube矩阵,同步数据到高响应存储数据库(例如,可以是云数据库RDS,全称为Relational DatabaseService),网站门户WebPortal多维分析,通过业务进行当前性能状况分析和历史趋势统计,提供智能分析和决策参考。
在本申请上述实施例中,步骤S266,对块矩阵进行多维度分析,得到大数据平台的功能分布和性能趋势,包括:
步骤S2662,获取执行作业的性能指标树和性能指标权重。
步骤S2664,基于执行作业,执行作业的性能指标、性能指标树和性能指标权重,得到大数据平台的功能分布和性能趋势。
在一种可选的方案中,OPP Integartor可以设置执行作业指标性能树,设置性能指标权重,对线上所有输入到语义和执行计划层面分析,对每个执行作业分维度分级别分权重打标签,勾勒构建线上用户真实场景的功能分布全图,挖掘各版本性能提升点对各部门各用户真实的性能收益和计费上的节约提升,分析各版本性能提升对整个平台和集团的实际贡献。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种用于实施上述数据处理方法的数据处理装置,如图8所示,该装置800包括:
获取模块802,用于获取大数据平台的执行作业和执行作业的性能指标。
具体地,上述的执行作业可以是大数据平台的线上作业,包含有多个按顺序执行的查询任务或执行任务,每个查询任务可以是一个sql语句。可以根据大数据平台中的数据规模和计算类型等,对性能指标进行增加或灵活配置,性能指标可以包含不限于以下:cpu、内存、网络、硬盘读写、以及各层作业各阶段性能,但以内存划分又有配额、使用额、内存限制次数、可用内存、pagecache(页面高速缓存器)总量、内存slab内存总量、内存脏页总量、内存扫描比率等指标。
第一处理模块804,用于分析执行作业,得到执行作业的功能分类。
具体地,可以通过对执行作业进行分析,从而得到执行作业中包含的每个查询任务或执行任务的类型、分布等等特点。查询任务可以探测分类为如下多种类型:Join、groupby、orderby、multiins、laterview、union、动态分区、view、窗口函数window、in子查询、cte写法、脚本模式、内置函数、自定义函数、隐式关联、exists、insertoverwrite、insertinton、静态分区、内置函数-udf、内置函数-udaf等。
第二处理模块806,用于对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
此处需要说明的是,上述获取模块802、第一处理模块804和第二处理模块806对应于实施例1中的步骤S22至步骤S26,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例1所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例1提供的计算机终端10中。
本申请上述实施例2所提供的方案,在获取到大数据平台的执行作业和执行作业的性能指标之后,可以分析执行作业,得到执行作业的功能分类,进一步地对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,从而实现实时勾勒大数据平台功能全景和多维性能趋势的目的。
容易注意到的是,通过对大数据平台的执行作业和执行作业的性能指标进行分析,从而得到功能分布和性能趋势,与现有技术相比,可以自动获取大数据平台的真实数据,无需人工干预进行数据脱敏,最大程度利用真实数据和真实场景,能够可靠地、完成全面地勾勒大数据平台的功能全貌和性能趋势走向,达到提高数据处理效率和准确度,提升数据处理可靠性的技术效果。
由此,本申请提供的上述实施例2的方案解决了现有技术中数据处理方法准确度低且效率低的技术问题。
在本申请上述实施例中,获取模块包括:
第一获取单元,用于实时获取第一元数据仓库中存储的第一执行作业;第二获取单元,用于按照离线采集方式获取第二元数据仓库中存储的第二执行作业;其中,大数据平台的执行作业至少包括:第一执行作业和/或第二执行作业,所以第一元数据仓库和第二元数据仓库在逻辑上相互独立。
可选地,第一元数据仓库和/或第二元数据仓库的数据源包括如下至少一种:分布式结构化表格存储***、分布式存储***和日志***。
可选地,分布式结构化表格存储***中存储的数据包括如下至少一种:表的结构的元数据、表的实例的元数据、表的作业的元数据;分布式存储***存储的数据包括如下至少一种:分布式调度作业产生的文件和内部事件产生的数据;分布式调度作业产生的文件包括如下至少一种:作业状态的状态文件、作业计划的状态文件、大数据平台中任务的状态文件;内部事件产生的数据包括如下至少一种:表的大小、表的文件数量、列的大小、列的文件数量;日志***存储的日志包括:设备使用日志和大数据平台的日志。
在本申请上述实施例中,获取模块还用于获取大数据平台的日志,通过流计算对大数据平台的日志进行分析,得到执行作业的性能指标。
在本申请上述实施例中,第一处理模块包括:
编译单元,用于利用用户自定义函数中的编译器对执行作业进行编译,生成逻辑计划,其中,逻辑计划包括:与执行作业对应的查询任务的标识信息、表的标识信息、列的标识信息和表达式的标识信息。
可选地,用户自定义函数包括隔离功能,隔离功能用于保证用户的知识产权不被泄露。
可选地,编译器采用抽象语法树模型。
可选地,对执行作业进行编译包括如下至少一种:语法分析、类型绑定、语义分析、元数据统计绑定。
优化单元,用于通过并行分析有向无环图对逻辑计划进行优化,得到执行作业的功能分类。
在本申请上述实施例中,第二处理模块包括:
第三获取单元,用于获取执行作业中的查询语句和执行实例的映射关系。
第一处理单元,用于基于映射关系,对执行作业和执行作业的性能指标进行ETL处理,得到块矩阵。
第二处理单元,用于对块矩阵进行多维度分析,得到大数据平台的功能分布和性能趋势。
在本申请上述实施例中,第二处理单元还用于获取执行作业的性能指标树和性能指标权重,基于执行作业,执行作业的性能指标、性能指标树和性能指标权重,得到大数据平台的功能分布和性能趋势。
实施例3
根据本申请实施例,还提供了一种数据处理***,如图9所示,该***包括:性能统计模块92、业务分析模块94和数据集成模块96。
其中,性能统计模块92用于获取大数据平台的执行作业和执行作业的性能指标;业务分析模块94用于分析执行作业,得到执行作业的功能分类;数据集成模块96与性能统计模块和业务分析模块连接,用于对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
具体地,上述的执行作业可以是大数据平台的线上作业,包含有多个按顺序执行的查询任务或执行任务,每个查询任务可以是一个sql语句。可以根据大数据平台中的数据规模和计算类型等,对性能指标进行增加或灵活配置,性能指标可以包含不限于以下:cpu、内存、网络、硬盘读写、以及各层作业各阶段性能,但以内存划分又有配额、使用额、内存限制次数、可用内存、pagecache(页面高速缓存器)总量、内存slab内存总量、内存脏页总量、内存扫描比率等指标。
可以通过对执行作业进行分析,从而得到执行作业中包含的每个查询任务或执行任务的类型、分布等等特点。查询任务可以探测分类为如下多种类型:Join、groupby、orderby、multiins、laterview、union、动态分区、view、窗口函数window、in子查询、cte写法、脚本模式、内置函数、自定义函数、隐式关联、exists、insertoverwrite、insertinton、静态分区、内置函数-udf、内置函数-udaf等。
本申请上述实施例3所提供的方案,在获取到大数据平台的执行作业和执行作业的性能指标之后,可以分析执行作业,得到执行作业的功能分类,进一步地对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,从而实现实时勾勒大数据平台功能全景和多维性能趋势的目的。
容易注意到的是,通过对大数据平台的执行作业和执行作业的性能指标进行分析,从而得到功能分布和性能趋势,与现有技术相比,可以自动获取大数据平台的真实数据,无需人工干预进行数据脱敏,最大程度利用真实数据和真实场景,能够可靠地、完成全面地勾勒大数据平台的功能全貌和性能趋势走向,达到提高数据处理效率和准确度,提升数据处理可靠性的技术效果。
由此,本申请提供的上述实施例3的方案解决了现有技术中数据处理方法准确度低且效率低的技术问题。
在本申请上述实施例中,业务分析模块还用于实时获取第一元数据仓库中存储的第一执行作业;性能统计模块还用于按照离线采集方式获取第二元数据仓库中存储的第二执行作业,其中,大数据平台的执行作业至少包括:第一执行作业和/或第二执行作业,所以第一元数据仓库和第二元数据仓库在逻辑上相互独立。
可选地,第一元数据仓库和/或第二元数据仓库的数据源包括如下至少一种:分布式结构化表格存储***、分布式存储***和日志***。
可选地,分布式结构化表格存储***中存储的数据包括如下至少一种:表的结构的元数据、表的实例的元数据、表的作业的元数据;分布式存储***存储的数据包括如下至少一种:分布式调度作业产生的文件和内部事件产生的数据;分布式调度作业产生的文件包括如下至少一种:作业状态的状态文件、作业计划的状态文件、大数据平台中任务的状态文件;内部事件产生的数据包括如下至少一种:表的大小、表的文件数量、列的大小、列的文件数量;日志***存储的日志包括:设备使用日志和大数据平台的日志。
在本申请上述实施例中,性能统计模块还用于获取大数据平台的日志,通过流计算对大数据平台的日志进行分析,得到执行作业的性能指标。
在本申请上述实施例中,业务分析模块还用于利用用户自定义函数中的编译器对执行作业进行编译,生成逻辑计划,并通过并行分析有向无环图对逻辑计划进行优化,得到执行作业的功能分类,其中,逻辑计划包括:与执行作业对应的查询任务的标识信息、表的标识信息、列的标识信息和表达式的标识信息。
可选地,用户自定义函数包括隔离功能,隔离功能用于保证用户的知识产权不被泄露。
可选地,编译器采用抽象语法树模型。
可选地,对执行作业进行编译包括如下至少一种:语法分析、类型绑定、语义分析、元数据统计绑定。
在本申请上述实施例中,数据集成模块还用于获取执行作业中的查询语句和执行实例的映射关系,基于映射关系,对执行作业和执行作业的性能指标进行ETL处理,得到块矩阵,并对块矩阵进行多维度分析,得到大数据平台的功能分布和性能趋势。
在本申请上述实施例中,数据集成模块还用于获取执行作业的性能指标树和性能指标权重,并基于执行作业,执行作业的性能指标、性能指标树和性能指标权重,得到大数据平台的功能分布和性能趋势。
实施例4
根据本申请实施例,还提供了一种数据处理***,包括:
处理器。以及
存储器,与处理器连接,用于为处理器提供处理以下处理步骤的指令:获取大数据平台的执行作业和执行作业的性能指标;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
本申请上述实施例4所提供的方案,在获取到大数据平台的执行作业和执行作业的性能指标之后,可以分析执行作业,得到执行作业的功能分类,进一步地对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,从而实现实时勾勒大数据平台功能全景和多维性能趋势的目的。
容易注意到的是,通过对大数据平台的执行作业和执行作业的性能指标进行分析,从而得到功能分布和性能趋势,与现有技术相比,可以自动获取大数据平台的真实数据,无需人工干预进行数据脱敏,最大程度利用真实数据和真实场景,能够可靠地、完成全面地勾勒大数据平台的功能全貌和性能趋势走向,达到提高数据处理效率和准确度,提升数据处理可靠性的技术效果。
由此,本申请提供的上述实施例4的方案解决了现有技术中数据处理方法准确度低且效率低的技术问题。
实施例5
本申请的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行数据处理方法中以下步骤的程序代码:获取大数据平台的执行作业和执行作业的性能指标,其中,执行作业为对大数据平台中存储的数据进行处理的操作;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
可选地,图10是根据本申请实施例的一种计算机终端的结构框图。如图10所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器102以及存储器104。
其中,存储器可用于存储软件程序以及模块,如本申请实施例中的数据处理方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据处理方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取大数据平台的执行作业和执行作业的性能指标,其中,执行作业为对大数据平台中存储的数据进行处理的操作;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
可选的,上述处理器还可以执行如下步骤的程序代码:实时获取第一元数据仓库中存储的第一执行作业,并按照离线采集方式获取第二元数据仓库中存储的第二执行作业,其中,大数据平台的执行作业至少包括:第一执行作业和/或第二执行作业,所以第一元数据仓库和第二元数据仓库在逻辑上相互独立。
可选的,上述处理器还可以执行如下步骤的程序代码:第一元数据仓库和/或第二元数据仓库的数据源包括如下至少一种:分布式结构化表格存储***、分布式存储***和日志***。
可选的,上述处理器还可以执行如下步骤的程序代码:分布式结构化表格存储***中存储的数据包括如下至少一种:表的结构的元数据、表的实例的元数据、表的作业的元数据;分布式存储***存储的数据包括如下至少一种:分布式调度作业产生的文件和内部事件产生的数据;分布式调度作业产生的文件包括如下至少一种:作业状态的状态文件、作业计划的状态文件、大数据平台中任务的状态文件;内部事件产生的数据包括如下至少一种:表的大小、表的文件数量、列的大小、列的文件数量;日志***存储的日志包括:设备使用日志和大数据平台的日志。
可选的,上述处理器还可以执行如下步骤的程序代码:获取大数据平台的日志;通过流计算对大数据平台的日志进行分析,得到执行作业的性能指标。
可选的,上述处理器还可以执行如下步骤的程序代码:利用用户自定义函数中的编译器对执行作业进行编译,生成逻辑计划,其中,逻辑计划包括:与执行作业对应的查询任务的标识信息、表的标识信息、列的标识信息和表达式的标识信息;通过并行分析有向无环图对逻辑计划进行优化,得到执行作业的功能分类。
可选的,上述处理器还可以执行如下步骤的程序代码:用户自定义函数包括隔离功能,隔离功能用于保证用户的知识产权不被泄露。
可选的,上述处理器还可以执行如下步骤的程序代码:编译器采用抽象语法树模型。
可选的,上述处理器还可以执行如下步骤的程序代码:对执行作业进行编译包括如下至少一种:语法分析、类型绑定、语义分析、元数据统计绑定。
可选的,上述处理器还可以执行如下步骤的程序代码:获取执行作业中的查询语句和执行实例的映射关系;基于映射关系,对执行作业和执行作业的性能指标进行ETL处理,得到块矩阵;对块矩阵进行多维度分析,得到大数据平台的功能分布和性能趋势。
可选的,上述处理器还可以执行如下步骤的程序代码:获取执行作业的性能指标树和性能指标权重;基于执行作业,执行作业的性能指标、性能指标树和性能指标权重,得到大数据平台的功能分布和性能趋势。
采用本申请实施例,在获取到大数据平台的执行作业和执行作业的性能指标之后,可以分析执行作业,得到执行作业的功能分类,进一步地对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势,从而实现实时勾勒大数据平台功能全景和多维性能趋势的目的。
容易注意到的是,通过对大数据平台的执行作业和执行作业的性能指标进行分析,从而得到功能分布和性能趋势,与现有技术相比,可以自动获取大数据平台的真实数据,无需人工干预进行数据脱敏,最大程度利用真实数据和真实场景,能够可靠地、完成全面地勾勒大数据平台的功能全貌和性能趋势走向,达到提高数据处理效率和准确度,提升数据处理可靠性的技术效果。
由此,本申请提供的方案解决了现有技术中数据处理方法准确度低且效率低的技术问题。
本领域普通技术人员可以理解,图10所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图10中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图10所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例6
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的数据处理方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:获取大数据平台的执行作业和执行作业的性能指标,其中,执行作业为对大数据平台中存储的数据进行处理的操作;分析执行作业,得到执行作业的功能分类;对执行作业的性能指标和执行作业的功能分类进行分析,得到大数据平台的功能分布和性能趋势。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:实时获取第一元数据仓库中存储的第一执行作业,并按照离线采集方式获取第二元数据仓库中存储的第二执行作业,其中,大数据平台的执行作业至少包括:第一执行作业和/或第二执行作业,所以第一元数据仓库和第二元数据仓库在逻辑上相互独立。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:第一元数据仓库和/或第二元数据仓库的数据源包括如下至少一种:分布式结构化表格存储***、分布式存储***和日志***。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:分布式结构化表格存储***中存储的数据包括如下至少一种:表的结构的元数据、表的实例的元数据、表的作业的元数据;分布式存储***存储的数据包括如下至少一种:分布式调度作业产生的文件和内部事件产生的数据;分布式调度作业产生的文件包括如下至少一种:作业状态的状态文件、作业计划的状态文件、大数据平台中任务的状态文件;内部事件产生的数据包括如下至少一种:表的大小、表的文件数量、列的大小、列的文件数量;日志***存储的日志包括:设备使用日志和大数据平台的日志。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:按照实时采集方式获取大数据平台的日志;通过流计算对大数据平台的日志进行分析,得到执行作业的性能指标。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:利用用户自定义函数中的编译器对执行作业进行编译,生成逻辑计划,其中,逻辑计划包括:与执行作业对应的查询任务的标识信息、表的标识信息、列的标识信息和表达式的标识信息;通过并行分析有向无环图对逻辑计划进行优化,得到执行作业的功能分类。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:用户自定义函数包括隔离功能,隔离功能用于保证用户的知识产权不被泄露。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:编译器采用抽象语法树模型。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:对执行作业进行编译包括如下至少一种:语法分析、类型绑定、语义分析、元数据统计绑定。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:获取执行作业中的查询语句和执行实例的映射关系;基于映射关系,对执行作业和执行作业的性能指标进行ETL处理,得到块矩阵;对块矩阵进行多维度分析,得到大数据平台的功能分布和性能趋势。
可选地,上述存储介质还被设置为存储用于执行以下步骤的程序代码:获取执行作业的性能指标树和性能指标权重;基于执行作业,执行作业的性能指标、性能指标树和性能指标权重,得到大数据平台的功能分布和性能趋势。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (14)
1.一种数据处理方法,包括:
获取大数据平台的执行作业和所述执行作业的性能指标,其中,所述执行作业为对所述大数据平台中存储的数据进行处理的操作;
分析所述执行作业,得到所述执行作业的功能分类;
对所述执行作业的性能指标和所述执行作业的功能分类进行分析,得到所述大数据平台的功能分布和性能趋势。
2.根据权利要求1所述的方法,其中,获取大数据平台的执行作业,包括:
实时获取第一元数据仓库中存储的第一执行作业,并按照离线采集方式获取第二元数据仓库中存储的第二执行作业,其中,所述大数据平台的执行作业至少包括:所述第一执行作业和/或所述第二执行作业,所述第一元数据仓库和所述第二元数据仓库在逻辑上相互独立。
3.根据权利要求2所述的方法,其中,所述第一元数据仓库和/或所述第二元数据仓库的数据源包括如下至少一种:分布式结构化表格存储***、分布式存储***和日志***。
4.根据权利要求3所述的方法,其中,所述分布式结构化表格存储***中存储的数据包括如下至少一种:表的结构的元数据、所述表的实例的元数据、所述表的作业的元数据;所述分布式存储***存储的数据包括如下至少一种:分布式调度作业产生的文件和内部事件产生的数据;所述分布式调度作业产生的文件包括如下至少一种:作业状态的状态文件、作业计划的状态文件、大数据平台中任务的状态文件;所述内部事件产生的数据包括如下至少一种:表的大小、表的文件数量、列的大小、列的文件数量;所述日志***存储的日志包括:设备使用日志和所述大数据平台的日志。
5.根据权利要求1所述的方法,其中,获取所述执行作业的性能指标,包括:
获取所述大数据平台的日志;
通过流计算对所述大数据平台的日志进行分析,得到所述执行作业的性能指标。
6.根据权利要求1所述的方法,其中,分析所述执行作业,得到所述执行作业的功能分类,包括:
利用用户自定义函数中的编译器对所述执行作业进行编译,生成逻辑计划,其中,所述逻辑计划包括:与所述执行作业对应的查询任务的标识信息、表的标识信息、列的标识信息和表达式的标识信息;
通过并行分析有向无环图对所述逻辑计划进行优化,得到所述执行作业的功能分类。
7.根据权利要求6所述的方法,其中,所述编译器采用抽象语法树模型。
8.根据权利要求6所述的方法,其中,对所述执行作业进行编译包括如下至少一种:语法分析、类型绑定、语义分析、元数据统计绑定。
9.根据权利要求6所述的方法,其中,所述用户自定义函数包括隔离功能,所述隔离功能用于保证用户的知识产权不被泄露。
10.根据权利要求1至9中任一项所述的方法,其中,对所述执行作业的性能指标和所述执行作业的功能分类进行分析,得到所述大数据平台的功能分布和性能趋势,包括:
获取所述执行作业中的查询语句和执行实例的映射关系;
基于所述映射关系,对所述执行作业和所述执行作业的性能指标进行ETL处理,得到块矩阵;
对所述块矩阵进行多维度分析,得到所述大数据平台的功能分布和性能趋势。
11.根据权利要求10所述的方法,其中,对所述块矩阵进行多维度分析,得到所述大数据平台的功能分布和性能趋势,包括:
获取所述执行作业的性能指标树和性能指标权重;
基于所述执行作业,所述执行作业的性能指标、所述性能指标树和所述性能指标权重,得到所述大数据平台的功能分布和性能趋势。
12.一种数据处理装置,包括:
获取模块,用于获取大数据平台的执行作业和所述执行作业的性能指标;
第一处理模块,用于分析所述执行作业,得到所述执行作业的功能分类;
第二处理模块,用于对所述执行作业的性能指标和所述执行作业的功能分类进行分析,得到所述大数据平台的功能分布和性能趋势。
13.根据权利要求12所述的装置,其中,所述获取模块包括:
第一获取单元,用于实时获取第一元数据仓库中存储的第一执行作业;
第二获取单元,用于按照离线采集方式获取第二元数据仓库中存储的第二执行作业;
其中,所述大数据平台的执行作业至少包括:所述第一执行作业和/或所述第二执行作业,所述第一元数据仓库和所述第二元数据仓库在逻辑上相互独立。
14.一种数据处理***,包括:
性能统计模块,用于获取大数据平台的执行作业和所述执行作业的性能指标;
业务分析模块,用于分析所述执行作业,得到所述执行作业的功能分类;
数据集成模块,与所述性能统计模块和所述业务分析模块连接,用于对所述执行作业的性能指标和所述执行作业的功能分类进行分析,得到所述大数据平台的功能分布和性能趋势。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810813835.7A CN110750582B (zh) | 2018-07-23 | 2018-07-23 | 数据处理方法、装置和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810813835.7A CN110750582B (zh) | 2018-07-23 | 2018-07-23 | 数据处理方法、装置和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110750582A true CN110750582A (zh) | 2020-02-04 |
CN110750582B CN110750582B (zh) | 2023-05-02 |
Family
ID=69275117
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810813835.7A Active CN110750582B (zh) | 2018-07-23 | 2018-07-23 | 数据处理方法、装置和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750582B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552524A (zh) * | 2020-05-06 | 2020-08-18 | Oppo(重庆)智能科技有限公司 | 一种插件加载方法、装置及计算机可读存储介质 |
CN113626423A (zh) * | 2021-06-29 | 2021-11-09 | 欧电云信息科技(江苏)有限公司 | 业务数据库的日志管理方法、装置、*** |
CN114817299A (zh) * | 2022-05-17 | 2022-07-29 | 在线途游(北京)科技有限公司 | 一种基于udaf的数据分析方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005086470A1 (en) * | 2004-03-03 | 2005-09-15 | Canon Kabushiki Kaisha | Image processing apparatus, method and program |
US20070237086A1 (en) * | 2005-10-14 | 2007-10-11 | Sanjin Tulac | Transient data facility for database applications |
CN102339233A (zh) * | 2010-07-15 | 2012-02-01 | 戴元顺 | 云计算集中管理平台 |
US20130218893A1 (en) * | 2012-02-17 | 2013-08-22 | Girish Kalasa Ganesh Pai | Executing in-database data mining processes |
CN103795804A (zh) * | 2014-02-24 | 2014-05-14 | 华为技术有限公司 | 存储资源调度方法及存储计算*** |
CN105279286A (zh) * | 2015-11-27 | 2016-01-27 | 陕西艾特信息化工程咨询有限责任公司 | 一种交互式大数据分析查询处理方法 |
US20160253340A1 (en) * | 2015-02-27 | 2016-09-01 | Podium Data, Inc. | Data management platform using metadata repository |
CN106502792A (zh) * | 2016-10-20 | 2017-03-15 | 华南理工大学 | 一种面向不同类型负载的多租户资源优化调度方法 |
CN107122443A (zh) * | 2017-04-24 | 2017-09-01 | 中国科学院软件研究所 | 一种基于Spark SQL的分布式全文检索***及方法 |
-
2018
- 2018-07-23 CN CN201810813835.7A patent/CN110750582B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005086470A1 (en) * | 2004-03-03 | 2005-09-15 | Canon Kabushiki Kaisha | Image processing apparatus, method and program |
US20070237086A1 (en) * | 2005-10-14 | 2007-10-11 | Sanjin Tulac | Transient data facility for database applications |
CN102339233A (zh) * | 2010-07-15 | 2012-02-01 | 戴元顺 | 云计算集中管理平台 |
US20130218893A1 (en) * | 2012-02-17 | 2013-08-22 | Girish Kalasa Ganesh Pai | Executing in-database data mining processes |
CN103795804A (zh) * | 2014-02-24 | 2014-05-14 | 华为技术有限公司 | 存储资源调度方法及存储计算*** |
US20160253340A1 (en) * | 2015-02-27 | 2016-09-01 | Podium Data, Inc. | Data management platform using metadata repository |
CN105279286A (zh) * | 2015-11-27 | 2016-01-27 | 陕西艾特信息化工程咨询有限责任公司 | 一种交互式大数据分析查询处理方法 |
CN106502792A (zh) * | 2016-10-20 | 2017-03-15 | 华南理工大学 | 一种面向不同类型负载的多租户资源优化调度方法 |
CN107122443A (zh) * | 2017-04-24 | 2017-09-01 | 中国科学院软件研究所 | 一种基于Spark SQL的分布式全文检索***及方法 |
Non-Patent Citations (1)
Title |
---|
李荣荣;牛立栋;孙纪敏;: "基于CloudSim的分类负载均衡调度模型" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552524A (zh) * | 2020-05-06 | 2020-08-18 | Oppo(重庆)智能科技有限公司 | 一种插件加载方法、装置及计算机可读存储介质 |
CN111552524B (zh) * | 2020-05-06 | 2023-10-13 | Oppo(重庆)智能科技有限公司 | 一种插件加载方法、装置及计算机可读存储介质 |
CN113626423A (zh) * | 2021-06-29 | 2021-11-09 | 欧电云信息科技(江苏)有限公司 | 业务数据库的日志管理方法、装置、*** |
CN113626423B (zh) * | 2021-06-29 | 2024-01-30 | 欧电云信息科技(江苏)有限公司 | 业务数据库的日志管理方法、装置、*** |
CN114817299A (zh) * | 2022-05-17 | 2022-07-29 | 在线途游(北京)科技有限公司 | 一种基于udaf的数据分析方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110750582B (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109684352B (zh) | 数据分析***、方法、存储介质及电子设备 | |
US10534773B2 (en) | Intelligent query parameterization of database workloads | |
CN107506451B (zh) | 用于数据交互的异常信息监控方法及装置 | |
Herodotou et al. | Profiling, what-if analysis, and cost-based optimization of mapreduce programs | |
KR20150092586A (ko) | 데이터 플로 기반 대규모 데이터 스트림 처리 방법 및 장치 | |
CN111159180A (zh) | 一种基于数据资源目录构建的数据处理方法及*** | |
Mustafa et al. | A machine learning approach for predicting execution time of spark jobs | |
Jewell et al. | Performance and capacity implications for big data | |
CN114416855A (zh) | 一种基于电力大数据的可视化平台及方法 | |
CN110750582A (zh) | 数据处理方法、装置和*** | |
CN106407429A (zh) | 文件追踪方法、装置及*** | |
Pääkkönen | Feasibility analysis of AsterixDB and Spark streaming with Cassandra for stream-based processing | |
CN112148578A (zh) | 基于机器学习的it故障缺陷预测方法 | |
CN114218218A (zh) | 基于数据仓库的数据处理方法、装置、设备及存储介质 | |
CN116009428A (zh) | 基于流式计算引擎的工业数据监控***和方法、介质 | |
Senger et al. | BSP cost and scalability analysis for MapReduce operations | |
CN116010452A (zh) | 基于流式计算引擎的工业数据处理***和方法、介质 | |
CN112395333A (zh) | 用于排查数据异常的方法、装置、电子设备及存储介质 | |
US10901998B2 (en) | Managing a modification to a consistent region of a stream computing environment | |
Wu et al. | An Auxiliary Decision‐Making System for Electric Power Intelligent Customer Service Based on Hadoop | |
Martinviita | Time series database in Industrial IoT and its testing tool | |
Bhandare et al. | Generic log analyzer using Hadoop MapReduce framework | |
CN116795816A (zh) | 一种基于流式处理的数仓建设方法和*** | |
CN105512154A (zh) | 一种基于嵌入式数据库的环保数据采集方法及*** | |
CN115510139A (zh) | 数据查询方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40022282 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |