CN112860238B - 一种数据处理方法、装置、计算机设备及存储介质 - Google Patents
一种数据处理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112860238B CN112860238B CN202110188815.7A CN202110188815A CN112860238B CN 112860238 B CN112860238 B CN 112860238B CN 202110188815 A CN202110188815 A CN 202110188815A CN 112860238 B CN112860238 B CN 112860238B
- Authority
- CN
- China
- Prior art keywords
- business system
- target
- job
- data
- plug
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- 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
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种数据处理方法、装置、计算机设备及存储介质,通过确定至少一个插件中与目标业务系统的数据处理需求匹配的目标插件;响应在目标插件的配置页面中对作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业;根据用于对目标业务系统进行数据处理的至少一个作业生成目标业务系统的作业流;在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用数据处理请求指示的目标业务系统的目标作业流可以实现对数据库集群中拉取的目标业务系统的数据的处理。本申请通过统一的数据开发系统实现对多种数据处理场景的数据处理,不仅能降低开发难度、提高开发效率,而且能够在简化数据处理操作的基础上,提高数据在线处理能力。
Description
技术领域
本发明涉及计算机技术领域,更具体地说,涉及一种数据处理方法、装置、计算机设备及存储介质。
背景技术
传统的大数据开发方法需要从业务系统的数据库中查询各类数据,然后在不同的平台处理不同数据源的数据。并且,各个平台的开发者需要使用单独的数据库,例如,关系型MySQL、Oracle等,非关系型Mongo、Redis等。
平台的数据存储在一台或者多台机器上,并且有可能无法完全存储,开发者需要在来源多、格式多、体量大的数据集合中通过数据分析把有价值的数据处理筛选出来并在相应的平台进行数据处理,这样的流程和模式带来的问题显而易见。
首先针对海量的数据没有一个统一数据开发的系统,这一点无疑极大增加了平台的开发难度,降低了开发效率。并且,当开发者一次数据处理要使用多家平台和多种类型数据库时,又要进行不同的配置,这样繁琐又耗时。另外,由于平台使用的机器数量的限制,很多数据无法完全存储与流动,这样导致“缺数据”现象,因此平台的在线处理的能力也极低。
发明内容
有鉴于此,为解决上述问题,本发明提供一种数据处理方法、装置、计算机设备及存储介质,通过一个统一的插件化数据开发系统实现对多种数据处理场景的数据处理,不仅能降低开发难度、提高开发效率,而且能够在简化数据处理操作的基础上,提高数据在线处理能力,技术方案如下:
一种数据处理方法,应用于基于Springboot框架的数据开发系统,该方法包括:
确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,所述目标业务系统为至少一个业务系统中的任一业务系统;
展示所述目标插件的配置页面;
响应在所述配置页面中对所述目标插件的作业属性的编辑操作生成用于对所述目标业务系统进行数据处理的作业,所述作业的编程语言与所述目标业务系统的编程语言相同;
确定用于对所述目标业务系统进行数据处理的至少一个作业,根据所述至少一个作业生成所述目标业务系统的作业流;
在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流对数据库集群中拉取的所述目标业务系统的数据进行数据处理;
所述数据库集群用于拉取所述至少一个业务系统中的数据,且所述数据库集群中对目标数据类型的数据分配的存储空间与所述至少一个业务系统中所述目标数据类型的数据量有关。
优选的,所述确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,包括:
确定至少一个业务系统中待生成作业流的目标业务系统;
从至少一个插件中确定编程语言和所述目标业务系统的编程语言相同的各个插件;
从所确定的各个插件中获取与对所述目标业务系统的数据处理类型匹配的目标插件。
优选的,所述插件携带插件类型,所述插件类型为代码类型、向导式类型或支持算子类型,所述从所确定的各个插件中获取与对所述目标业务系统的数据处理类型匹配的目标插件,包括:
确定所述数据处理类型所属的目标插件类型;
将所述目标插件类型的插件确定为与所述数据处理类型匹配的目标插件。
优选的,所述响应在所述配置页面中对所述目标插件的作业属性的编辑操作生成用于对所述目标业务系统进行数据处理的作业,包括:
在所述配置页面中提示所述目标业务系统的数据库信息;
响应用户基于所述数据库信息对所述目标插件的作业属性的编辑操作,生成所述目标业务系统的作业;所述编辑操作包括代码编辑操作、属性编辑操作、算子编辑操作或依赖包引入编辑操作。
优选的,所述确定用于对所述目标业务系统进行数据处理的至少一个作业,根据所述至少一个作业生成所述目标业务系统的作业流,包括:
响应用户对所述目标业务系统的至少一个作业的拖拽操作,生成由所述至少一个作业构成的作业流。
优选的,还包括:
解析并生成所述作业流中每个所述作业的作业实例;
根据所述作业流中各个作业的作业实例生成作业流实例;
所述在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流对数据库集群中拉取的所述目标业务系统的数据进行数据处理,包括:
在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的所述目标业务系统的数据进行数据处理。
优选的,所述在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的所述目标业务系统的数据进行数据处理,包括:
接收数据处理请求,确定发送所述数据处理请求的用户指示对所述目标业务系统进行数据处理的目标作业流;
确定所述用户是否拥有对所述目标业务系统的处理权限;若所述用户为所述目标业务系统的管理者/所述用户为所述目标业务系统的管理者的对所述目标业务系统的授权用户,确定所述用户拥有对所述目标业务系统的处理权限;
调用所述目标作业流的作业流实例对数据库集群中拉取的所述目标业务系统的数据进行数据处理。
一种数据处理装置,应用于基于Springboot框架的数据开发系统,该装置包括:
目标插件确定单元,用于确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,所述目标业务系统为至少一个业务系统中的任一业务系统;
配置页面展示单元,用于展示所述目标插件的配置页面;
作业生成单元,用于响应在所述配置页面中对所述目标插件的作业属性的编辑操作生成用于对所述目标业务系统进行数据处理的作业,所述作业的编程语言与所述目标业务系统的编程语言相同;
作业流生成单元,用于确定用于对所述目标业务系统进行数据处理的至少一个作业,根据所述至少一个作业生成所述目标业务系统的作业流;
数据处理单元,用于在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流对数据库集群中拉取的所述目标业务系统的数据进行数据处理;
所述数据库集群用于拉取所述至少一个业务系统中的数据,且所述数据库集群中对目标数据类型的数据分配的存储空间与所述至少一个业务系统中所述目标数据类型的数据量有关。
一种计算机设备,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现所述数据处理方法。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器加载并执行,实现所述数据处理方法的各步骤。
本申请提供一种数据处理方法、装置、计算机设备及存储介质,通过确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件;展示目标插件的配置页面;响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业;根据用于对目标业务系统进行数据处理的至少一个作业生成目标业务系统的作业流;在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用数据处理请求指示的目标业务系统的目标作业流可以实现对数据库集群中拉取的目标业务系统的数据的处理。本申请提供的数据处理方法可以构建与至少一个业务系统中任意一个业务系统匹配的工作流,基于业务系统的工作流可以实现对业务系统的数据处理,通过不同业务系统的工作流可以实现对不同业务系统的数据处理,不需要针对不同的业务系统单独开发相应的平台来实现数据处理,降低了开发难度,提高了开发效率,简化了数据处理操作;而且,本申请的数据库集群用于拉取至少一个业务系统中的数据,且数据库集群对不同数据类型的数据实现了存储空间的按需分配,提高了数据在线处理能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种数据处理方法流程图;
图2为本申请实施例提供的另一种数据处理方法流程图;
图3为本申请实施例提供的一种在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的目标业务系统的数据进行数据处理的方法流程图;
图4为本申请实施例提供的一种数据开发系统架构图;
图5为本申请实施例提供的一种插件与作业的关系示意图;
图6为本申请实施例提供的一种作业请求处理的流程示意图;
图7为本申请实施例提供的一种数据处理装置的结构示意图;
图8为本申请实施例提供的一种数据处理方法所适用于的计算机设备的硬件结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了便于对本申请实施例提供的一种数据处理方法的理解,现先对本申请实施例提供的一种数据处理方法中所涉及到的技术术语进行说明。
作业流:是指一个由作业节点组成的图。每个作业节点按照配置完成一定的处理逻辑。作业节点之间要么无关联,要么通过有向边进行依赖关联,但关联时不能形成环路。一个画布中的全部作业节点及其依赖(如果有的话)称为一个作业流。一般来说,在作业流调度模型中,作业流为调度单元,而其中的作业节点为最小粒度的执行单元。
作业:作业流中的一个节点,即由用户定义的完成一定工作的逻辑单元。在任务调度模型中,作业(或任务)是最小执行单元。
插件:一个作业配置模板,它包含了作业类型和该种类型作业的必要参数,通过插件创建作业时,只需要填写作业类型和必要的参数就可以完成作业的创建,可以极大的节省创建作业的时间。
Springboot:Spring框架是Java平台上的一种开源应用框架,提供具有控制反转特性的容器。
Springboot核心主要是自动配置、起步依赖、监控。主要由两部分构成,分别是javacode代码层和resource资源层,其中代码层为主程序application入口,可以通过直接运行此类,启动Springboot的应用,其中包含了一些其他定义的类,包括工程启动类ApplicationServer.java、实体类Domain、数据访问类Dao、数据服务层Service、前端控制器Controller,资源层包括static静态资源文件类、template静态模板类、config存放配置文件类。Springboot能够帮助开发者快速启动一个web容器,简单配置使用封装一些便捷开发套件,它能够在application.yml里或者config类里自定义配置,自定义配置优先级高于默认配置。
Hadoop:Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
Hadoop作为海量数据存储和处理的基础,基于服务器本地的计算存储资源,有高扩展性能够支持上千台服务器,HDFS作为分布式文件系统,用来存储大文件,能够支持流式数据处理,并且硬件容错高部署成本低。Spark是基于内存计算的大数据分布式计算框架。Spark基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量廉价硬件之上,形成集群,将分布式存储的数据读入,同时将任务分发到各个节点进行计算。
Spark:Spark是专为大规模数据处理而设计的快速通用的计算引擎。
传统的大数据开发方法首先是开发者需要使用单独的数据库,例如关系型MySQL、Oracle等,非关系型Mongo、Redis等。然后需要从业务系统的数据库中查询各类数据然后进行数据处理,在不同的平台处理不同数据源的数据。数据存储在一台或者多台机器上,并且有可能无法完全存储,开发者需要在来源多、格式多、体量大的数据集合中通过数据分析把有价值的数据处理筛选出来,这样的流程和模式带来的问题显而易见。首先针对海量的数据没有一个统一数据开发的系统,这一点无疑极大增加了开发难度,降低了开发效率,并且由于机器数量的限制,很多数据无法完全存储与流动,这样导致“缺数据”现象。由于数据量的庞大,计算资源的短缺,因此在线处理的能力也极低。另外,当开发者一次数据分析要使用多家分析工具和多种类型数据库时,又要进行不同的配置,这样繁琐又耗时。
针对以上的问题,本申请构建一种能够支持集成作业、算子模板、作业流级依赖的插件化数据开发系统,该数据开发系统提供数据处理方法,基于该数据处理方法该数据开发系统能够创建代码类、向导类、算子类等不同插件类型的作业,满足用户自定义插件在不同层级的复用,同时支持插件标准化扩展,使用户能够通过拖拉拽的方式便捷进行数据开发,降低开发门槛,提高开发效率。建立全流程可视化的大数据应用开发环境,实现云上端到端的敏捷开发、测试、部署开发流程。
并且,目前在大数据开发系统中,有些系统也是使用SSM框架构建,SSM框架是spring MVC,spring和mybatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层,使用spring MVC负责请求的转发和视图管理,spring实现业务对象管理,mybatis作为数据对象的持久化引擎,其中spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象,springMVC在项目中拦截用户请求,将请求与控制器匹配来处理,mybatis是对jdbc的封装,它让数据库底层操作变的透明。
现在SSM框架对比Springboot来说有着明显的缺点,首先mybatis在特别是在表的字段多,关联表多的情况下,工作量会变得很大,导致资源占用率过高,可移植性低,并且不支持级联删除,级联更新,需要自己对表进行删除;Spring使用了大量的反射机制,反射机制非常占用内存,Spring由于其繁琐的配置,各种XML、Annotation配置,让人眼花缭乱,而且如果出错了也很难找出原因。Spring与MVC的Servlet API耦合,难以脱离容器独立运行。
本申请的目的是将作业以插件化的形态保持在系统中,数据开发中包含的离线计算、数据集成、流计算能够与数据存储进行数据传输,首先编辑好作业并提交发布,作业流发布时将调用调度的接口,调度系统将通过作业的调度配置解析生成作业实例,然后执行这些实例,达到作业开发的完整流程,插件化的作业模式能够便于横向扩展,丰富各种作业类型,比如支持不同的编程语言shell、python、perl等,支持不同的数据源,例如Spark、Mpp等,并且该插件既与数据管理之间会发生元数据传输,又能够结合调度进行作业实例的运行,如此一来便提高了数据开发系统的灵活性和易用性,实现提高数据开发效率。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本申请实施例提供的一种数据处理方法流程图。
如图1所示的数据处理方法应用于数据开发系统,该数据开发系统基于Springboot框架生成,该数据方法包括:
S101、确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,目标业务系统为至少一个业务系统中的任一业务系统;
本申请实施例,数据开发系统中预先设置有至少一个插件,插件有一个类型属性和若干个作业属性,所有插件的类型属性不可重复,各插件内部的作业属性不可重复。
示例性的,插件的插件类型可以为代码类型、向导式类型、支持算子类型;插件的插件类型为代码类型时,可以认为插件为代码类型插件;插件的插件类型为向导式类型时,可以认为插件为向导式插件;插件的插件类型为支持算子类型时,可以认为插件为支持算子的插件。
代码类型插件是指该插件主要用来写代码,比如shell、python等。向导式插件是指该该插件有较多属性,并且这些属性的填写顺序有一定要求,比如数据集成插件,第一步必须填写数据源,第二步必须填写数据处理过程相关的属性,第三步必须填写其它相关的属性,这样的插件,页面会做一些向导式处理,引导用户第一步、第二步、第三步各自该填写哪些属性,直到作业开发完成。算子类型的作业是指某个插件可以将其内部业务逻辑拆分成若干个更细粒度的逻辑,并能对这些逻辑进行编排和组合,来完成一个作业。
本申请实施例提供的数据处理方法应用于数据开发系统,该数据开发系统用于与预先设置的至少一个业务系统相连,用于拉取至少一个业务系统中每个业务系统中的数据,并将拉取到的数据存储至数据库集群中。
本申请实施例,数据库集群中对目标数据类型的数据分配的存储空间与至少一个业务系统中目标数据类型的数据量有关。
不同业务系统中的数据的数据类型可能相同也可能不同,至少一个业务系统存在一种或多种数据类型。
一种实现方式,预估至少一个业务系统中不同数据类型的数据之间的比例,按照比例分配数据库集群对不同数据类型的数据的存储空间。比如,至少一个业务系统中一共涉及到两种数据类型的数据,这两种数据类型分别为数据类型1和数据类型2,若预估至少一个业务系统中数据类型1的数据量和数据类型2的数据量之间的比例为2:3,则可以将数据库集群的存储空间划分成两份,一份存储空间称为存储空间1用于存储数据类型1的数据,另一份存储空间称为存储空间2用于存储数据类型2的数据,存储空间1的空间大小和存储空间2的空间大小的比例为2:3。
另一种实现方式,确定至少一个业务系统中各种数据类型,预估至少一个业务系统中每个数据类型的数据量,针对每个数据类型,控制数据库集群为该数据类型分配与该数据类型的数据量匹配的存储空间。
以上仅仅是本申请实施例提供的数据库集群的存储空间分配的两种优选方式,有关数据库集群的存储空间分配的具体方式,本领域技术人员可根据自己的需求进行设置,在此不做限定。
本申请实施例,确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,包括:确定至少一个业务系统中待生成作业流的目标业务系统;从至少一个插件中确定编程语言和目标业务系统的编程语言相同的各个插件;从所确定的各个插件中获取与对目标业务系统的数据处理类型匹配的目标插件。
示例性的,响应用户对至少一个业务系统中业务系统的选取操作,将被用户选中的业务系统确定为待生成作业流的目标业务系统;从至少一个插件中确定编程语言和目标业务系统的编程语言相同的各个插件,确定对目标业务系统的数据处理类型,从所确定的插件中选取与所确定的数据处理类型匹配的目标插件;其中,对目标业务系统的数据处理类型与对目标业务系统中数据的处理方式有关。
从所确定的各个插件中获取与对目标业务系统的数据处理类型匹配的目标插件,包括:确定数据处理类型所属的目标插件类型;将目标插件类型的插件确定为与数据处理类型匹配的目标插件。
示例性的,对目标业务系统的数据处理类型所属的目标插件类型可以为代码类型、向导式类型或支持算子类型;从所确定的各个插件中目标插件类型的插件确定为目标插件。
S102、展示目标插件的配置页面;
本申请实施例,插件实际上由两部分组成,一部分是插件元数据,另一部分是执行引擎,插件元数据定义了插件的类型和作业属性,本申请可以根据插件的作业属性元数据据,加载出配置页面,用户在配置页面上填写相关配置并保存为作业。插件执行引擎提供了执行对应作业的能力,作业是通过插件加配置生成的,所有作业中包含了插件的类型属性和作业属性,智能调度会根据作业的类型属性,找到对应的插件,并构造出其对应的执行引擎,然后将作业属性做为参数传递给执行引擎,执行引擎以此运行作业。
S103、响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业,作业的编程语言与目标业务系统的编程语言相同;
示例性的,响应在配置页面中对目标插件的作业属性的编辑操作可以生成用于对目标业务系统进行数据处理的作业,所生成的作业的编程语言和目标业务系统的编程语言相同,可以对目标业务系统进行数据处理。
本申请实施例,不同的类型的插件具有不同的作业属性,可以完成不同需求的作业。比如用户想将数据从mysql导入到hive,可以开发一个hive-2-mysql插件,只需要指定hive的库、表、字段和mysql的连接信息就可以自动将对应的数据导入到mysql的库里,一方面屏蔽了底层实现,另一方面也提高了用户工作效率。
本申请实施例,响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业,包括:在配置页面中提示目标业务系统的数据库信息;响应用户基于数据库信息对目标插件的作业属性的编辑操作,生成目标业务系统的作业;编辑操作包括代码编辑操作、属性编辑操作、算子编辑操作或依赖包引入编辑操作。
示例性的,目标业务系统的数据库信息可以为SQL关键字及数据库的库表列等信息。比如,在用户开发作业时,可以自动提示SQL关键字及数据库的库表列等信息,为用户在配置页面中进行作业属性的编辑操作提供便利。
若目标插件的插件类型为代码类型,可以将用户在目标插件的配置页面中进行的编辑操作称为代码编辑操作;若目标插件的插件类型为向导式类型,可以将用户在目标插件的配置页面中进行的编辑操作称为属性编辑操作;若目标插件的插件类型为支持算子类型,可以将用户在目标插件的配置页面中进行的编辑操作称为算子编辑操作。进一步的,用户除了可以在目标插件的配置页面中进行代码编辑操作、属性编辑操作、算子编辑操作等,还可以进行依赖包引入编辑机操作。
示例性的,依赖包是一种增强作业的方式,可以让作业方便的使用已有的作业逻辑。
S104、确定用于对目标业务系统进行数据处理的至少一个作业,根据至少一个作业生成目标业务系统的作业流;
本申请实施例,执行一遍上述步骤S101-S103遍可生成一个作业,这样,针对一个目标业务系统,可以生成该目标业务系统的一个或多个作业,为了便于区分,将该目标业务系统的一个或多个作业称为该目标业务系统的至少一个作业,进而,可以根据该目标业务系统的至少一个作业生成该目标业务系统的作业流。
示例性的,可以响应用户对目标业务系统的至少一个作业的拖拽操作,生成由至少一个作业构成的作业流。
比如,针对一个目标业务系统,若用户想要生成该目标业务系统的一个作业流,可以先确定构建该作业流需要哪些作业,并在数据开发系统中构建生成该作业流所需要的各个作业,用户在从数据开发系统中构建完成生产该作业流所需的各个作业后,可以响应用户对各个作业的拖拽操作对各个作业的执行顺序进行调整以生成作业流。
S105、在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流对数据库集群中拉取的目标业务系统的数据进行数据处理;
本申请实施例,针对一个业务系统可以在数据开发系统构建该业务系统的一个或多个作业流,为了便于区分,可以将业务系统的一个或多个作业流称为业务系统的至少一个作业流。
数据开发平台可以接收用户发送的数据处理请求,确定数据处理请求指示的待进行数据处理的业务系统,该业务系统可以为至少一个业务系统中的任意一个业务系统。
需要说明的是,本申请实施例提供的数据处理方法是以数据处理请求指示的待进行数据处理的业务系统为上述目标业务系统为例进行的说明。
示例性的,用户可以向数据开发系统发送数据处理请求,该数据处理请求指示发送该数据处理请求的用户所请求调用的目标业务系统的目标作业流。数据开发系统在接收到数据处理请求后,首先确定发送数据处理请求的用户是否拥有对目标业务系统的处理权限,如果发送数据请求的用户拥有对目标业务系统的处理权限,可以响应数据处理请求,调用该数据处理请求指示的目标业务系统的目标作业流,目标作业流用于对数据库集群中拉取的目标业务系统的数据进行数据处理。
本申请实施例,数据库集群用于拉取至少一个业务系统中的数据,且数据库集群中对目标数据类型的数据分配的存储空间与至少一个业务系统中目标数据类型的数据量有关。
需要说明的是,数据开发系统在生成目标业务系统的作业流后,还可以进一步解析作业流生成作业流的作业流实例,进而在数据库集群中包括作业流实例。相应的,用户发送的数据处理请求指示的是请求调用的目标作业的作业流实例,数据开发系统在确定用户拥有对目标作业所属目标业务系统的处理权限的情况下,可以调用数据库集群中的目标作业的作业流实例,以对数据库集群中拉取的目标业务系统的数据进行数据处理。有关该实现方式请参见图2的详细描述,在此不做赘述。
图2为本申请实施例提供的另一种数据处理方法流程图。
如图2所示,该方法包括:
S201、确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,目标业务系统为至少一个业务系统中的任一业务系统;
S202、展示目标插件的配置页面;
S203、响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业,作业的编程语言与目标业务系统的编程语言相同;
S204、确定用于对目标业务系统进行数据处理的至少一个作业,根据至少一个作业生成目标业务系统的作业流;
S205、解析并生成作业流中每个作业的作业实例;
示例性的,针对目标业务系统中的作业流中的每个作业分别执行如下过程:解析并生成该作业的作业实例。
S206、根据作业流中各个作业的作业实例生成作业流实例;
示例性的,根据作业流中作业的执行顺序对作业流中各个作业的作业实例进行排序生成作业流对应的作业流实例。
本申请实施例中,针对至少一个业务系统中的每个业务系统而言,数据开发系统可以生成并存储该业务系统的一个或多个作业流实例。
S207、在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的目标业务系统的数据进行数据处理;
本申请实施例,以数据处理请求指示待进行数据处理的业务系统为目标业务系统为例进行说明。其中,图3为本申请实施例提供的一种在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的目标业务系统的数据进行数据处理的方法流程图。
如图3所示,该方法包括:
S301、接收数据处理请求,确定发送数据处理请求的用户指示对目标业务系统进行数据处理的目标作业流;
S302、确定用户是否拥有对目标业务系统的处理权限;若用户为目标业务系统的管理者/用户为目标业务系统的管理者的对目标业务系统的授权用户,确定用户拥有对目标业务系统的处理权限;
示例性的,以数据处理请求指示待进行数据处理的业务系统为目标业务系统为例,若发送数据处理请求的用户为目标业务系统的管理者,则认为发送数据处理请求的用户拥有对目标业务系统的处理权限;若发送数据处理请求的用户不为目标业务系统的管理者,但是发送数据处理请求的用户为目标业务系统的管理者对目标业务系统设置的授权用户,则也可以认为发送数据处理请求的用户拥有对目标业务系统的处理权限。
S303、调用目标作业流的作业流实例对数据库集群中拉取的目标业务系统的数据进行数据处理。
本申请实施例,在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,可以从数据库集群中获取数据处理请求指示的目标作业流的作业流实例,调用该作业流实例对数据库集群中拉取到的目标业务系统的数据进行数据处理。
数据库集群用于拉取至少一个业务系统中的数据,且数据库集群中对目标数据类型的数据分配的存储空间与至少一个业务系统中目标数据类型的数据量有关。
本申请提供一种数据处理方法、装置、计算机设备及存储介质,通过确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件;展示目标插件的配置页面;响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业;根据用于对目标业务系统进行数据处理的至少一个作业生成目标业务系统的作业流;在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用数据处理请求指示的目标业务系统的目标作业流可以实现对数据库集群中拉取的目标业务系统的数据的处理。本申请提供的数据处理方法可以构建与至少一个业务系统中任意一个业务系统匹配的工作流,基于业务系统的工作流可以实现对业务系统的数据处理,通过不同业务系统的工作流可以实现对不同业务系统的数据处理,不需要针对不同的业务系统单独开发相应的平台来实现数据处理,降低了开发难度,提高了开发效率,简化了数据处理操作;而且,本申请的数据库集群用于拉取至少一个业务系统中的数据,且数据库集群对不同数据类型的数据实现了存储空间的按需分配,提高了数据在线处理能力。
下面从数据开发系统的角度对本申请实施例提供的一种数据处理方法进行详细说明。
本申请是使用Springboot框架,结合Hadoop、Spark,基于JAVA编码各部分逻辑功能,设计并构建数据计算流程一体化,支持多个相互依赖的作业以及外部事件,能够供调度系统自动执行的数据开发Web系统。为用户提供可视化的代码开发、作业流编辑器页面,无需复杂的操作,用户通过简单的拖拽和开发就可以完成复杂的数据处理分析任务,将离线计算开发等多种应用类型作业流集成到一个平台,同时支持不同任务之间的相互依赖,支持按照时间、作业流间的依赖和外部事件依赖的触发机制,并且实现租户资源隔离,保证不同租户之间的作业流任务不会互相影响。
本系统设计插件化的模板提供了执行对应作业的能力,不同的类型的插件具有不同的作业属性,可以完成不同需求的作业,管理员可以根据需求,对插件进行横向扩展,从而丰富作业类型,另外调度会根据作业的类型找到对应的插件,并构造出其对应的执行引擎,然后将作业属性作为参数传递给执行引擎,执行引擎以此运行作业。
本系统将各功能分块构建,分为作业开发模块、插件管理模块、配置管理模块、在线测试模块,对于不同的模块首先定义数据实体属性,然后编写各功能模块接口,让系统中各功能之间通过互相调用的方式联系起来,通过编写各功能模块接口,能够使各模块分工解耦,降低不同代码块之间的耦合性,增强各模块的可扩展性和可移植性,从而将多种编程语言、多种数据类型的功能模块集成在一个系统里。运维人员通过使用该系统,在页面上能够使用拖拉拽的方式选择不同编程语言的插件进行编辑开发,也能够选择不同的数据类型进行SQL开发,生成作业流保存在数据库中,调度模块会进行解析并生成作业实例从而在节点上执行,提高使用者开发效率,降低开发难度,实现云上端到端的开发、测试、部署流程。
本发明构建的这种支持多种数据处理场景的拖拽式插件化数据开发系统,系统架构图如图4所示,其中数据开发与其他模块有交互连接关系,首先与数据管理的交互,数据开发模块依赖数据管理提供的元数据信息、数据权限信息等,比如在用户开发作业时,需要自动提示SQL关键字及数据库的库表列等信息,这些信息就来自数据管理。此外在作业流发布时,要求使用到的元数据先发布,如果元数据未发布则作业流不可以发布,这也是数据管理提供的功能。与调度的关联体现在作业流开发的作业最终以配置的形式保存在数据库中,随作业流一起保存的还有作业的执行和调度配置等,智能调度系统会解析这些配置,并据此生成作业实例,作业实例会在执行节点上执行,对于不同类型的插件会使用不同的资源,比如Mpp、shell、python、perl使用的是KUBERNETES资源,Spark SQL使用的是Hadoop资源。
插件是一种作业模板,由平台提供,可以帮助用户快速创建作业。插件有一个类型属性和若干个作业属性,所有插件的类型属性不可重复,各插件内部的作业属性不可重复。插件实际上由两部分组成,一部分是插件元数据,另一部分是执行引擎,插件元数据定义了插件的类型和作业属性,在作业开发模块会根据插件的作业属性元数据据,加载出配置页面,用户在配置页面上填写相关配置并保存为作业。插件执行引擎提供了执行对应作业的能力,作业是通过插件加配置生成的,所有作业中包含了插件的类型属性和作业属性,智能调度会根据作业的类型属性,找到对应的插件,并构造出其对应的执行引擎,然后将作业属性做为参数传递给执行引擎,执行引擎以此运行作业。不同的类型的插件具有不同的作业属性,可以完成不同需求的作业,比如用户想将数据从mysql导入到hive,可以开发一个hive-2-mysql插件,只需要指定hive的库、表、字段和mysql的连接信息就可以自动将对应的数据导入到mysql的库里,一方面屏蔽了底层实现,另一方面也提高了用户工作效率。插件管理包括插件分为的三类,分别是代码类型插件、向导式插件和支持算子的插件。代码类型插件是指该插件主要用来写代码,比如shell、python等。向导式插件是指该该插件有较多属性,并且这些属性的填写顺序有一定要求,比如数据集成插件,第一步必须填写数据源,第二步必须填写数据处理过程相关的属性,第三步必须填写其它相关的属性,这样的插件,页面会做一些向导式处理,引导用户第一步、第二步、第三步各自该填写哪些属性,直到作业开发完成。算子类型的作业是指某个插件可以将其内部业务逻辑拆分成若干个更细粒度的逻辑,并能对这些逻辑进行编排和组合,来完成一个作业。以一个批计算作业为例,它原来的业务逻辑是从一个数据源取数据,经过加工和处理,保存到目标表。但在具体业务中,中间的加工处理过程会有不确定的一个或多个步骤,并且在多个步骤处理加工的过程中,需要有先后顺序,那这个时候就可以把数据源、加工程和写入目标表三个动作拆分成三个算子,更进一步,“处理过程”可以拆分成多个算子,在实际开发过程中,用户可以对这几个算子进行任意编排,编排完成后,相当于在插件内部又形成了一个算子的DAG图,而整个插件本身形成一个作业。数据开发会提供创建插件的接口,在创建插件时,用户上传tar包,数据开发校验tar包的数据完整性,并从中取出数据库脚本文件,初始化数据开发需要的插件元数据,同时将该tar包上传到hdfs。
数据开发模块有了元数据,用户就可以创建该插件类型的作业了,作业在被派发到执行机上执行时,执行机会判断,当前执行机的本地环境中是否存在该作业的执行引擎,如果不存在,则去hdfs拉取插件,并解压到指定位置,然后加载该作业的执行引擎,开发执行该作业。插件与作业的关系如图5所示。
数据开发模块内部是由插件、UDF、依赖包等组件构成,并且这些组件可能会随着用户需求的改变或增加,进一步扩充。插件是作业模板,目的是帮助用户快速创建作业,并且经过模板规范,创建出来的作业都是标准化的、可被调度系统理解的配置。
UDF是领域相关的一些概念,目前只支持HIVE、MPP(MPP只支持纯SQL函数),是对用户输入提供的一些便利方式,并且这种便利日后会以一种标准化的方式扩展,以增强其它组件。
依赖包跟UDF类似,是一种增强作业的方式,可以让作业方便的使用已有的作业逻辑。
数据开发的最终产物是作业流,作业流是由作业组成的,而作业是由插件、算子、依赖包等组件以标准的方式组合得到的。
本系统处理作业请求(即,数据处理请求)的具体流程如图6所示。用户发送的请求首先到达DispatcherServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行处理,作为统一访问点,进行全局的流程控制。然后会传递HandlerMapping,HandlerMapping将会把请求映射为HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多个HandlerInterceptor拦截器)对象,找到处理请求的Controller;Controller调用业务逻辑处理后,返回ModelAndView对象,之后ViewResolver会接收响应,ViewResolver将把逻辑视图名解析为具体的View,再根据传进来的Model模型数据进行渲染,Model是一种Map数据结构,DispacherServlet查询视图解析器,找到ModelAndView指定的视图渲染后的结果展示给用户。
对于插件表的数据实体属性定义如下表示:
本申请可以通过插件化的作业设计方式,在同一平台上处理不同编程语言类型的作业以及不同数据源类型的作业,并且支持对接多种资源类型,包括Hadoop和KUBERNETES。对于丰富作业类型有着显著的灵活性,插件能够标准化横向扩展,提高数据开发的效率。
目前系统提供在线编辑、测试、提交、发布等功能,用户能够通过拖拉拽的方式便捷进行开发,用户易于上手便捷操作,体现了一站式大数据开发平台的优点。
本系统支持提供命令行和模板工具让用户针对自己需求进行开发,提供SQL编辑和代码编辑加大开发自由度,提供生产和测试的隔离,让用户的开发环境更加独立稳定。
本申请的优点是利用Springboot框架将作业以插件化的形态保持在系统中,由于Springboot特点是对外能输出许多形式的服务,所以插件也能够支持横向扩展,针对各种需求丰富各类作业,比如支持不同的编程语言shell、python、perl等,另外该框架的优点还能够支持关系型和非关系型数据库,例如Spark、Mpp等;在表字段比较多时也能够使用SpringbootJPA快速处理数据,简化操作持久层的代码,只需要编写接口即可。Springboot支持级联删除以及级联更新。
插件化的作业设计,使得与调度管理、数据管理交互更加独立,作业的种类能够支持标准化横向扩展,降低了各模块间的耦合度,对于数据存储支持多种资源类型,包括了hadoop和kubernetes的资源,并且对于海量数据的处理问题,本系统还引入了Spark并行计算、Kafka数据缓冲、Ambari集群管控来增强数据开发能力,强化大规模的数据处理效率提高系统灵活性和稳定性。
图7为本申请实施例提供的一种数据处理装置的结构示意图。
如图7所示的数据处理装置应用于基于Springboot框架的数据开发系统,该数据处理装置包括:
目标插件确定单元701,用于确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,目标业务系统为至少一个业务系统中的任一业务系统;
配置页面展示单元702,用于展示目标插件的配置页面;
作业生成单元703,用于响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业,作业的编程语言与目标业务系统的编程语言相同;
作业流生成单元704,用于确定用于对目标业务系统进行数据处理的至少一个作业,根据至少一个作业生成目标业务系统的作业流;
数据处理单元705,用于在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流对数据库集群中拉取的目标业务系统的数据进行数据处理;
数据库集群用于拉取至少一个业务系统中的数据,且数据库集群中对目标数据类型的数据分配的存储空间与至少一个业务系统中目标数据类型的数据量有关。
本申请实施例中,优选的,目标插件确定单元包括:
目标业务系统确定单元,用于确定至少一个业务系统中待生成作业流的目标业务系统;
第一插件确定单元,用于从至少一个插件中确定编程语言和目标业务系统的编程语言相同的各个插件;
第二插件确定单元,用于从所确定的各个插件中获取与对目标业务系统的数据处理类型匹配的目标插件。
本申请实施例中,优选的,插件携带插件类型,插件类型为代码类型、向导式类型或支持算子类型。相应的,第二插件确定单元包括:
目标插件类型确定单元,用于确定数据处理类型所属的目标插件类型;
目标插件确定子单元,用于将目标插件类型的插件确定为与数据处理类型匹配的目标插件。
本申请实施例中,优选的,作业生成单元包括:
信息提示单元,用于在配置页面中提示目标业务系统的数据库信息;
作业生成子单元,用于响应用户基于数据库信息对目标插件的作业属性的编辑操作,生成目标业务系统的作业;编辑操作包括代码编辑操作、属性编辑操作、算子编辑操作或依赖包引入编辑操作。
本申请实施例中,优选的,作业流生成单元具体用于:响应用户对目标业务系统的至少一个作业的拖拽操作,生成由至少一个作业构成的作业流。
进一步的,本申请实施例提供的一种数据处理装置还包括:
解析单元,用于解析并生成作业流中每个作业的作业实例;
作业流实例生成单元,用于根据作业流中各个作业的作业实例生成作业流实例;
相应的,数据处理单元具体用于:在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的目标业务系统的数据进行数据处理。
本申请实施例中,优选的,数据处理单元,包括:
数据处理请求接收单元,用于接收数据处理请求,确定发送数据处理请求的用户指示对目标业务系统进行数据处理的目标作业流;
权限确定单元,用于确定用户是否拥有对目标业务系统的处理权限;若用户为目标业务系统的管理者/用户为目标业务系统的管理者的对目标业务系统的授权用户,确定用户拥有对目标业务系统的处理权限;
作业流实例调用单元,用于调用目标作业流的作业流实例对数据库集群中拉取的目标业务系统的数据进行数据处理。
如图8所示,为本申请实施例提供的计算机设备的一种实现方式的结构图,该计算机设备包括:
存储器801,用于存储程序;
处理器802,用于执行程序,程序具体用于:
确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,目标业务系统为至少一个业务系统中的任一业务系统;
展示目标插件的配置页面;
响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业,作业的编程语言与目标业务系统的编程语言相同;
确定用于对目标业务系统进行数据处理的至少一个作业,根据至少一个作业生成目标业务系统的作业流;
在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用目标业务系统的至少一个作业流中数据处理请求指示的目标作业流对数据库集群中拉取的目标业务系统的数据进行数据处理;
数据库集群用于拉取至少一个业务系统中的数据,且数据库集群中对目标数据类型的数据分配的存储空间与至少一个业务系统中目标数据类型的数据量有关。
处理器802可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit)。
控制设备还可以包括通信接口803以及通信总线804,其中,存储器801、处理器802以及通信接口803通过通信总线804完成相互间的通信。
本申请实施例还提供了一种可读存储介质,其上存储有计算机程序,计算机程序被处理器加载并执行,实现上述的数据处理方法的各步骤,具体实现过程可以参照上述实施例相应部分的描述,本实施例不做赘述。
本申请提供一种数据处理方法、装置、计算机设备及存储介质,通过确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件;展示目标插件的配置页面;响应在配置页面中对目标插件的作业属性的编辑操作生成用于对目标业务系统进行数据处理的作业;根据用于对目标业务系统进行数据处理的至少一个作业生成目标业务系统的作业流;在发送数据处理请求的用户拥有对目标业务系统的处理权限的情况下,调用数据处理请求指示的目标业务系统的目标作业流可以实现对数据库集群中拉取的目标业务系统的数据的处理。本申请提供的数据处理方法可以构建与至少一个业务系统中任意一个业务系统匹配的工作流,基于业务系统的工作流可以实现对业务系统的数据处理,通过不同业务系统的工作流可以实现对不同业务系统的数据处理,不需要针对不同的业务系统单独开发相应的平台来实现数据处理,降低了开发难度,提高了开发效率,简化了数据处理操作;而且,本申请的数据库集群用于拉取至少一个业务系统中的数据,且数据库集群对不同数据类型的数据实现了存储空间的按需分配,提高了数据在线处理能力。
以上对本发明所提供的一种数据处理方法、装置、计算机设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种数据处理方法,其特征在于,应用于基于Springboot框架的数据开发系统,该方法包括:
确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,所述目标业务系统为至少一个业务系统中的任一业务系统;
展示所述目标插件的配置页面;
响应在所述配置页面中对所述目标插件的作业属性的编辑操作生成用于对所述目标业务系统进行数据处理的作业,所述作业的编程语言与所述目标业务系统的编程语言相同;
确定用于对所述目标业务系统进行数据处理的至少一个作业,根据所述至少一个作业生成所述目标业务系统的作业流;
在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流对数据库集群中拉取的所述目标业务系统的数据进行数据处理;
所述数据库集群用于拉取所述至少一个业务系统中的数据,且所述数据库集群中对目标数据类型的数据分配的存储空间与所述至少一个业务系统中所述目标数据类型的数据量有关。
2.根据权利要求1所述的方法,其特征在于,所述确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,包括:
确定至少一个业务系统中待生成作业流的目标业务系统;
从至少一个插件中确定编程语言和所述目标业务系统的编程语言相同的各个插件;
从所确定的各个插件中获取与对所述目标业务系统的数据处理类型匹配的目标插件。
3.根据权利要求2所述的方法,其特征在于,所述插件携带插件类型,所述插件类型为代码类型、向导式类型或支持算子类型,所述从所确定的各个插件中获取与对所述目标业务系统的数据处理类型匹配的目标插件,包括:
确定所述数据处理类型所属的目标插件类型;
将所述目标插件类型的插件确定为与所述数据处理类型匹配的目标插件。
4.根据权利要求1所述的方法,其特征在于,所述响应在所述配置页面中对所述目标插件的作业属性的编辑操作生成用于对所述目标业务系统进行数据处理的作业,包括:
在所述配置页面中提示所述目标业务系统的数据库信息;
响应用户基于所述数据库信息对所述目标插件的作业属性的编辑操作,生成所述目标业务系统的作业;所述编辑操作包括代码编辑操作、属性编辑操作、算子编辑操作或依赖包引入编辑操作。
5.根据权利要求1所述的方法,其特征在于,所述确定用于对所述目标业务系统进行数据处理的至少一个作业,根据所述至少一个作业生成所述目标业务系统的作业流,包括:
响应用户对所述目标业务系统的至少一个作业的拖拽操作,生成由所述至少一个作业构成的作业流。
6.根据权利要求1所述的方法,其特征在于,还包括:
解析并生成所述作业流中每个所述作业的作业实例;
根据所述作业流中各个作业的作业实例生成作业流实例;
所述在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流对数据库集群中拉取的所述目标业务系统的数据进行数据处理,包括:
在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的所述目标业务系统的数据进行数据处理。
7.根据权利要求5所述的方法,其特征在于,所述在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流的作业流实例,对数据库集群中拉取的所述目标业务系统的数据进行数据处理,包括:
接收数据处理请求,确定发送所述数据处理请求的用户指示对所述目标业务系统进行数据处理的目标作业流;
确定所述用户是否拥有对所述目标业务系统的处理权限;若所述用户为所述目标业务系统的管理者/所述用户为所述目标业务系统的管理者的对所述目标业务系统的授权用户,确定所述用户拥有对所述目标业务系统的处理权限;
调用所述目标作业流的作业流实例对数据库集群中拉取的所述目标业务系统的数据进行数据处理。
8.一种数据处理装置,其特征在于,应用于基于Springboot框架的数据开发系统,该装置包括:
目标插件确定单元,用于确定预先设置的至少一个插件中与目标业务系统的数据处理需求匹配的目标插件,所述目标业务系统为至少一个业务系统中的任一业务系统;
配置页面展示单元,用于展示所述目标插件的配置页面;
作业生成单元,用于响应在所述配置页面中对所述目标插件的作业属性的编辑操作生成用于对所述目标业务系统进行数据处理的作业,所述作业的编程语言与所述目标业务系统的编程语言相同;
作业流生成单元,用于确定用于对所述目标业务系统进行数据处理的至少一个作业,根据所述至少一个作业生成所述目标业务系统的作业流;
数据处理单元,用于在发送数据处理请求的用户拥有对所述目标业务系统的处理权限的情况下,调用所述目标业务系统的至少一个作业流中所述数据处理请求指示的目标作业流对数据库集群中拉取的所述目标业务系统的数据进行数据处理;
所述数据库集群用于拉取所述至少一个业务系统中的数据,且所述数据库集群中对目标数据类型的数据分配的存储空间与所述至少一个业务系统中所述目标数据类型的数据量有关。
9.一种计算机设备,其特征在于,包括:处理器以及存储器,所述处理器以及存储器通过通信总线相连;其中,所述处理器,用于调用并执行所述存储器中存储的程序;所述存储器,用于存储程序,所述程序用于实现如权利要求1-7任意一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器加载并执行,实现如权利要求1-7任意一项所述的数据处理方法的各步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110188815.7A CN112860238B (zh) | 2021-02-19 | 2021-02-19 | 一种数据处理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110188815.7A CN112860238B (zh) | 2021-02-19 | 2021-02-19 | 一种数据处理方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112860238A CN112860238A (zh) | 2021-05-28 |
CN112860238B true CN112860238B (zh) | 2024-10-29 |
Family
ID=75989719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110188815.7A Active CN112860238B (zh) | 2021-02-19 | 2021-02-19 | 一种数据处理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860238B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113553051B (zh) * | 2021-06-01 | 2022-06-21 | 中电万维信息技术有限责任公司 | 一种基于redis缓存技术的文件数据比对方法 |
CN113535134A (zh) * | 2021-08-20 | 2021-10-22 | 华润电力技术研究院有限公司 | 风机数据中台处理系统、方法、装置及存储介质 |
CN113805851B (zh) * | 2021-08-27 | 2024-10-01 | 上海得帆信息技术有限公司 | 一种Flink自动集成方法和系统 |
CN113885847A (zh) * | 2021-10-09 | 2022-01-04 | 上海得帆信息技术有限公司 | 一种可配置数据流处理方法 |
CN114528045B (zh) * | 2022-02-17 | 2024-05-24 | 武汉联影智融医疗科技有限公司 | 插件操作方法、装置、计算机设备和存储介质 |
CN114706918B (zh) * | 2022-06-01 | 2022-09-16 | 杭州安恒信息技术股份有限公司 | 一种多类型数据库兼容方法、装置、设备、存储介质 |
CN115469849B (zh) * | 2022-09-16 | 2023-08-11 | 科东(广州)软件科技有限公司 | 一种业务处理系统、方法、电子设备和存储介质 |
CN118210510B (zh) * | 2023-04-03 | 2024-12-06 | 中兴通讯股份有限公司 | 数据处理方法、系统、计算机设备、介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101329624A (zh) * | 2007-06-22 | 2008-12-24 | 上海容恒实业有限公司 | 计算机柔性管理构建系统 |
CN107038259A (zh) * | 2017-05-25 | 2017-08-11 | 南京多伦科技股份有限公司 | 一种构造交通路网数据的作业方法及其系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6407820B1 (en) * | 2000-05-17 | 2002-06-18 | Heidelberg Digital L.L.C. | Efficient use of print resources within a job stream |
KR20070057806A (ko) * | 2004-08-31 | 2007-06-07 | 인터내셔널 비지네스 머신즈 코포레이션 | 엔터프라이즈 데이터 통합 시스템을 위한 아키텍처 |
US9372690B2 (en) * | 2014-09-03 | 2016-06-21 | International Business Machines Corporation | Analysis of data integration job |
CN105631028B (zh) * | 2015-12-30 | 2020-09-18 | 中国农业银行股份有限公司 | 一种数据库集群功能实现方法和系统 |
CN108920134B (zh) * | 2018-06-27 | 2022-05-20 | 中国建设银行股份有限公司 | 自动生成设计文档的方法及装置 |
CN111258567B (zh) * | 2018-12-01 | 2023-06-16 | 阿里巴巴集团控股有限公司 | 服务代码开发处理方法及装置 |
CN110286892B (zh) * | 2019-06-26 | 2023-01-13 | 成都九洲电子信息系统股份有限公司 | 一种基于业务流程设计的快速开发引擎系统 |
CN110851114A (zh) * | 2019-10-24 | 2020-02-28 | 山东中创软件工程股份有限公司 | 一种业务系统开发方法、装置及电子设备和存储介质 |
CN111754073B (zh) * | 2020-05-19 | 2023-08-18 | 北京吉威空间信息股份有限公司 | 空间数据业务的集中式处理与分布式作业框架构建方法 |
-
2021
- 2021-02-19 CN CN202110188815.7A patent/CN112860238B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101329624A (zh) * | 2007-06-22 | 2008-12-24 | 上海容恒实业有限公司 | 计算机柔性管理构建系统 |
CN107038259A (zh) * | 2017-05-25 | 2017-08-11 | 南京多伦科技股份有限公司 | 一种构造交通路网数据的作业方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112860238A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112860238B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
CN110989983B (zh) | 一种零编码的应用软件快速构建系统 | |
US9904522B2 (en) | Web development system | |
US9146955B2 (en) | In-memory, columnar database multidimensional analytical view integration | |
US8281012B2 (en) | Managing parallel data processing jobs in grid environments | |
US20230108560A1 (en) | Methods and Systems for Representation, Composition and Execution of Artificial Intelligence Centric Applications | |
CN104954453A (zh) | 基于云计算的数据挖掘rest服务平台 | |
CN106022007A (zh) | 面向生物组学大数据计算的云平台系统及方法 | |
CN102279750B (zh) | 一种基于领域知识共享的迭代式代码生成方法 | |
US10120886B2 (en) | Database integration of originally decoupled components | |
US9361137B2 (en) | Managing application parameters based on parameter types | |
CN111475564A (zh) | 一种流式数据处理方法、系统、计算机设备及存储介质 | |
US20150007084A1 (en) | Chaining applications | |
CN115113850B (zh) | 一种跨平台应用的构建、运行方法、服务器、终端和系统 | |
CN111026670B (zh) | 测试用例的生成方法、测试用例的生成装置及存储介质 | |
US20240403007A1 (en) | Microservice Creation Method and Related Device | |
CN116627448A (zh) | 一种创建微服务的方法及相关设备 | |
WO2024221909A1 (zh) | 数据查询方法及装置 | |
US11036751B2 (en) | Advanced insights explorer | |
CN111309297B (zh) | 脚本开发系统及方法 | |
KR101902191B1 (ko) | 질의 기반 소프트웨어 논리의 동적 변경 및 실행을 위한 멀티테넌트 지원 장치 및 방법 | |
CN118427218A (zh) | 状态信息配置方法及装置、电子设备、存储介质和计算机程序产品 | |
WO2024169392A1 (zh) | 开发方法、装置、电子设备和存储介质 | |
WO2025035933A1 (zh) | 数据库实例处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN107784488B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |