1. A method for searching data using a network device in communication with a client device, comprising: receiving, from the client device, one or more search terms; determining at least one concept based on an analysis of the one or more search terms; identifying one or more concept-specific data sources over which to perform searches based on the at least one concept; performing a search over each of the one or more concept-specific data sources based at least on the search term to generate a plurality of clusters, search results from each concept-specific data source comprising a different cluster in the plurality of clusters; determining a relevance score for each result within each cluster based on user specific contextual data for a user of the client device; for each cluster in the plurality of clusters, employing at least the relevance scores of each result within the respective cluster to determine a respective cluster score; generating an ordered listing of each of the plurality of clusters based on the respective cluster scores; and displaying at the client device at least a portion of the ordered plurality of clusters.