Join Snap - unsorted input streams vs sorted input streams

If I use Sort Snaps to sort the input streams before the Join Snap I can use the ‘Maximum Memory %’ property in the Sort Snap to control the size of the internal memory buffer for the external merge sort. If the Join Snap’s input streams are unsorted the documentation states that the snap will sort the input streams before it starts the join operation. Does the Join Snap also use an external merge sort to sort the input streams in the same manner that the Join Snap does or does it perform the sort differently? If it sorts in the same manner as the Sort Snap is there a way to control the size of the internal memory buffer for the external merge sort?

Is it better to use Sort Snaps to sort the input streams prior to the Join Snap or have the Join Snap perform the sort on unsorted input streams?

2 Likes