20. A method, performed by one or more server devices, the method comprising: storing, in a memory of the one or more server devices, a plurality of query-document associations, each query-document association including a one-to-one pairing of an issued search query and a stored search document that was retrieved based on the issued search query; receiving, by one or more processors of the one or more server devices, a search query from a client device; identifying, by one or more processors of the one or more server devices, a set of search result documents using the received search query; identifying, by one or more processors of the one or more server devices, search result documents in the identified set of search result documents that match stored search documents; forming, by one or more processors of the one or more server devices, a plurality of clusters of the search documents, of the stored plurality of query-document associations, that match the search result documents; selecting, by one or more processors of the one or more server devices, at least one of the plurality of clusters; computing, by one or more processors of the one or more server devices, a centroid for each of the selected at least one of the plurality of clusters; computing, by one or more processors of the one or more server devices, a score for each unique issued search query associated with a document in the selected at least one of a plurality of clusters based on the computed centroid; identifying, by one or more processors of the one or more server devices, for a stored search document of the selected at least one of the plurality of clusters, a query-document association in the plurality of query-document associations based on the computed scores; formulating, by one or more processors of the one or more server devices, a search query refinement suggestion for the received search query based on an issued search query of the identified query-document association; and sorting, by one or more processors of the one or more sever devices, the formulated search query refinement suggestion among a group of search query refinement suggestions.
20. A method, performed by one or more server devices, the method comprising: storing, in a memory of the one or more server devices, a plurality of query-document associations, each query-document association including a one-to-one pairing of an issued search query and a stored search document that was retrieved based on the issued search query; receiving, by one or more processors of the one or more server devices, a search query from a client device; identifying, by one or more processors of the one or more server devices, a set of search result documents using the received search query; identifying, by one or more processors of the one or more server devices, search result documents in the identified set of search result documents that match stored search documents; forming, by one or more processors of the one or more server devices, a plurality of clusters of the search documents, of the stored plurality of query-document associations, that match the search result documents; selecting, by one or more processors of the one or more server devices, at least one of the plurality of clusters; computing, by one or more processors of the one or more server devices, a centroid for each of the selected at least one of the plurality of clusters; computing, by one or more processors of the one or more server devices, a score for each unique issued search query associated with a document in the selected at least one of a plurality of clusters based on the computed centroid; identifying, by one or more processors of the one or more server devices, for a stored search document of the selected at least one of the plurality of clusters, a query-document association in the plurality of query-document associations based on the computed scores; formulating, by one or more processors of the one or more server devices, a search query refinement suggestion for the received search query based on an issued search query of the identified query-document association; and sorting, by one or more processors of the one or more sever devices, the formulated search query refinement suggestion among a group of search query refinement suggestions. 27. The method of claim 20 , where the computing the score for each of the unique search queries comprises: multiplying a frequency of the issued search queries in the identified query-document associations in the selected clusters times a length of a distance vector measured from the term vectors of the issued search queries in the identified query-document associations to the centroids of the selected clusters.