Yes, this is one of the great things about Giraph (not many other graph computation frameworks allow graph mutation). See the Computation class (i.e.)

  /**
   * Sends a request to create a vertex that will be available during the
   * next superstep.
   *
   * @param id Vertex id
   * @param value Vertex value
   * @param edges Initial edges
   */
void addVertexRequest(I id, V value, OutEdges<I, E> edges) throws IOException;

  /**
   * Sends a request to create a vertex that will be available during the
   * next superstep.
   *
   * @param id Vertex id
   * @param value Vertex value
   */
  void addVertexRequest(I id, V value) throws IOException;

  /**
   * Request to remove a vertex from the graph
   * (applied just prior to the next superstep).
   *
   * @param vertexId Id of the vertex to be removed.
   */
  void removeVertexRequest(I vertexId) throws IOException;

  /**
   * Request to add an edge of a vertex in the graph
   * (processed just prior to the next superstep)
   *
   * @param sourceVertexId Source vertex id of edge
   * @param edge Edge to add
   */
void addEdgeRequest(I sourceVertexId, Edge<I, E> edge) throws IOException;

  /**
* Request to remove all edges from a given source vertex to a given target
   * vertex (processed just prior to the next superstep).
   *
   * @param sourceVertexId Source vertex id
   * @param targetVertexId Target vertex id
   */
  void removeEdgesRequest(I sourceVertexId, I targetVertexId)
    throws IOException;


On 4/16/14, 7:23 AM, Akshay Trivedi wrote:
Hi,
I wanted to do some computation on graph and delete some edges between
supersteps. Can this be done using giraph?? I have heard of
MutableVertex class but I dont know whether it can be used to delete
edges. Also is MutableVertex abstract class and has to be
implemented??

Regards,
Akshay

Reply via email to