DataFlow结构
DataFlow结构
图1 DataFlow结构


DataFlow分三层,各层介绍如下。
数据流表达
图2 数据流表达示意图


上图中各个节点解释如下。
- FlowData:数据节点,每个FlowData对应一个输入。
- FlowNode:逻辑计算节点的抽象表示。可以关联具体的ProcessPoint实现,ProcessPoint可分为FunctionPp (UDF的计算处理点)、GraphPP(Graph的计算处理点)。
- FlowOutput:数据输出。
- Edge:表示数据流连边。
- FlowGraph:由一系列输入节点FlowData和计算节点FlowNode以及数据流连边Edge构成的DAG图。
- 数据流图表达的规则和约束如下。
- FlowGraph是DAG(Directed Acyclic Graph)图,数据流有向且不允许有成环表达。
- 不支持无输入,也不支持无输入且无输出的FlowGraph。
- 节点间流转的数据要保证不可变的,因此不允许计算节点修改输入数据。
- 支持以子图表达为调用闭包,实现控制流表达如循环迭代,分支控制逻辑如下。
父主题: 相关概念