1. A machine-implemented method, the method comprising: receiving a query for data stored across a plurality of data systems; generating a plurality of logical plans for executing the query; for each of the plurality of logical plans: generating a first set of physical plans for executing the query on the plurality of data systems based on the respective logical plan; determining an execution cost for each physical plan from the first set of physical plans; and selecting the physical plan with a lowest determined execution cost from the first set of physical plans; selecting a physical plan with a lowest execution cost among the selected respective physical plans of each of the logical plans; executing a first operation from the query according to the selected physical plan among the selected respective physical plans of each of the logical plans; updating the query based on results from the executed first operation from the query; generating a second plurality of logical plans for executing a new query for a remaining set of operations from the query based on the results and respective physical plans for each of the second plurality of logical plans; selecting a physical plan with a lowest execution cost among the respective physical plans for each of the second plurality of logical plans; executing a second operation from the new query according to the selected physical plan; updating the new query based on results from the executed second operation from the new query; and for a second new query based on a remaining set of operations from the new query, repeating steps for generating logical plans, selecting a physical plan, executing an operation among the second remaining set of operations, and updating the second new query until the second new query is complete.