Open andrewdavidmackenzie opened 1 year ago
each node can have a different runtime and hence a different set of available context functions.
partition the function graph over multiple nodes, either by manually drawing the boundaries, or assigning functions to a node, constrained by the available context functions and those used by the flow.
Break up the function graph into multiple sub-graphs, each assigned to a node.
transparent sending/receiving of Values between nodes at the sub-graph boundaries
coordinator on each node to receive it's subgraph for execution, the same as if a full graph.
initial deployer does the partitioning (discovering other nodes and their capabilities first) and then submits the subgraphs to each as needed
when remote node disconnects, that's like an EOF/Null allowing each subgraph to end.
Flow is partitioned and more than one coordinator is involved in it's execution