Just a suggested alternative to LRU: 

To minimize the number of affected RDDs, how about evicting the blocks from those RDDs occupying the most memory space first, because in usual, all the blocks in RDD are necessary for the computation, this approach may minimize the chance for recomputation