一种基于节点编排的组装式计算系统及方法与流程

摘要: 本发明涉及数据处理,尤其涉及一种基于节点编排的组装式计算系统及方法。背景技术:1、在电力、能源、工业控制等领域,数据通常来源于scada系统、ems系统、mis...
一种基于节点编排的组装式计算系统及方法与流程

本发明涉及数据处理,尤其涉及一种基于节点编排的组装式计算系统及方法。

背景技术:

1、在电力、能源、工业控制等领域,数据通常来源于scada系统、ems系统、mis系统等多个异构系统,但上述系统数据结构各异、命名不统一,会导致数据整合和复用困难。传统的数据处理方式主要包括两种方案,第一种方案采用传统编程方式开发数据处理程序,开发人员需要针对每个业务场景编写专门的代码,使用sql语句查询数据库,使用java、python等编程语言实现业务逻辑;第二种方案采用etl工具如kettle等,这类工具虽提供了可视化的数据流设计页面,一定程度上降低了技术门槛,但主要针对数据仓库场景设计;上述两种方式均存在技术门槛高、开发效率低、灵活性差、复用性差以及数据访问复杂等缺点,同时需要专业的编程知识导致非技术人员无法参与,编写和调试代码需要大量时间,需求变更时需修改代码使得维护成本高,不同项目之间的代码难以复用,且异构数据缺乏统一的访问方式、表达式访问能力弱;

2、为解决表达式访问能力弱的问题,引入mvel表达式语言,其广泛应用于规则引擎和数据处理领域,支持属性访问、方法调用、条件判断、数学运算等丰富语法以满足复杂数据处理需求,但直接使用mvel需要一定的编程基础,对于非技术人员而言学习成本较高,限制了其在业务人员中的普及应用。

技术实现思路

1、发明目的:本发明的目的是提供种基于节点编排的组装式计算系统及方法,克服现有技术中数据处理技术门槛高、开发效率低、灵活性差、数据访问复杂缺陷,实现低代码甚至零代码的数据处理流程构建。

2、技术方案:本发明所述的基于节点编排的组装式计算系统,包括:

3、数据处理层,包括数据源层、统一建模模块、模型缓存层;数据源层提供原始数据输入;统一建模模块用于对数据源层提供的原始数据进行统一建模,定义标准化的数据模型;模型缓存层用于存储和管理统一建模模块建模后的数据;

4、组装式计算服务层,包括处理器节点管理模块、链路管理模块、执行模块和mvel表达式引擎;处理器节点管理模块用于管理和扩展处理器节点类型;链路管理模块用于链路的管理操作;执行模块用于按照编排的链路执行计算流程,并得到计算结果;mvel表达式引擎用于解析和执行表达式访问;组装式计算服务层通过内部的缓存直接从数据处理层获取相关的模型数据;

5、可视化编排层,包括可视化编排界面、处理器节点、计算链路构建、计算结果获取;可视化编排界面用于展示和连接各处理器节点;处理器节点进行相应的逻辑处理,用于构建条件判断逻辑;可视化编排层通过restful接口获取处理器节点信息、链路信息以及执行计算链路并获取结果。

6、进一步地,可视化编排界面包括节点库面板、画布区域和配置面板;节点库面板用于展示当前所有的处理器节点的信息;画布区域通过拖拽方式构建计算链路;配置面板对选中的节点进行参数配置和mvel表达式编辑。

7、进一步地,mvel表达式引擎在解析表达式时,首先通过模型缓存层获取对应的数据对象,然后按照表达式的语法树依次执行求值操作,最终得到每个处理器节点逻辑处理的结果。

8、进一步地,可视化编排界面支持拖拽操作,用户可通过拖拽方式连接各节点;可视化编排界面在连接节点时,仅显示数据格式匹配的可连接端口,对不匹配的端口进行屏蔽或提示。

9、进一步地,处理器节点包括条件构造器节点、查找器节点、过滤器节点、通用计算器节点、累加器节点、平均值计算器节点、分组器节点、分页器节点、合并器节点、模板生成器节点。

10、进一步地,每个处理器节点具有多个输入端口和多个输出端口,每个端口具有预定义的数据格式类型。

11、进一步地,预定义的数据格式类型包括模型类、基本数据类、分组类。

12、进一步地,执行模块依次执行每个处理器节点的计算逻辑:通过mvel表达式引擎从模型缓存层获取当前节点所需的输入数据,然后执行处理器节点的处理逻辑,最后将计算结果传递至下游节点,依次进行处理计算。

13、一种基于节点编排的组装式计算方法,包括以下步骤:

14、对提供的原始数据进行统一建模,定义标准化的数据模型,将统一建模后的数据进行存储和管理;

15、管理和扩展处理器节点类型,通过可视化界面选择处理器节点并进行拖拽连接以构建计算链路,对计算链路进行管理操作并配置各节点的参数和输入输出关系,各处理器节点通过表达式解析和执行访问缓存中的数据;

16、按照编排的链路顺序执行各节点的计算流程,得到计算结果,通过restful接口获取处理器节点信息、链路信息以及执行计算链路并获取结果。

17、进一步地,处理器节点的连接遵循端口类型匹配规则,即仅当上游节点的输出端口数据格式与下游节点的输入端口数据格式一致时,才允许建立连接;用户在连接过程中,可视化编排界面自动屏蔽或提示数据格式不匹配的端口。

18、有益效果:与现有技术相比,本发明具有如下显著优点:1、统一建模模块消除了异构系统的模型不一致问题,使用者无需了解底层数据结构,只需使用标准化的命名规范即可访问任意数据;2、非技术人员可通过可视化界面构建数据处理流程,无需编写代码或学习复杂的表达式语法,经过简单培训的业务人员只需在需要的处理器节点输入简单的表达式并连接不同的处理器节点即可独立构建数据处理链路,通过执行引擎获取数据完成复杂的数据处理逻辑,减少对开发团队的依赖,提高开发效率;3、数据格式安全:通过端口类型匹配机制,确保节点间数据传递的格式兼容性,在编排阶段即可发现并阻止不兼容的连接,避免运行时因数据格式不匹配导致的处理错误;4、处理器高度复用:通过参数化构建机制,同一类型的处理器节点可通过配置不同参数值生成具有不同处理逻辑的实例,无需为每种业务场景单独开发新的处理器节点,提高了处理器的复用率和开发效率;5、链路持久化复用:编排完成的计算链路可持久化存储并多次重复执行,用户无需重复编排即可反复使用已保存的链路,能够提升数据处理的工作效率,同时链路的版本管理和共享功能便于团队协作;6、零代码扩展处理器:通过页面可视化配置方式,用户无需编写代码即可自定义新的处理器节点并加入节点库,降低了处理器扩展的技术门槛,使非技术人员也能根据业务需求灵活定制处理器。

1.一种基于节点编排的组装式计算系统,其特征在于,包括:

2.根据权利要求1所述的组装式计算系统,其特征在于,可视化编排界面包括节点库面板、画布区域和配置面板;节点库面板用于展示当前所有的处理器节点的信息;画布区域通过拖拽方式构建计算链路;配置面板对选中的节点进行参数配置和mvel表达式编辑。

3.根据权利要求1所述的组装式计算系统,其特征在于,mvel表达式引擎在解析表达式时,首先通过模型缓存层获取对应的数据对象,然后按照表达式的语法树依次执行求值操作,最终得到每个处理器节点逻辑处理的结果。

4.根据权利要求1所述的组装式计算系统,其特征在于,可视化编排界面支持拖拽操作,用户可通过拖拽方式连接各节点;可视化编排界面在连接节点时,仅显示数据格式匹配的可连接端口,对不匹配的端口进行屏蔽或提示。

5.根据权利要求1所述的组装式计算系统,其特征在于,处理器节点包括条件构造器节点、查找器节点、过滤器节点、通用计算器节点、累加器节点、平均值计算器节点、分组器节点、分页器节点、合并器节点、模板生成器节点。

6.根据权利要求1所述的组装式计算系统,其特征在于,每个处理器节点具有多个输入端口和多个输出端口,每个端口具有预定义的数据格式类型。

7.根据权利要求1所述的组装式计算系统,其特征在于,预定义的数据格式类型包括模型类、基本数据类、分组类。

8.根据权利要求1所述的组装式计算系统,其特征在于,执行模块依次执行每个处理器节点的计算逻辑:通过mvel表达式引擎从模型缓存层获取当前节点所需的输入数据,然后执行处理器节点的处理逻辑,最后将计算结果传递至下游节点,依次进行处理计算。

9.一种基于节点编排的组装式计算方法,其特征在于,包括以下步骤:

10.根据权利要求9所述的组装式计算方法,其特征在于,处理器节点的连接遵循端口类型匹配规则,即仅当上游节点的输出端口数据格式与下游节点的输入端口数据格式一致时,才允许建立连接;用户在连接过程中,可视化编排界面自动屏蔽或提示数据格式不匹配的端口。