In certain cases, Hadoop Streaming is beneficial as java overhead is reduced and the person can write the MR code in any scripting language preferred.
But it also brings some restrictions wherein you have limited number of input and output format options. But using java also opens up additional possibilities and various other add-ons that are supported by Hadoop.