Using the set globals node will not pushback to a database as SQL, so is not an option if you want efficient processing. It also requires executing the stream multiple times. he result will be static, so if your dta changes the 'maximum' value will not unless you re-run the Set Globals nodes (sometimes this ia a good thing, but that's for another post :) ). The Set Globals method to acquire maximum and minimum values (or means etc) is fine for small datasets, but I recommend using the aggregate where possible.
The example I provided in my previous post will work for large scale databases (especially where the aggregated key field is indexed), is dyamanic, and requires just one stream execution. I daily use this method on many millions of rows, for example to rank data based upon specific date ranges.
Cheers
Tim