Partitioning data access requests
First Claim
Patent Images
1. A method for partitioning, comprising:
- receiving a data access request, said data access request includes one or more variables in a first format;
determining one or more data stores of a set of data stores to service said data access request, said step of determining includes accessing one or more mappings of said one or more variables to said set of data stores and using said mappings to evaluate partition expressions for said data stores; and
sending information for said data access request to said one or more data stores determined to service said data access request.
5 Assignments
0 Petitions
Accused Products
Abstract
A system with multiple data stores receives a data access request that includes one or more variables. The system determines which data store can service the data access request by using mappings of the variables to the data stores in order to evaluate whether partition expressions for the data stores overlap with the variables in the data access request. The data access request is then sent to the data stores corresponding to the partition expressions that overlap. The partition expressions can have one or more variables. The present invention supports multi-dimensional partitioning.
-
Citations
46 Claims
-
1. A method for partitioning, comprising:
-
receiving a data access request, said data access request includes one or more variables in a first format;
determining one or more data stores of a set of data stores to service said data access request, said step of determining includes accessing one or more mappings of said one or more variables to said set of data stores and using said mappings to evaluate partition expressions for said data stores; and
sending information for said data access request to said one or more data stores determined to service said data access request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:
-
receiving a data access request, said data access request includes one or more variables in a first format;
determining one or more data stores of a set of data stores to service said data access request, said step of determining includes accessing one or more mappings of said one or more variables to said set of data stores and using said mappings to evaluate partition expressions for said data stores; and
sending information for said data access request to said one or more data stores determined to service said data access request. - View Dependent Claims (22, 23, 24)
-
-
25. An apparatus that can partition, comprising:
-
one or more storage devices; and
one or more processors in communication with said one or more storage devices, said one or more processors perform a method comprising;
accessing a data access request, said data access request includes one or more variables in logical object class format, determining one or more data stores of a set of data stores to service said data access request, said step of determining includes accessing one or more mappings of said one or more variables to said set of data stores and using said mappings to evaluate partition expressions for said data stores, and sending information for said data access request to said one or more data stores determined to service said data access request. - View Dependent Claims (26, 27)
-
-
28. An apparatus that can partition a data access request, said data access request includes one or more variables in a first format, comprising:
-
means for determining one or more data stores of a set of data stores to service said data access request, said step of determining includes accessing one or more mappings of said one or more variables to said set of data stores and using said mappings to evaluate partition expressions for said data stores; and
means for sending said data access request to said one or more data stores determined to service said data access request.
-
-
29. A method for partitioning, comprising:
-
receiving a filter expression for a data access request;
determining whether said filter expression overlaps with one or more partition expressions if said filter expression is a simple expression;
determining whether child sub-filters of said filter expression overlap with said one or more partition expressions and combining results of said determination of whether child sub-filters overlap to determine whether said filter expression overlaps with said one or more partition expressions, if said filter expression is a composite expression; and
providing information for said filter expression to one or more data sources associated with one or more partition expressions that overlap with said filter expression. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:
-
receiving a filter expression for a data access request;
determining whether said filter expression overlaps with one or more partition expressions if said filter expression is a simple expression;
determining whether child sub-filters of said filter expression overlap with said one or more partition expressions and combining results of said determination of whether child sub-filters overlap to determine whether said filter expression overlaps with said one or more partition expressions, if said filter expression is a composite expression; and
providing information for said filter expression to one or more data sources associated with one or more partition expressions that overlap with said filter expression. - View Dependent Claims (39, 40, 41)
-
-
42. A method for partitioning, comprising:
-
receiving a filter expression for a data access request;
accessing a partition expressions for a first data source of a set of data sources;
performing a partition compare function using said filter expression and said partition expression to determine whether said filter expression overlaps with said partition expression, if said filter expression and said partition expression are both simple expressions;
performing said partition compare function by treating said filter expression as an input partition expression and treating said partition expression as an input filter expression in order to determine whether said filter expression overlaps said partition expression, if said partition expression is a composite expression; and
providing information for said filter expression to said first data source if said filter expression overlaps with said filter expression. - View Dependent Claims (43, 44, 45, 46)
-
Specification