Good Article, but how do we tell what query is creating the spill over? I have been trying to figure out why a section of my job keeps taking over 2 hours to run... using your sniffing it does give both hash and sort warnings, but the plan has several of these objects.
Look for queries/procedures containing sort/hash operations.
If you have the execution plan, isolate the sort/hash operation and tune the query.
An index will remove the need for a sort operation.
If you are seeing hash operations, look at the columns being joined in the Hash join, look for missing indexes.