1. A computer implemented method for decoupled searching and optimization for one or more data centers, comprising: determining a network topology for one or more networks of interconnected computer systems embedded in the one or more data centers; searching for routing candidates based on a network topology determined; refining a search space for the searching for routing candidates using a scaled exhaustive search, the scaled exhaustive search comprising searching only selected switches and/or hypervisors for all spanning trees that satisfy a pre-determined size constraint specified during the refining a search space; and updating and applying one or more objective functions to the routing candidates to determine an optimal routing candidate to satisfy embedding goals based on tenant requests, and to embed the optimal routing candidate in the one or more data centers.