I think what got left out of this is the reason to backup by datastore is so you don't have too many backups sucking data off the same set of disks at a time.
If you've got a storage array where all your datastores are on the same set of disks it woudn't matter, but if you have one datastore per storage group you could control how many simultaneous backups run on that collection of disks. For instance, you may find that performance for running applications degrades beyond acceptable levels if more than 5 backups are running at the same number.
I made that number 5 up but I hope you get the point.
Similarly, you might want to instead backup by host to avoid overloading a host.