1. A computer implemented method for searching data, the method comprising: receiving a search request from a client; looking up, by a processor of the computer, a value index based on the received search request, wherein the value index includes a plurality of elements comprising: an object type defining type of objects in a plurality of search engines; a plurality of attributes of the object type; a plurality of values that the plurality of attributes take for the plurality of search engines; and the plurality of search engines, and wherein the plurality of elements included in the value index have at least two levels of hierarchy; based on the look up, determining, by the processor of the computer, a search engine from among the plurality of search engines; generating, by the processor of the computer, a query based on the search request and the value index; forwarding, by the processor of the computer, the generated query to the determined search engine for execution; and executing, by the processor of the computer, the generated query in the determined search engine for conducting a search based on the generated query.