【技术实现步骤摘要】
一种分布式流数据处理系统中局部算子的业务封装方法
[0001]本专利技术涉及大数据处理领域,尤其涉及一种分布式流数据处理系统中局部算子的业务封装方法。
技术介绍
[0002]分布式流数据处理系统中,一个具体的流数据处理业务流程是由多个基础数据处理算子组成的,数据处理算子可以分为三大类:数据源(Source)、数据转换(Transformer)和数据消费(Sink)。
[0003]一个标准的数据处理流程由一个Source算子,多个Transformer算子和一个Sink算子组成,算子和算子之间由连接线(Channel)进行连接,Source算子引接外部数据源形成无边界的流数据,流数据通过Channel流入到下一个算子,Transformer算子对数据进行处理,包括数据转换、清洗、聚合、拆分和过滤等,数据流入到Sink算子时,Sink算子负责消费数据,例如将数据存入外部数据库、本地文件或放入消息队列中。
[0004]数据处理业务越复杂,流程设计也越复杂,会出现多Source多Sink的情况,且数据处理部分的Transformer算子之间的拓扑组合关系也将变得非常复杂和抽象。与此同时,在数据处理业务开发的过程中,必然会面临“重复造轮子”的现象,即需要重复设计一些曾经已完成的“微业务”,这些微业务具有组合性、可复用和无状态和的特点。组合性指这些业务均由若干个数据处理算子组合而成,可复用指的是微业务是可以应用于绝大部分其他流程中,无状态指的是微业务的输出结果只与输入有关。微业务的定位处于单个基础算子和整个数据处 ...
【技术保护点】
【技术特征摘要】
1.一种分布式流数据处理系统中局部算子的业务封装方法,其特征在于,该方法包括以下步骤:S1、构建组件和连接描述模型:首先提取算子元数据中的算子ID、算子参数字典、算子种类和端口表,封装成组件数据结构,形成组件描述模型;再提取分布式流数据处理系统中描述算子之间关系的数据,封装成连接数据结构,形成连接描述模型;S2、进行映射配置,包括参数映射和端口映射,并维护参数映射表和端口映射表,所述端口映射包括属性映射和字段映射;S3、构建部件描述模型:提取部件配置,其中包括组件描述模型、组件连接描述模型、参数映射表和端口映射表;封装成数据结构,形成部件描述模型;S4、对部件描述模型进行初步处理:对部件中所有出现的ID进行重置,根据部件描述模型,生成并维护与组件描述模型结构相同的内部组件表、与连接描述模型结构相同的内部连接表、结构为“部件端口、算子ID、内部组件端口”的三元组部件
‑
组件端口映射表和结构为“算子ID、组件参数名、部件参数值、参数类型”的四元组可编辑参数表;S5、部件展开,进行如下步骤:S51、进行参数映射替换,对可编辑参数表遍历,通过算子ID找到对应的组件,并使用部件参数对组件进行参数替换;S52、端口映射替换:对于输入端口,将与上游组件相连的连接描述模型的目的端属性修改为与该部件端口相连的内部算子ID与端口;对于输出端口,将与部件相连的下游组件的连接描述模型的起始端修改为与该部件端口相连的内部算子ID与端口,形成新的连接列表并存储;S53、判断部件的组件列表中是否存在其他部件;若存在其他部件,额外维护一个层级计数器与一个层级
‑
算子ID映射表,每展开一级部件,层级计数器加1,若不存在其他部件,则跳过该步骤;S54、对组件列表进行遍历,遍历完成后得到展开的组件列表与连接列表,完成部件展开;S6、将展开后得到的组件进行实例化,应用于流程中。2.根据权利要求1所述的一种分布式流数据处理系统中局部算子的业务封装方法,其特征在于,所述部件描述模型具体包括:部件ID、部件名、启动标志、部件配置;其中所述部件配置还包括:组件列表、连接列表、部件参数字典、参数映射表、部件端口列表、端口映射表;组件描述模型具体包括:算子ID、算子参数字典、算子种类、端口表;连接描述模型具体包括:起始端组件端口、目的端组件端口。3.根据权利要求2所述的一种分布式流数据处理系统中局部算子的业务封装方法,其特征在于,部件配置中的组件列表是部件内的算子集合,连接列表是部件内的组件间连接集合;部件参数字典为部件自身的配置;部件端口表为部件的数据端口名;参数映射表用于描述部件参数与内部算子参数之间的关联关系;端口映射表用于描述部件端口与内部组件端口的关联关系。4.根据权利要求1所述的一种分布式流数据处理系统中局部算子的业务封装方法,其特征在于,
所述属性映射为:通过将算子的参数与部件的参数绑定,在运行时将该算子的参数值替换成部件的参数值;参数映射表中存储:“部件参数名:算子ID
‑
组件属性名”键值对,并标记其为ATTRIBUTE类型;所述字段映射为:每一个组件具有参数以及对应的参数值,在组件参数值中添加动态字段,将该字段与部件参数绑定,在部件初步处理时将组件参数值进行替换;采用动态字段标记,组件中的参数值中,只要部分值被该动态字段包裹,那么该值就将被作为字段类参数,在部件映射处理时,该字段类参数将被部件参数替换;参数映射表中存储“部件参数名:算子ID
‑
字段”键值对,并标记其为R...
【专利技术属性】
技术研发人员:陈奇,李可宁,张子健,王备,裘英杰,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。