1. A computer-readable medium storing computer-executable instructions that when executed by a computer cause the computer to perform a method, the method comprising: selecting a first engine for searching a graph for instances of a pre-specified sub-graph, where the first engine is selected as a function of graph-level information associated with one or more of the graph and the pre-specified sub-graph, the graph describing relationships among a plurality of components of an information technology (IT) infrastructure having descriptions that are stored within a configuration management data store (CMDB); selecting a second engine for searching the graph for instances of the pre-specified sub-graph, where the second engine is selected as a function of performance data and graph-level information associated with one or more of the graph and the pre-specified sub-graph; controlling execution of a search for the pre-specified sub-graph using the first engine and the second engine; and storing performance data associated with one or more of the pre-specified sub-graph, the first engine, and the second engine describing a performance indicator of the search, wherein the first engine and the second engine are different engines, wherein each engine is associated with a different way by which the graph is to be searched, and wherein both the first engine and the second engine are able to locate the instances of a same pre-specified sub-graph within the graph.