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 plurality of benchmark tests for said task using each of said set of processing techniques while varying said set of parameters, wherein said plurality of benchmark tests comprise at least one crossover point defining a transition between a first parameter range where a first processing technique completes said task in a smallest amount of time and a second parameter range where a second processing technique completes said task in the smallest amount of time.