Patent ID: 9355134
Filing Date: 2016-05-31
CPC Classification: G06F

Claim Text:
1. A non-transitory computer-readable medium embodying a program executable in a computing device, wherein when executed the program causes the computing device to at least: maintain a database that is stored in a plurality of physical data stores through horizontal partitioning, the database including a plurality of data items; assign individual ones of the plurality of data items to individual ones of a plurality of first buckets by generating a respective hash code from a standardized portion of the individual one of the plurality of data items and determining the respective hash code modulo the number of the plurality of first buckets, wherein a first fixed number of the plurality of first buckets are stored in corresponding ones of the plurality of physical data stores according to a mapping; reassign the individual ones of the plurality of data items to individual ones of a plurality of second buckets by determining the respective hash code modulo the number of the plurality of second buckets, the number of the plurality of second buckets being a multiple of the number of first buckets in the plurality of first buckets, a multiple of a current number of physical data stores, and a multiple of an increased number of physical data stores; and update the mapping to map a second fixed number of the plurality of second buckets to corresponding ones of the plurality of physical data stores, wherein the plurality of data items are unmoved between the plurality of physical data stores by updating the mapping.