Managing partitions in a scalable environment
AssigneeMicrosoft Technology Licensing, LLC
InventorsJu Wang, Bradley Gene Calder, Arild E. Skjolsvold
Life of this patent
Estimating the term…
Abstract
Systems and methods are provided that enable a general framework for partitioning application-defined jobs in a scalable environment. The general framework decouples partitioning of a job from the other aspects of the job. As a result, the effort required to define the application-defined job is reduced or minimized, as the user is not required to provide a partitioning algorithm. The general framework also facilitates management of masters and servers performing computations within the distributed environment.
Claims20
A system that includes a partition master server managing a plurality of other servers, the system comprising:
- one or more computer processors;
- and
- computer memory storing computer-useable instructions that are executable by the one or more computer processors for causing:
- the partition master server competing among the other servers for a lease on a storage object corresponding to a full namespace associated with a job;
- upon being granted the lease in response to competing for the lease, the partition master server making partition decisions for assigning partitions of work items associated with the job to partition servers from the plurality of other servers;
- obtaining a lease on a partition table that tracks partition assignments based on the partition decisions made for the partition servers;
- the partition master server populating the partition table with partition assignments based on the partition decisions made by the partition master server for the partition servers;
- and
- the partition master server ensuring that partition servers are serving assigned partitions corresponding to the work items associated with the job based on the partition assignments specified in the partition table.
A method implemented by a system that includes a partition master server managing a plurality of other servers, the system further comprising one or more computer processors and computer memory storing computer-useable instructions that are executable by the one or more computer processors for implementing the method, the method comprising:
- the partition master server competing among the other servers for a lease on a storage object corresponding to a full namespace associated with a job;
- upon being granted the lease in response to competing for the lease, the partition master server making partition decisions for assigning partitions of work items associated with the job to partition servers from the plurality of other servers;
- obtaining a lease on a partition table that tracks partition assignments based on the partition decisions made for the partition servers;
- the partition master server populating the partition table with partition assignments based on the partition decisions made by the partition master server for the partition servers;
- and
- the partition master server ensuring that partition servers are serving assigned partitions corresponding to the work items associated with the job based on the partition assignments specified in the partition table.
Dependencies are inferred from the claim text.