Uploaded image for project: 'Giraph (Retired)'
  1. Giraph (Retired)
  2. GIRAPH-141

multigraph support in giraph

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • graph
    • None

    Description

      The current vertex API only supports simple graphs, meaning that there can only ever be one edge between two vertices. Many graphs like the road network are in fact multigraphs, where many edges can connect two vertices at the same time.

      Support for this could be added by introducing an Iterator<EdgeWritable> getEdgeValue() or a similar construct. Maybe introducing a slim object like a Connector between the edge and the vertex is also a good idea, so that you could do something like:

       
      for (final Connector<EdgeWritable, VertexWritable> conn: getEdgeValues(){
           final EdgeWritable edge = conn.getEdge();
           final VertexWritable otherVertex = conn.getOther();
           doInterestingStuff(otherVertex);
           doMoreInterestingStuff(edge);
      }
      

      Attachments

        1. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        2. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        3. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        4. GIRAPH-141.patch
          145 kB
          Alessandro Presta
        5. GIRAPH-141.patch
          122 kB
          Alessandro Presta
        6. GIRAPH-141.patch
          117 kB
          Alessandro Presta
        7. GIRAPH-141.patch
          117 kB
          Alessandro Presta

        Issue Links

          Activity

            People

              apresta Alessandro Presta
              fs111 André Kelpe
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: