Graph operations
The Graphx
library provides various inbuilt operations that can be executed on Property Graphs. In this section, we will discuss those operations.
mapVertices
Similar to map transformation on RDD, mapVertices
allows users to transform the vertices of graphs. The following is the signature of the mapVertices
method:
mapVertices(scala.Function2<Object,VD,VD2> map, scala.reflect.ClassTag<VD2> evidence$3, scala.Predef.$eq$colon$eq<VD,VD2> eq)
To implement scala.Function2
in Java, scala.runtime.AbstractFunction2
can be used because implementing scala.Function2
in Java requires users to implement a large number of abstract methods and this generates a lot of byte code.
AbstractFunction0
, AbstractFunction1
, AbstractFunction2
, ... were introduced to reduce the byte code generated by anonymous functions such as scala.Function0
, scala.Function1
, scala.Function2
, ..... That is why they are kept in the scala.runtime
package. We can leverage them while calling graph operations...