Predictive fact generation for query optimization
First Claim
Patent Images
1. A computer-implemented method for query optimization, the computer-implemented method comprising executing instructions in a computer system to perform the operations of:
- receiving a request for a fact regarding a product offered for purchase in a product catalog from a client, wherein receiving the request for a fact includes receiving a product identifier associated with the product offered for purchase;
in response to receiving the request for the fact regarding the product offered for purchase in the product catalog from the client, generating the fact regarding the product offered for purchase in the product catalog and returning the fact regarding the product offered for purchase in the product catalog to the client in response to the request;
determining a probability that the client will request one or more additional facts regarding the product offered for purchase in the product catalog, wherein the probability that the client will request the one or more additional facts is determined at least in part on historical requests data describing a probability that the one or more additional facts will be requested following a request for the fact;
determining an estimated cost of generating the one or more additional facts regarding the product offered for purchase in the product catalog, wherein the estimated cost is determined at least in part based upon historical cost data describing an actual historical cost to generate the one or more additional facts, the estimated cost comprising one or more of an estimated time, memory usage, processing capacity, or network bandwidth required to generate the one or more additional facts;
speculatively generating the one or more additional facts regarding the product offered for purchase in the product catalog based upon the determined probability and the estimated cost of generating the one or more additional facts regarding the product offered for purchase in the product catalog;
storing the speculatively generated one or more additional facts regarding the product offered for purchase in the product catalog for use in responding to a future fact request regarding the product offered for purchase in the product catalog from the client;
updating the historical cost data with an actual cost to generate the one or more additional facts;
receiving a request from the client for the one or more additional facts; and
responding to the request for the one or more additional facts with the one or more additional facts.
1 Assignment
0 Petitions
Accused Products
Abstract
A fact generation engine generates facts in response to fact requests submitted by clients. The fact generation engine also predictively generates additional facts prior to receiving a request for the additional facts from a client. The fact generation engine might determine whether to predictively generate additional facts based upon a determined probability that a client will request the additional facts. The estimated cost of predictively generating additional facts might also be utilized to determine whether to predictively generate the facts.
-
Citations
20 Claims
-
1. A computer-implemented method for query optimization, the computer-implemented method comprising executing instructions in a computer system to perform the operations of:
-
receiving a request for a fact regarding a product offered for purchase in a product catalog from a client, wherein receiving the request for a fact includes receiving a product identifier associated with the product offered for purchase; in response to receiving the request for the fact regarding the product offered for purchase in the product catalog from the client, generating the fact regarding the product offered for purchase in the product catalog and returning the fact regarding the product offered for purchase in the product catalog to the client in response to the request; determining a probability that the client will request one or more additional facts regarding the product offered for purchase in the product catalog, wherein the probability that the client will request the one or more additional facts is determined at least in part on historical requests data describing a probability that the one or more additional facts will be requested following a request for the fact; determining an estimated cost of generating the one or more additional facts regarding the product offered for purchase in the product catalog, wherein the estimated cost is determined at least in part based upon historical cost data describing an actual historical cost to generate the one or more additional facts, the estimated cost comprising one or more of an estimated time, memory usage, processing capacity, or network bandwidth required to generate the one or more additional facts; speculatively generating the one or more additional facts regarding the product offered for purchase in the product catalog based upon the determined probability and the estimated cost of generating the one or more additional facts regarding the product offered for purchase in the product catalog; storing the speculatively generated one or more additional facts regarding the product offered for purchase in the product catalog for use in responding to a future fact request regarding the product offered for purchase in the product catalog from the client; updating the historical cost data with an actual cost to generate the one or more additional facts; receiving a request from the client for the one or more additional facts; and responding to the request for the one or more additional facts with the one or more additional facts. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
2. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by the computer, cause the computer to:
-
receive a fact request identifying one or more requested facts regarding an item identified in a product catalog, wherein receiving the fact request includes receiving a product identifier associated with the item identified in the product catalog; in response to receiving the fact request, generate the one or more requested facts regarding the item identified in the product catalog, and to respond to the fact request with the one or more requested facts regarding the item identified in the product catalog; determine, based at least in part upon historical fact requests, a probability that one or more additional facts regarding the item identified in the product catalog will be requested following the fact request; determine, based at least in part upon historical cost data, an estimated cost of generating the one or more additional facts, the estimated cost comprising one or more of an estimated time, memory usage, processing capacity, or network bandwidth required to generate the one or more additional facts; generate, based at least in part upon the determined probability being higher than a threshold amount and the estimated cost being lower than a threshold amount, the one or more additional facts regarding the item identified in the product catalog; store the one or more additional facts for use in responding to a future fact request regarding the item offered for purchase; and receive a request for the one or more additional facts; and respond to the request for the one or more additional facts with the one or more additional facts. - View Dependent Claims (3, 4, 5, 17, 18)
-
-
6. An apparatus for optimized generation of facts, the apparatus comprising:
-
at least one processor; and a computer-readable storage medium having computer-executable instructions stored thereon which, when executed on the at least one processor, cause the apparatus to; receive a request for one or more facts regarding an item identified in a product catalog, the request including a product identifier associated with the item identified in the product catalog, determine, based at least in part upon historical request data, a probability that one or more additional facts regarding the item identified in the product catalog will be requested following the request for the one or more facts; determine, based at least in part upon historical cost data, an estimated cost for generating the one or more additional facts, the estimated cost comprising one or more of an estimated time, memory usage, processing capacity, or network bandwidth required to generate the one or more additional facts; speculatively generate the one or more additional facts regarding the item identified in the product catalog based upon the probability that the one or more additional facts regarding the item identified in the product catalog will be requested; and update the historical cost data with an actual cost to generate the one or more additional facts. - View Dependent Claims (7, 8, 9, 10, 19, 20)
-
Specification