[ https://issues.apache.org/jira/browse/SPARK-7894?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andy Huang updated SPARK-7894: ------------------------------ External issue URL: https://issues.apache.org/jira/browse/SPARK-7893 > Graph Union Operator > -------------------- > > Key: SPARK-7894 > URL: https://issues.apache.org/jira/browse/SPARK-7894 > Project: Spark > Issue Type: Improvement > Components: GraphX > Reporter: Andy Huang > > This operator aims to union two graphs and generate a new graph directly. > Vertexes and edges which are included in either graph will be part of the new > graph. > The union of two graphs G(VG, EG) and H(VH, EH) is the union of their vertex > sets and their edge families, which means 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. It is necessary for interface to consider how to handle > this case for both Vertex and Edge. > For vertex, it's quite nature to have a union and remove duplicates vertexes. > 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] -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org For additional commands, e-mail: issues-h...@spark.apache.org