Has the author (if they are reading here) considered using Joyent's Manta to take the processing to the data instead?
The bigger point in the article is that these exact "take processing to the data" architectures operate exceedingly well on S3, GCS, Azure.
And, as a biased observer, these architectures operate on GCS the best due to great performance measured in the article, quick VM standup times, low VM prices, and per-minute billing.
EMR-on-S3 is the "copy the data to the processing nodes" variety.
Spinning up a cluster of VMs and use 10 seconds and they charge you min. 1 hour seems expensive to me.