Making the smaller source the master source minimizes cache size because Joiner cache stores the master source data. The smaller dataset requires less cache memory. Making the smaller source the detail source would cache the larger dataset, and sorting either stream doesn't reduce cache size.