Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: GraphX
    • Labels:

      Description

      This operator aims to union two graphs and generate a new graph directly. The union of two graphs is the union of their vertex sets and their edge families.Vertexes and edges which are included in either graph will be part of the new graph.

      G ∪ H = (VG ∪ VH, EG ∪ EH).

      The below image shows a union of graph G and graph H

      A Simple interface would be:

      def union[VD: ClassTag, ED: ClassTag](other: Graph[VD, ED]): Graph[VD, ED]

      However, inevitably vertexes and edges overlapping will happen between borders of graphs. For vertex, it's quite nature to just make a union and remove those duplicate ones. But for edges, a mergeEdges function seems to be more reasonable.

      def union[VD: ClassTag, ED: ClassTag](other: Graph[VD, ED], mergeEdges: (ED, ED) => ED): Graph[VD, ED]

        Attachments

        1. union_operator.png
          74 kB
          Andy Huang

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                andyyehoo Andy Huang
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: