Method for performing a data query
First Claim
1. A method, executed in a computer system, for processing a data query, comprising:
- routing the data query to one of a plurality of nodes included in the computer system in accordance with partitioning characteristics of the data query and configuration information describing the computer system;
performing the data query using data stored in a data query cache and subsumption techniques to derive a result set from one or more previous result sets stored in the data query cache; and
storing the result set of the data query in the data query cache using highly redundant caching techniques.
4 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is a system for performing online data queries. The system for performing online data queries is a distributed computer system with a plurality of server nodes each fully redundant and capable of processing a user query request. Each server node includes a data query cache and other caches that may be used in performing data queries. The data query, as well as request allocation, is performed in accordance with an adaptive partitioning technique with a bias towards an initial partitioning scheme. Generic objects are created and used to represent business listings upon which the user may perform queries. Various data processing and integration techniques are included which enhance data queries. An update technique is used for synchronizing data updates as needed in updating the plurality of server nodes. A multi-media data transfer technique is used to transfer non-text or multi-media data between various components of the online query tool. Optimizations for searching, such as the common term optimization, are included for those commonly performed data queries. Also disclosed is a system for targeting advertisements that are displayed to a user of the system.
185 Citations
34 Claims
-
1. A method, executed in a computer system, for processing a data query, comprising:
-
routing the data query to one of a plurality of nodes included in the computer system in accordance with partitioning characteristics of the data query and configuration information describing the computer system;
performing the data query using data stored in a data query cache and subsumption techniques to derive a result set from one or more previous result sets stored in the data query cache; and
storing the result set of the data query in the data query cache using highly redundant caching techniques. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
associating a domain with each of the nodes in the computer system.
-
-
8. The method of claim 7, further comprising:
associating a server weight with each of the nodes.
-
9. The method of claim 8, wherein the routing the data query includes:
identifying one of the nodes based on a cost associated with processing the data query, the cost for each of the nodes being based on the domain and server weight associated with the node.
-
10. The method of claim 1, wherein the highly redundant caching techniques include storing at least one of the result set, one or more supersets of the result set, and one or more subsets of the result set in the data query cache.
-
11. The method of claim 1, wherein the partitioning characteristics include one of a zip code, a state, and an area code.
-
12. A computer system for processing a data query, comprising:
-
routing logic configured to;
receive a data query, and route the data query in accordance with partitioning characteristics of the data query and configuration information describing the computer system; and
a plurality of nodes, each of the nodes including a data query cache and being configured to;
process the data query using data stored in the data query cache to derive a result set from one or more previous result sets stored in the data query cache, and store the result set of the data query in the data query cache using highly redundant caching techniques. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
identify one of the nodes based on the domain and the server weight associated with the node.
-
-
21. The computer system of claim 12, wherein when using highly redundant caching techniques, each of the nodes is configured to:
store at least one of the result set, one or more supersets of the result set, and one or more subsets of the result set in the data query cache.
-
22. The computer system of claim 12, wherein the partitioning characteristics include at least one of a zip code, a state, and an area code.
-
23. A computer-readable medium that stores instructions that when executed by a computer system causes the computer system to perform a method for processing a data query, the computer-readable medium comprising:
-
instructions for transferring the data query to one of a plurality of nodes included in the computer system in accordance with partitioning characteristics of the data query and configuration information describing the computer system;
instructions for processing the data query using data stored in a data query cache to derive a result set from one or more previous result sets stored in the data query cache; and
instructions for storing the result set of the data query in the data query cache using highly redundant caching techniques. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
instructions for associating a domain with each of the nodes in the computer system.
-
-
30. The computer-readable medium of claim 29, further comprising:
instructions for associating a server weight with each of the nodes.
-
31. The computer-readable medium of claim 30, wherein the instructions for transferring the data query include:
instructions for selecting one of the nodes based on the domain and the server weight associated with the node.
-
32. The computer-readable medium of claim 23, wherein the highly redundant caching techniques include storing at least one of the result set, one or more supersets of the result set, and one or more subsets of the result set in the data query cache.
-
33. The computer-readable medium of claim 23, wherein the partitioning characteristics include one of a zip code, a state, and an area code.
-
34. A system for processing a data query, comprising:
-
means for routing the data query to one of a plurality of nodes included in the computer system in accordance with partitioning characteristics of the data query and configuration information describing the computer system;
means for performing the data query using data stored in a data query cache using subsumption techniques to derive a result set from one or more previous result sets stored in the data query cache; and
means for storing the result set of the data query in the data query cache using highly redundant caching techniques.
-
Specification