title: Which join will Spark choose when all the selection criteria are not met?
body: <p>We know that in Spark have three types of joins -- Broadcast Join， Shuffle Join and Sort-Merge Join：</p>
  <ul>
  <li>when small table join big table，use Broadcast Join；</li>
  <li>when small table big than BroadcastJoinThreshold，use Shuffle Join；</li>
  <li>when big table join，and join key can sort，use Sort-Merge Join；</li>
  </ul>
  <p>What happens in a case where there is a join of two big tables and the join key can't be sorted? Which join type Spark will choose?</p>