[
https://issues.apache.org/jira/browse/GIRAPH-613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13626926#comment-13626926
]
Maja Kabiljo commented on GIRAPH-613:
-------------------------------------
Probably I'm missing something here - why is this better than the current
state? Especially if we still allow user to create his own VertexWritable. And
I don't see how this makes it clearer to the user that he shouldn't add fields
to vertex.
Ultimately we might want to remove Vertex completely, and have user implement
some Computation interface, which would have a method like:
compute(vertexId, vertexValue, edges, messages)
This will really prevent user from adding additional fields directly to the
vertex.
Also, in many applications we have different kind of computation going on
during different supersteps (have a lot of "if (superstep == ..) { ... } else
if (superstep == ..) ... ). We use different messages during different
supersteps too, and we have to hack it by putting a message type inside of
MessageWritable. Having something like Computation instead of Vertex, and
providing an option to switch Computation during application would make all of
this much easier. But definitely not for the next release :-)
> Remove Writable from the interfaces implemented by Vertex
> ---------------------------------------------------------
>
> Key: GIRAPH-613
> URL: https://issues.apache.org/jira/browse/GIRAPH-613
> Project: Giraph
> Issue Type: Improvement
> Reporter: Claudio Martella
> Priority: Minor
> Attachments: NonWritable.diff
>
>
> Currently, Vertex implements Writable, meaning that we depend on the user
> (except for the default implementation) on the way the graph is serialised
> and deserialized. This means we cannot do certain optimisations, and the user
> can actually add additional stuff to Vertex more than Value, Id, Edges and
> halt state. By removing this possibility (or allowing them to extend a
> default implementation) we take control of this.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira