一种数据流批处理方法、装置、设备及介质制造方法及图纸

技术编号:38012028 阅读:15 留言:0更新日期:2023-06-30 10:33
本申请涉及数据处理技术领域,尤其涉及一种数据流批处理方法、装置、设备及介质。方法包括:基于对象关系映射规则,将输入的数据源表映射为相应的对象关系映射类;将对象关系映射类进行属性赋值操作后,织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类;将规则代理类桥接满足转换服务接口的调用类,获得桥接调用类,以使预设转换服务接口调用桥接调用类,对数据源表中的数据进行转换处理。这样,无需定义SQL脚本语句,可以根据业务需求直接定义相关实体类及属性,通过对象关系映射类描述数据源表的结构,进而实现对数据源表的抽象,以便实现对数据源表中数据的转换处理。据的转换处理。据的转换处理。

【技术实现步骤摘要】
一种数据流批处理方法、装置、设备及介质


[0001]本申请涉及数据处理
,尤其涉及一种数据流批处理方法、装置、设备及介质。

技术介绍

[0002]Flink是一种分布式、高性能的流处理应用程序框架,不仅支持高吞吐和exactly

once语义的实时计算,也支持基于流计算方式结合数据定义窗口实现的批处理。Flink使用一种状态机制(state)实现的有状态流计算引擎。Flink流计算使用状态存储节点的中间计算结果,也可以通过检查点(checkpoint)机制实现容错恢复。
[0003]Flink实时计算模型的基础是:流(Stream)与转换(transform),其基本流程实现是:每一个数据流起始于一个或多个数据源(source),通过若干转换处理(transform),终止于计算结果的输出(Sink)。
[0004]Flink SQL(Structured Query Language,结构化查询语言)是简化的Flink实时计算模型,使用符合标准SQL语义的开发语言,实现获取原始数据源(source),应用计算逻辑(transform)进行计算汇总,以及将结果输出(Sink)到指定目标。
[0005]但是,Flink SQL使用SQL语义进行编写,SQL编写需要一定的数据库查询和操作经验,非数据库开发人员或业务程序开发人员无法直接根据业务需求定义所需SQL脚本语句,不利于业务实现。

技术实现思路

[0006]本申请提供了一数据流批处理方法、装置、设备及介质,用以在无需定义SQL脚本语句的情况下,根据业务需求实现对数据源表的抽象,以便实现数据源表中数据的转换处理。
[0007]本申请实施例提供的具体技术方案如下:
[0008]第一方面,本申请实施例提供一数据流批处理方法,包括:
[0009]基于对象关系映射规则,将输入的数据源表映射为相应的对象关系映射类,所述对象关系映射类是指面向对象程序设计语言定义的类;
[0010]将所述对象关系映射类进行属性赋值操作后,织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类;
[0011]将所述规则代理类桥接满足转换服务接口的调用类,获得桥接调用类,以使所述预设转换服务接口调用所述桥接调用类,对所述数据源表中的数据进行转换处理。
[0012]在一种可选的实施方式中,所述基于对象关系映射规则,将输入的数据源表映射为相应的对象关系映射类,包括:
[0013]基于对象关系映射规则,确定输入的数据源表的表名称对应的类名称,以及所述数据源的表字段名称对应的类属性名称;
[0014]通过注解方式分别将表名称与对应的类名称、表字段名称与对应的类属性名称进
行映射关联。
[0015]在一种可选的实施方式中,所述将所述对象关系映射类进行属性赋值操作后,织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类,包括:
[0016]使用面向对象程序设计语言的反射机制,将所述对象关系映射类进行实例化操作,并将实例化后的对象关系映射类进行属性赋值操作;
[0017]通过动态代理方式,在属性赋值后的对象关系映射类中织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类。
[0018]在一种可选的实施方式中,所述将所述规则代理类桥接满足预设转换服务的调用类,获得桥接调用类,包括:
[0019]采用桥接模式,在所述规则代理类的操作方法的基础上,添加满足所述预设转换服务转换调用的相关构造方法、装配方法和析构方法;
[0020]基于添加相关构造方法、装配方法和析构方法后的规则代理类,获得所述桥接调用类。
[0021]在一种可选的实施方式中,所述方法还包括:
[0022]若输入的数据源表不满足预设条件,则通过注解方式对所述数据源表添加标注信息,所述标注信息用于指示采用SQL查询语句进行表述;
[0023]将添加所述标注信息后的数据源表输入SQL解析引擎进行转换处理。
[0024]第二方面,本申请实施例提供一种数据流批处理装置,包括:
[0025]映射模块,用于基于对象关系映射规则,将输入的数据源表映射为相应的对象关系映射类,所述对象关系映射类是指面向对象程序设计语言定义的类;
[0026]规则代理模块,用于将所述对象关系映射类进行属性赋值操作后,织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类;
[0027]桥接构造模块,用于将所述规则代理类桥接满足转换服务接口的调用类,获得桥接调用类,以使所述预设转换服务接口调用所述桥接调用类,对所述数据源表中的数据进行转换处理。
[0028]在一种可选的实施方式中,所述映射模块具体用于:
[0029]基于对象关系映射规则,确定输入的数据源表的表名称对应的类名称,以及所述数据源的表字段名称对应的类属性名称;
[0030]通过注解方式分别将表名称与对应的类名称、表字段名称与对应的类属性名称进行映射关联。
[0031]在一种可选的实施方式中,所述规则代理模块具体用于:
[0032]使用面向对象程序设计语言的反射机制,将所述对象关系映射类进行实例化操作,并将实例化后的对象关系映射类进行属性赋值操作;
[0033]通过动态代理方式,在属性赋值后的对象关系映射类中织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类。
[0034]在一种可选的实施方式中,所述桥接构造模块具体用于:
[0035]采用桥接模式,在所述规则代理类的操作方法的基础上,添加满足所述预设转换服务转换调用的相关构造方法、装配方法和析构方法;
[0036]基于添加相关构造方法、装配方法和析构方法后的规则代理类,获得所述桥接调
用类。
[0037]在一种可选的实施方式中,所述装置还包括标注模块,用于:
[0038]若输入的数据源表不满足预设条件,则通过注解方式对所述数据源表添加标注信息,所述标注信息用于指示采用SQL查询语句进行表述;
[0039]将添加所述标注信息后的数据源表输入SQL解析引擎进行转换处理。
[0040]第三方面,本申请实施例提供一种电子设备,其包括处理器和存储器,其中,所述存储器存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行第一方面中任一所述方法的步骤。
[0041]第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面中任一所述方法的步骤。
[0042]第五方面,本申请实施例提供一种计算机程序产品,其包括计算机程序,所述计算机程序存储在计算机可读存储介质中;当电子设备的处理器从所述计算机可读存储介质读取所述计算机程序时,所述处理器执行该计算机程序,使得所述电子设备执本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据流批处理方法,其特征在于,包括:基于对象关系映射规则,将输入的数据源表映射为相应的对象关系映射类,所述对象关系映射类是指面向对象程序设计语言定义的类;将所述对象关系映射类进行属性赋值操作后,织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类;将所述规则代理类桥接满足转换服务接口的调用类,获得桥接调用类,以使所述预设转换服务接口调用所述桥接调用类,对所述数据源表中的数据进行转换处理。2.根据权利要求1所述的方法,其特征在于,所述基于对象关系映射规则,将输入的数据源表映射为相应的对象关系映射类,包括:基于对象关系映射规则,确定输入的数据源表的表名称对应的类名称,以及所述数据源的表字段名称对应的类属性名称;通过注解方式分别将表名称与对应的类名称、表字段名称与对应的类属性名称进行映射关联。3.根据权利要求1所述的方法,其特征在于,所述将所述对象关系映射类进行属性赋值操作后,织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类,包括:使用面向对象程序设计语言的反射机制,将所述对象关系映射类进行实例化操作,并将实例化后的对象关系映射类进行属性赋值操作;通过动态代理方式,在属性赋值后的对象关系映射类中织入数据流批处理的操作方法,获得面向对象编程语言的具备操作方法的规则代理类。4.根据权利要求1~3任一项所述的方法,其特征在于,所述将所述规则代理类桥接满足预设转换服务的调用类,获得桥接调用类,包括:采用桥接模式,在所述规则代理类的操作方法的基础上,添加满足所述预设转换服务转换调用的相关构造方法、装配方法和析构方法;基于添加相关构造方法、装配方法和析构方法后的规则代理类,获得所述桥接调用类。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:若输入的数据源表不满足预设条件,则通过...

【专利技术属性】
技术研发人员:王锟陈升
申请(专利权)人:北京世纪互联宽带数据中心有限公司
类型:发明
国别省市:

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

1