You need to get out more if you think (as your comment would seem to suggest) that only Google has efficiency problems...
Why am I in school?
- turn the screw: US$ 5
- knowing which screw to turn: US$ 5000
Algorithms are a poor substitute for us poor engineers that don't have money to throw :)
But you do bring up an interesting point, how does Google handle the heterogeneous server problem? One assumes that not all nodes are created equal (if only because it would be cost prohibitive to upgrade all at once), so do you just use dynamic task scheduling and hope for the best or is there something cooler going on there?
Google has to add $xx * the number of its' servers vs. $xxxx fixing it by one or two developers.