1. A method for selecting processing techniques for a data flow task performed by a physical computing system, the method comprising: determining values for each of a set of parameters associated with a task within a data flow processing job; and applying a set of rules to said values to determine one of a set of processing techniques that will be used to execute said task; wherein said set of rules is determined through a set of benchmark tests for said task using each of said set of processing techniques while varying said set of parameters.