It gets passed to WP_Query as an argument so it would be the same level of load DB wise.
So either select all (cacheable) and do the randomization on the client side, or you'd need a custom endpoint that does the randomization server side (same idea, less data over the wire).
_______________________
Nick Ciske
VP Web Engineering
@nciske