Flexible partitioning of data
First Claim
1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program having instructions that perform a method comprising:
- identifying one of a plurality of versions of mapping metadata concurrently available to a data management application, the plurality of versions of mapping metadata specifying a respective list of at least some of a plurality of partitions of a data store and a respective approach for mapping a key value to one of the at least some of the partitions;
determining one of the plurality of partitions by mapping an attribute of a data item, as the key value, to the one of the plurality of partitions according to the respective approach for mapping the key value corresponding to the identified one of the plurality of version of mapping metadata;
inserting the data item in the one of the plurality of partitions;
storing an identifier corresponding to the one of the plurality of partitions in response to a loading of the data item from the one of the plurality of partitions;
obtaining a request to update the data item; and
updating the data item in the one of the plurality of partitions in response to the request and based at least in part on the identifier.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are various embodiments of a flexible application-level partitioning scheme for data storage components. A data store is accessible by one or more computing devices and includes multiple partitions. One of the partitions is identified by mapping a key value of a data item to one of the partitions according to one of multiple versions of mapping metadata. Each of the versions of mapping metadata specifies a respective list of some or all of the partitions and an approach for mapping the key value to one of the partitions. The data item is inserted into the identified partition.
-
Citations
20 Claims
-
1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program having instructions that perform a method comprising:
-
identifying one of a plurality of versions of mapping metadata concurrently available to a data management application, the plurality of versions of mapping metadata specifying a respective list of at least some of a plurality of partitions of a data store and a respective approach for mapping a key value to one of the at least some of the partitions; determining one of the plurality of partitions by mapping an attribute of a data item, as the key value, to the one of the plurality of partitions according to the respective approach for mapping the key value corresponding to the identified one of the plurality of version of mapping metadata; inserting the data item in the one of the plurality of partitions; storing an identifier corresponding to the one of the plurality of partitions in response to a loading of the data item from the one of the plurality of partitions; obtaining a request to update the data item; and updating the data item in the one of the plurality of partitions in response to the request and based at least in part on the identifier. - View Dependent Claims (2)
-
-
3. A system, comprising:
-
at least one computing device; a data store accessible by the at least one computing device and including a plurality of partitions; and wherein the at least one computing device is configured to implement a method, comprising; identifying, in response to a request to perform an action with respect to the data store, one of a plurality of versions of mapping metadata concurrently available to a data management application, the plurality of versions of mapping metadata specifying a respective list of at least some of the plurality of partitions and an approach for mapping a key value to one of the at least some of the partitions; and performing, after the identifying, the action according to the one of the plurality of versions of mapping metadata. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method, comprising:
-
identifying, by at least one computing device, one of a plurality of versions of mapping metadata concurrently available to a data management application, the plurality of versions of mapping metadata specifying a respective list of at least some of a plurality of partitions of a data store and an approach for mapping a key value to one of the at least some of the partitions; determining, by the at least one computing device, one of the plurality of partitions by mapping an attribute of a data item, as the key value, to the one of the plurality of partitions according to the approach for mapping the key value; and inserting, by the at least one computing device, the data item in the one of the plurality of partitions. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification