title: How to do Spark left outer join efficiently with skewed data (spark 2.3)
body: <p>I have two datasets DS_A(300Gb csv) and DS_B(50 GB csv).
  Currently we are doing a left outer join on the DF</p>
  <p><code>val joinedDS = DS_A.joinWith(DS_B, DS_A(&quot;value&quot;) === DS_B(&quot;value&quot;), &quot;left_outer&quot;)  </code>
  the data is skewed in DS_B and the takes forever to run
  I tried to salting technique but facing too many OOM exceptions
  Is the any better solution, i cant move to Spark3</p>
  <p><a href="https://i.stack.imgur.com/QsKd8.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/QsKd8.png" alt="enter image description here" /></a></p>