Patent Document ID: 9513806
Application ID: 14305987
Patent Flag: 1

Claim One:
1. A computer-implemented method for load balancing a scalable storage, the method comprising: receiving partitions of a plurality of partitions for assignment to servers of the scalable storage, the partitions having partition values of dimensions, each of the dimensions corresponding to one or more resources of the scalable storage; generating assignment plans that each describe which particular partitions of the partitions are to be assigned to which particular servers of the servers, the assignment plans being determined by different assignment heuristics applied to a common state of the scalable storage, wherein for each given assignment plan of the assignment plans the generating comprises: iteratively searching for a candidate server for the assignment of at least one given partition of the partitions to the candidate server using a search order, the search order being of at least one of the partitions and the servers, wherein the search order is determined by one of the different assignment heuristics that corresponds to the given assignment plan; selecting the candidate server in an iteration of the searching for the candidate server; and adding the candidate server to the given assignment plan for the assignment of the partitions to the servers; selecting one of the generated assignment plans for execution on the scalable storage based on analyzing the partition values in accordance with the assignments of the assignment plans; executing the selected one of the assignment plans on the scalable storage.