Predictive query suggestion caching
First Claim
1. A system, comprising:
- a data processing apparatus; and
a memory storage apparatus in data communication with the data processing apparatus, the memory storage apparatus storing server instructions that when executed by the data processing apparatus cause the data processing apparatus to perform operations comprising;
receiving from a client device a request for a search resource;
providing to the client device in response to the request the search resource, the search resource including;
first instructions that cause the client device to generate a search interface that includes a first query input field;
initial query suggestions, wherein each initial query suggestion is determined from data separate from content of the search resource and, upon user selection from the search interface, is processed by a search service as a query, and wherein the initial query suggestions are provided to the client device with the search resource without an additional request for the initial query suggestions from the client device separate from the request;
second instructions that cause the client device to;
store the initial query suggestions in a suggestion store on the client device;
compare query characters input in the first query input field to the query suggestions stored in the suggestion store;
select query suggestions that match the query characters input in the first query input field based on the comparison; and
display the selected query suggestions as query suggestions for the query characters input into the first query input field.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, an apparatus, and computer program products, for pre-caching query suggestions. In one aspect, a method includes receiving from a client device a request for a search resource; providing to the client device in response to the request the search resource, the search resource including: first instructions that cause the client device to generate a search interface that includes a first query input field; initial query suggestions; second instructions that cause the client device to: store the initial query suggestions in a suggestion store on the client device; compare query characters input in the first query input field to the query suggestions stored in the suggestion store; select query suggestions that match the query characters input in the first query input field based on the comparison; and display the selected query suggestions as query suggestions for the query characters input into the first query input field.
28 Citations
22 Claims
-
1. A system, comprising:
-
a data processing apparatus; and a memory storage apparatus in data communication with the data processing apparatus, the memory storage apparatus storing server instructions that when executed by the data processing apparatus cause the data processing apparatus to perform operations comprising; receiving from a client device a request for a search resource; providing to the client device in response to the request the search resource, the search resource including; first instructions that cause the client device to generate a search interface that includes a first query input field; initial query suggestions, wherein each initial query suggestion is determined from data separate from content of the search resource and, upon user selection from the search interface, is processed by a search service as a query, and wherein the initial query suggestions are provided to the client device with the search resource without an additional request for the initial query suggestions from the client device separate from the request; second instructions that cause the client device to; store the initial query suggestions in a suggestion store on the client device; compare query characters input in the first query input field to the query suggestions stored in the suggestion store; select query suggestions that match the query characters input in the first query input field based on the comparison; and display the selected query suggestions as query suggestions for the query characters input into the first query input field. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system, comprising:
-
a data processing apparatus; and a memory storage apparatus in data communication with the data processing apparatus, the memory storage apparatus storing server instructions that when executed by the data processing apparatus cause the data processing apparatus to perform operations comprising; accessing query log data that includes queries submitted by users and the frequency with which each query was submitted; determining most likely sequences of initial query characters from the query log data; for each most likely sequence, determine most likely queries from the most likely sequence and the query log data, each most likely query having an initial sequence of query characters matching the most likely sequence of initial query characters; designate the most likely queries determined for each of the most likely sequences of initial query characters as initial query suggestions; receive from a client device a request for a search resource; provide to the client device in response to the request the search resource, the search resource including; first instructions that cause the client device to generate a search interface that includes a first query input field; the initial query suggestions; second instructions that cause the client device to; store the initial query suggestions in a suggestion store on the client device; compare query characters input in the first query input field to the query suggestions stored in the suggestion store; select query suggestions that match the query characters input in the first query input field based on the comparison; display the selected query suggestions as query suggestions for the query characters input into the first query input field; provide the query characters input in the first query input field to the data processing apparatus as a query suggestion request; wherein the server instructions further cause the data processing apparatus to; receive the query characters from the client device; determining most likely sequences of subsequent query characters from the query log data, the subsequent query characters being query characters that are subsequent in sequence to the query characters received from the client device; for each most likely sequence of subsequent query characters, determine most likely additional queries from the most likely sequence of subsequent query characters and the query log data, each most likely query having an initial sequence of query characters matching the query characters received from the client device and the most likely sequence of subsequent query characters; designate the most likely additional queries determined for each of the most likely sequences of subsequent query characters as additional query suggestions; and provide the additional query suggestions to the client device in response to the query suggestion request; wherein the second instructions cause the client device to; receive, in response to the request, the additional query suggestions from the data processing apparatus; and store the additional query suggestions in the suggestion store; and wherein; the server instructions cause the data processing apparatus to; provide the initial query suggestions and additional query suggestions in the form of key value pairs, the key value pairs being pairs of query input sequences and query suggestions having initial query characters that match the query input sequences; and the second instructions cause the client device to; provide the query characters input in the first query input field to the data processing apparatus as a query suggestion request only in response to determining that the query characters input in the first query input field do not match any of the query input sequences of the key value pairs.
-
-
11. A client device, comprising:
-
a processing system; a memory storage apparatus in data communication with the processing system, the memory storage apparatus storing browser instructions that when executed by the processing system cause the client device to perform operations comprising; providing a request for a search resource from a search service; receiving the search resource in response to the request the search resource, the search resource including; first instructions that cause the client device to generate a search interface that includes a first query input field; initial query suggestions, wherein each initial query suggestion is determined from data separate from content of the search resource and, upon user selection from the search interface, is processed by the search service as a query, and wherein the initial query suggestions are received with the search resource without an additional request for the initial query suggestions to the search service separate from the request; and second instructions that cause the client device to; store the initial query suggestions in a suggestion store on the client device; compare query characters input in the first query input field to the query suggestions stored in the suggestion store; select query suggestions that match the query characters input in the first query input field based on the comparison; and display the selected query suggestions as query suggestions for the query characters input into the first query input field. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A computer-implemented method performed by a data processing apparatus, comprising:
-
receiving from a client device a request for a search resource; and providing to the client device in response to the request for the search resource, the search resource including; first instructions that cause the client device to generate a search interface that includes a first query input field; initial query suggestions, wherein each initial query suggestion is determined from data separate from content of the search resource and, upon user selection from the search interface, is processed by a search service as a query, and wherein the initial query suggestions are provided to the client device with the search resource without an additional request for the initial query suggestions from the client device separate from the request; and second instructions that cause the client device to; store the initial query suggestions in a suggestion store on the client device; compare query characters input in the first query input field to the query suggestions stored in the suggestion store; select query suggestions that match the query characters input in the first query input field based on the comparison; and display the selected query suggestions as query suggestions for the query characters input into the first query input field. - View Dependent Claims (19, 20, 21)
-
-
22. A non-transitory computer storage medium encoded with a computer program, the program comprising instructions that when executed by data processing apparatus cause the data processing apparatus to perform operations comprising:
-
receiving from a client device a request for a search resource; and providing to the client device in response to the request the search resource, the search resource including; first instructions that cause the client device to generate a search interface that includes a first query input field; initial query suggestions, wherein each initial query suggestion is determined from data separate from content of the search resource and, upon user selection from the search interface, is processed by a search service as a query, and wherein the initial query suggestions are provided to the client device with the search resource without an additional request for the initial query suggestions from the client device separate from the request; and second instructions that cause the client device to; store the initial query suggestions in a suggestion store on the client device; compare query characters input in the first query input field to the query suggestions stored in the suggestion store; select query suggestions that match the query characters input in the first query input field based on the comparison; and display the selected query suggestions as query suggestions for the query characters input into the first query input field.
-
Specification