title: Spark Transformation - Why is it lazy and what is the advantage?
body: <p><code>Spark Transformations</code> are lazily evaluated - when we call the action it executes all the transformations based on lineage graph.</p>
  <p>What is the advantage of having the Transformations Lazily evaluated?</p>
  <p>Will it improve the <code>performance</code> and less amount of <code>memory consumption</code> compare to eagerly evaluated?</p>
  <p>Is there any disadvantage of having the Transformation lazily evaluated?</p>