12. The method of claim 8 , further comprising: traversing the query nodes of the original query plan; and forming additional abstract nodes in the compact query plan when a Cartesian product (C) operator, Filter (F) operator, Evaluation (E) operator, a Left Outer Join (LOJ) operator, or null-rejecting Full Outer Join (FOJ rej ) operator is encountered in the original query plan.
15. The method of claim 12 , wherein computing the maximal source sub-queries further comprises: determining that all input nodes to the at least one singleton node in the compact query plan are associated with a single data source; and moving a tree rooted at the at least one singleton node to a source node associated with the single data source to increase a profit function.