Partitioning data access requests
First Claim
Patent Images
1. A method for partitioning, comprising:
- receiving a data access request from an Identity and Access System, said data access request includes a filter, said filter includes one or more variables in a first format;
determining one or more data stores of a plurality 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 plurality of data stores˜ and
using said mappings to evaluate partition expressions for said data stores, wherein using said mappings to evaluate partition expressions for said data stores includes determining whether said filter overlaps with said partition expressions based on said mappings by performing a partition compare function using said filter and a first partition expression to determine whether said filter overlaps with said first partition expression if said filter and said first partition expression are both simple expressions and performing said partition compare function by treating said filter as an input partition expression and treating said first partition expression as an input filter in order to determine whether said filter overlaps said first partition expression if said first partition expression is a composite expression, and wherein said plurality of data stores comprises at least one relational database and at least one Lightweight Directory Access Protocol (LDAP) directory; 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.
486 Citations
21 Claims
-
1. A method for partitioning, comprising:
- receiving a data access request from an Identity and Access System, said data access request includes a filter, said filter includes one or more variables in a first format;
determining one or more data stores of a plurality 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 plurality of data stores˜ and
using said mappings to evaluate partition expressions for said data stores, wherein using said mappings to evaluate partition expressions for said data stores includes determining whether said filter overlaps with said partition expressions based on said mappings by performing a partition compare function using said filter and a first partition expression to determine whether said filter overlaps with said first partition expression if said filter and said first partition expression are both simple expressions and performing said partition compare function by treating said filter as an input partition expression and treating said first partition expression as an input filter in order to determine whether said filter overlaps said first partition expression if said first partition expression is a composite expression, and wherein said plurality of data stores comprises at least one relational database and at least one Lightweight Directory Access Protocol (LDAP) directory; 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)
- receiving a data access request from an Identity and Access System, said data access request includes a filter, said filter includes one or more variables in a first format;
-
16. 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 from an Identity and Access System, said data access request includes a filter, said filter includes one or more variables in a first format;
determining one or more data stores of a plurality 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 plurality of data stores˜ and
using said mappings to evaluate partition expressions for said data stores, wherein using said mappings to evaluate partition expressions for said data stores includes determining whether said filter overlaps with said partition expressions based on said mappings by performing a partition compare function using said filter and a first partition expression to determine whether said filter overlaps with said first partition expression if said filter and said first partition expression are both simple expressions and performing said partition compare function by treating said filter as an input partition expression and treating said first partition expression as an input filter in order to determine whether said filter overlaps said first partition expression if said first partition expression is a composite expression, and wherein said plurality of data stores comprises at least one relational database and at least one Lightweight Directory Access Protocol (LDAP) directory; 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 (17, 18)
- receiving a data access request from an Identity and Access System, said data access request includes a filter, said filter includes one or more variables in a first format;
-
19. 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 from an Identity and Access System, said data access request includes a filter, said filter includes one or more variables in logical object class format, determining one or more data stores of a plurality 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 plurality of data stores˜ and
using said mappings to evaluate partition expressions for said data stores, wherein using said mappings to evaluate partition expressions for said data stores includes determining whether said filter overlaps with said partition expressions based on said mappings by performing a partition compare function using said filter and a first partition expression to determine whether said filter overlaps with said first partition expression if said filter and said first partition expression are both simple expressions and performing said partition compare function by treating said filter as an input partition expression and treating said first partition expression as an input filter in order to determine whether said filter overlaps said first partition expression if said first partition expression is a composite expression, and wherein said plurality of data stores comprises at least one relational database and at least one Lightweight Directory Access Protocol (LDAP) directory, 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 (20)
- one or more storage devices; and
-
21. An apparatus that can partition a data access request, said data access request includes a filter, said filter includes one or more variables in a first format, comprising:
- means for determining one or more data stores of a plurality of data stores to service said data access request from an Identity and Access System, said step of determining includes accessing one or more mappings of said one or more variables to said plurality of data stores˜ and
using said mappings to evaluate partition expressions for said data stores, wherein using said mappings to evaluate partition expressions for said data stores includes determining whether said filter overlaps with said partition expressions based on said mappings by performing a partition compare function using said filter, and a first partition expression to determine whether said filter overlaps with said first partition expression if said filter and said first partition expression are both simple expressions and performing said partition compare function by treating said filter as an input partition expression and treating said first partition expression as an input filter in order to determine whether said filter overlaps said first partition expression if said first partition expression is a composite expression, and wherein said plurality of data stores comprises at least one relational database and at least one Lightweight Directory Access Protocol (LDAP) directory; and
means for sending said data access request to said one or more data stores determined to service said data access request.
- means for determining one or more data stores of a plurality of data stores to service said data access request from an Identity and Access System, said step of determining includes accessing one or more mappings of said one or more variables to said plurality of data stores˜ and
Specification