Low-latency query processor
First Claim
Patent Images
1. A central server apparatus comprising:
- a processor;
an application programming interface (API) module to receive and respond to a user query; and
at least one table to generate a histogram output signal identifying a plurality of component databases relevant to an ancestor-descendant relationship extracted from the user query;
wherein the central server apparatus is to submit a query to the plurality of component databases via a plurality of intermediary nodes selected according to a dynamically configured query plan, and to respond to the user query based on results generated by the plurality of component databases and received via the plurality of intermediary nodes; and
wherein each of the plurality of intermediary nodes comprises a cloud computing server;
the query plan specifying the plurality of intermediary nodes such that each intermediary node is directly coupled to no more than a predetermined maximum number of component databases; and
dynamically configuring the query plan to select the plurality of intermediate nodes as a function of load balancing and bandwidth optimization.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for implementing a low-latency query processor accommodating an arbitrary number of data rows with no column indexing. In an aspect, data is stored across a plurality of component databases, with no requirement to strictly allocate data to partitions based on row keys. A histogram table is provided to map object relationships identified in a user query to the component databases where relevant data is stored. A server processing the user query communicates with component databases via an intermediary module. The intermediary module may include intermediary nodes dynamically assigned to connect to the component databases to retrieve and process the queried data.
-
Citations
12 Claims
-
1. A central server apparatus comprising:
-
a processor; an application programming interface (API) module to receive and respond to a user query; and at least one table to generate a histogram output signal identifying a plurality of component databases relevant to an ancestor-descendant relationship extracted from the user query; wherein the central server apparatus is to submit a query to the plurality of component databases via a plurality of intermediary nodes selected according to a dynamically configured query plan, and to respond to the user query based on results generated by the plurality of component databases and received via the plurality of intermediary nodes; and wherein each of the plurality of intermediary nodes comprises a cloud computing server; the query plan specifying the plurality of intermediary nodes such that each intermediary node is directly coupled to no more than a predetermined maximum number of component databases; and dynamically configuring the query plan to select the plurality of intermediate nodes as a function of load balancing and bandwidth optimization. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method comprising:
-
receiving a user query through an application programming interface (API); identifying a plurality of component databases relevant to the user query by querying at least one table coupled to a central server, the plurality of component databases storing data corresponding to an ancestor-descendant relationship extracted from the user query; submitting a query for data to the plurality of component databases via a plurality of intermediary nodes selected according to a dynamically configured query plan; and responding to the user query through the API based on results generated by the at least one relevant component database and received via the plurality of intermediary nodes; wherein each of the plurality of intermediary nodes comprises a cloud computing server; the query plan specifying the plurality of intermediary nodes such that each intermediary node is directly coupled to no more than a predetermined maximum number of component databases; and dynamically configuring the query plan to select the plurality of intermediate nodes as a function of load balancing and bandwidth optimization. - View Dependent Claims (7, 8, 9)
-
-
10. A system comprising:
-
a processor; a central server to receive and respond to a user query; and a plurality of component databases; wherein the central server is to; access at least one table generating a histogram output signal identifying at least one of the plurality of component databases relevant to an ancestor-descendant relationship extracted from the user query by the central server; and submit a query to the plurality of component databases via a plurality of intermediary nodes selected according to a dynamically configured query plan; wherein each of the plurality of intermediary nodes comprises a cloud computing server; the query plan specifying the plurality of intermediary nodes such that each intermediary node is directly coupled to no more than a predetermined maximum number of component databases; and dynamically configuring the query plan to select the plurality of intermediate nodes as a function of load balancing and bandwidth optimization. - View Dependent Claims (11, 12)
-
Specification