Vasia Kalavri created FLINK-5127:
------------------------------------
Summary: Reduce the amount of intermediate data in vertex-centric
iterations
Key: FLINK-5127
URL: https://issues.apache.org/jira/browse/FLINK-5127
Project: Flink
Issue Type: Improvement
Components: Gelly
Reporter: Vasia Kalavri
Assignee: Vasia Kalavri
The vertex-centric plan contains a join between the workset (messages) and the
solution set (vertices) that outputs <Vertex, Message> tuples. This
intermediate dataset is then co-grouped with the edges to provide the Pregel
interface directly.
This issue proposes an improvement to reduce the size of this intermediate
dataset. In particular, the vertex state does not have to be attached to all
the output tuples of the join. If we replace the join with a coGroup and use an
`Either` type, we can attach the vertex state to the first tuple only. The
subsequent coGroup can retrieve the vertex state from the first tuple and
correctly expose the Pregel interface.
In my preliminary experiments, I find that this change reduces intermediate
data by 2x for small vertex state and 4-5x for large vertex states.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)