RDD operations are divided into two categories, namely:
- Transformation: The transformation operation over RDD results in a new RDD, which means that every time you perform a transformation, a new RDD will be created. The transformation over RDD forms a RDD lineage, which indicates a dependency graph of RDD to its parent RDD. Remember, RDD is immutable in nature, thus applying any transformation to RDD will not modify the existing RDD. Instead, it will result in new RDD for which lineage will be formed. All transformations are lazily evaluated, which means they will not be executed until and unless an action is called on any RDD in lineage. Let's look into a few transformation functions:
- map: The map transformation applies ...