The final step in query processing is execution. I'm not going to talk about execution in any detail other than this short paragraph. The execution engine takes the plan that the optimizer has produced and executes it. Along with the actual execution, the execution engine schedules the threads for the processes to run on and provides interthread communication.