1. A method for query processing in a big data analytics platform, comprising: enumerating plans for a current query using a processor; building a dominance graph for the current query; for each plan, determining a regret value and a score for the plan based on the regret value and cost; and selecting query plans in an online fashion for query processing in big data analytics platforms where intermediate results are materialized and can be reused later; wherein for each plan P ij , using a scoring function score(P ij ) defined as score ⁡ ( P ij ) = ∑ s ∈ P ij ⁢ rg i ⁡ ( s ) - C ⁡ ( P ij ) ; with rg i (s) representing a regret of s wrt the ith query, and C(P ij ) representing cost of plan P ij .