Systems and methods for generating predicted queries and corresponding search results
First Claim
1. A computer-implemented method performed at a server system for processing a search query, comprising:
- receiving at the server system the search query from a search requestor at a client system that is distinct from the server system; and
at the server system, responding to receiving the search query, including;
determining whether the search query is a partial search query or a final search query;
wherein,when the search query is deemed to be a partial search query;
(A) predicting a plurality of predicted queries based upon the search query;
(B) selecting one or more predicted queries in the plurality of predicted queries based, at least in part, on how recently each of the predicted queries was previously submitted to the server system;
(C) obtaining search results corresponding to the one or more selected predicted queries, prior to receiving a selection of any predicted query in the plurality of predicted queries from the search requester, and(D) transmitting (i) the one or more selected predicted queries, and (ii) the search results corresponding to the one or more selected predicted queries to the search requestor at the client system;
when the search query is deemed to be a final search query;
determining whether a server system cache includes search results corresponding to the final search query, whereinwhen the server system cache includes search results corresponding to the final search query, transmitting to the search requestor at the client system, from the server system, the search results in the document cache that correspond to the final search query, andwhen the server system cache does not include search results corresponding to the final search query;
(i) obtaining search results corresponding to the final search query from an inverse document index, and(ii) transmitting to the search requestor at the client system, from the server system, the search results corresponding to the final search query from the inverse document index,wherein at least the predicting (A), selecting (B), and obtaining (C) are executed before obtaining, at the server system, an affirmation, by the search requestor, of a request for executing the search query.
1 Assignment
0 Petitions
Accused Products
Abstract
A search system monitors the input of a search query by a user. Before the user finishes entering the search query, the search system identifies and sends a portion of the query as a partial query to the search engine. Based on the partial query, the search engine creates a set of predicted queries. This process may take into account prior queries submitted by a community of users, and may take into account a user profile. The predicted queries are to be sent back to the user for possible selection. The search system may also cache search results corresponding to one or more of the predicted queries in anticipation of the user selecting one of the predicted queries. The search engine may also return at least a portion of the search results corresponding to one or more of the predicted queries.
134 Citations
27 Claims
-
1. A computer-implemented method performed at a server system for processing a search query, comprising:
-
receiving at the server system the search query from a search requestor at a client system that is distinct from the server system; and at the server system, responding to receiving the search query, including; determining whether the search query is a partial search query or a final search query;
wherein,when the search query is deemed to be a partial search query; (A) predicting a plurality of predicted queries based upon the search query; (B) selecting one or more predicted queries in the plurality of predicted queries based, at least in part, on how recently each of the predicted queries was previously submitted to the server system; (C) obtaining search results corresponding to the one or more selected predicted queries, prior to receiving a selection of any predicted query in the plurality of predicted queries from the search requester, and (D) transmitting (i) the one or more selected predicted queries, and (ii) the search results corresponding to the one or more selected predicted queries to the search requestor at the client system; when the search query is deemed to be a final search query; determining whether a server system cache includes search results corresponding to the final search query, wherein when the server system cache includes search results corresponding to the final search query, transmitting to the search requestor at the client system, from the server system, the search results in the document cache that correspond to the final search query, and when the server system cache does not include search results corresponding to the final search query; (i) obtaining search results corresponding to the final search query from an inverse document index, and (ii) transmitting to the search requestor at the client system, from the server system, the search results corresponding to the final search query from the inverse document index, wherein at least the predicting (A), selecting (B), and obtaining (C) are executed before obtaining, at the server system, an affirmation, by the search requestor, of a request for executing the search query. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A server system, comprising:
-
one or more hardware processors; hardware memory; and one or more programs stored in the memory for execution by the one or more processors, the one or more programs comprising instructions for; receiving at the server system a search query from a search requestor at a client system that is distinct from the server system; and at the server system, responding to receiving the search query, including; determining whether the search query is a partial search query or a final search query;
wherein,when the search query is deemed to be a partial search query; (A) predicting a plurality of predicted queries based upon the search query; (B) selecting one or more predicted queries in the plurality of predicted queries based, at least in part, on how recently each of the predicted queries was previously submitted to the server system; (C) obtaining search results corresponding to the one or more selected predicted queries, prior to receiving a selection of any predicted query in the plurality of predicted queries from the search requester and (D) transmitting (i) the one or more selected predicted queries, and (ii) the search results corresponding to the one or more selected predicted queries to the search requestor at the client system; when the search query is deemed to be a final search query; determining whether a server system cache includes search results corresponding to the final search query, wherein when the server system cache includes search results corresponding to the final search query, transmitting to the search requestor at the client system, from the server system, the search results in the document cache that correspond to the final search query, and when the server system cache does not include search results corresponding to the final search query; (i) obtaining search results corresponding to the final search query from an inverse document index, and (ii) transmitting to the search requestor at the client system, from the server system, the search results corresponding to the final search query from the inverse document index, wherein at least the predicting (A), selecting (B), and obtaining (C) are executed before obtaining, at the server system, an affirmation, by the search requestor, of a request for executing the search query. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable storage medium storing one or more programs configured for execution by a computer, the one or more programs comprising instructions for:
-
receiving at a server system a search query from a search requestor at a client system that is distinct from the server system; and at the server system, responding to receiving the search query, including; determining whether the search query is a partial search query or a final search query;
wherein,when the search query is deemed to be a partial search query; (A) predicting a plurality of predicted queries; (B) selecting one or more predicted queries in the plurality of predicted queries based, at least in part, on how recently each of the predicted queries was previously submitted to the server system; (C) obtaining search results corresponding to the one or more selected predicted queries, prior to receiving a selection of any predicted query in the plurality of predicted queries from the search requester and (D) transmitting (i) the one or more selected predicted queries, and (ii) the search results corresponding to the one or more selected predicted queries to the search requestor at the client system; when the search query is deemed to be a final search query; determining whether a server system cache includes search results corresponding to the final search query, wherein when the server system cache includes search results corresponding to the final search query, transmitting to the search requestor at the client system, from the server system, the search results in the document cache that correspond to the final search query, and when the server system cache does not include search results corresponding to the final search query; (i) obtaining search results corresponding to the final search query from an inverse document index, and (ii) transmitting to the search requestor at the client system, from the server system, the search results corresponding to the final search query from the inverse document index, wherein at least the predicting (A), selecting (B), and obtaining (C) are executed before obtaining, at the server system, an affirmation, by the search requestor, of a request for executing the search query. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27)
-
Specification