Aggregator transform is m uch like the Group by clause in traditional SQL.
this particular transform is a connected/active transform which can take the incoming data form the mapping pipeline and group them based on the group by ports specified and can caculated aggregate funtions like ( avg, sum, count, stddev....e.tc) for each of those groups.
From a performanace perspective if your mapping has an AGGREGATOR transform use filters and sorters very early in the pipeline if there is any need for them.
The Aggregator transformation allows you to perform aggregate calculations, such as averages and sums. The Aggregator transformation is unlike the Expression transformation, in that you can use the Aggregator transformation to perform calculations on groups.
Aggregate Transformation is used to aggregate the data Colum wise..The only difference between the Aggregate and Expression transformation is that Aggregate transformation sorts the data Row wise where as Expression transformation sorts the data Column wise.