1) Buy a box with 1TB of RAM. Very doable these days, albeit a bit pricey still
2) Scale out. Spark can easily handle hundreds of nodes in a single cluster. Aggregate RAM across all of them can be used.
3) Cache intermediate data sets and/or hot data sets, as opposed to the entire data set.