Layered sharding
AssigneeMicrosoft Technology Licensing, LLC
InventorsSuresh Chandra PIPPARI, Abhishek K. TIWARI, Varun CHAWLA, Karthik UTHAMAN, Ashok Kumar NANDOORI, Matthew David DEVUYST
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Technology Licensing, LLC
InventorsSuresh Chandra PIPPARI, Abhishek K. TIWARI, Varun CHAWLA, Karthik UTHAMAN, Ashok Kumar NANDOORI, Matthew David DEVUYST
Estimating the term…
Disclosed layered sharding for multi-tenant services outperforms current sharding techniques, to enhance the reliability and scalability of services. A sharding controller assigns clients and service instances to shards in each of multiple layers. Each layer can handle requests for any client, with assignments differing among the layers, at least for clients and may also for service instances. This minimize adverse effects on clients assigned to a shard with a noisy neighbor, because there are other layers (with a high probability) in which they are not sharing a shard with that noisy neighbor. As an example, with 40 service instances with 4 per shard, and shuffle sharding assignment with 40C4=91390 shards, the likelihood of a client sharing a shard with the same noisy neighbor in all layers is O(10−8) for two layers, dropping rapidly to O(10−17) for four layers.
A system comprising:
A computer-implemented method comprising:
A computer storage device having computer-executable instructions stored thereon, which, on execution by a computer, cause the computer to perform operations comprising:
Dependencies are inferred from the claim text.