IP Library › Granted Patent US 12,111,847
Granted Patent B2
US 12,111,847 · App. 17/301,277 · Granted Oct 8, 2024

System and method for structuring and accessing tenant data in a hierarchical multi-tenant environment

Inventors: Ilya Kompaniets (Sofia, BG); Ivan Rid (Sofia, BG); Serguei Beloussov (Costa del Sol, SG); Stanislav Protasov (Singapore, SG)
Assignee: Acronis International GmbH
G06F16/278G06F16/2246
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,111,847
App. No.
17/301,277
Granted
Oct 8, 2024
Kind
B2
Abstract

In a multi-tenant hierarchical data storage system, tenant nodes are organized into trees and subtrees including virtual shards and with tenant data on single shards. The system is configured to allow scalable parallel access by a plurality of tenant-users.

Claims (27)

1. A hierarchical multi-tenant storage system comprising:

a computer-readable storage medium configurable into shards;

a plurality of tenant nodes stored on the storage medium;

a plurality of child nodes accessible from the tenant nodes;

a plurality of physical shards on which tenant nodes and child nodes are located, the plurality of physical shards, the plurality of tenant nodes, and the plurality of child nodes forming a physical shard tree; and

a virtual shard tree separate from the physical shard tree including at least one virtual shard for storing child nodes, wherein the at least one virtual shard is generated by dividing a plurality of segments that form the plurality of physical shards as one or more partitions of the storage medium, wherein the virtual shard tree is generated by forming the physical shard tree, allocating the at least one virtual shard, and rebuilding the virtual shard tree for tenant data migration such that post-migration, the virtual shard tree includes at least two virtual shards, each of the at least two virtual shards having a respective virtual root located on a same physical shard and at least one of the at least two virtual shards spanning at least two physical nodes, and

wherein the tenant node has access to the plurality of child nodes stored on the at least one virtual shard.

2. The system of claim 1 wherein tenant data is allocated in trees giving access to child data and further comprising migrated tenant data.

3. The system of claim 2 further comprising a rebuilt tenant access tree.

4. The system of claim 1 wherein the data of at least one tenant is allocated to a single shard.

5. A computer implemented method of processing parallel access requests to tenant nodes in a hierarchical multi-tenant distributed data storage environment, the method comprising:

partitioning data storage by shards according to a physical shard tree, wherein each shard contains the data of a single tenant;

creating a hierarchical data access structure equal to a multi-tenant structure of a storage service, wherein each level of the hierarchical data access structure corresponds to an access level to all subsequent levels of the hierarchy;

wherein the lower level of the hierarchical data access structure corresponds to an access level to a single shard;

processing parallel data access requests, wherein each data access request is routed to a target shard in accordance with a hierarchical structure, and wherein data requests of a first tenant does not load shards of another tenant; and

generating a virtual shard tree separate from the physical shard tree, including by allocating at least one virtual shard and rebuilding the virtual shard tree for tenant data migration such that post-migration, the virtual shard tree includes at least two virtual shards, each of the at least two virtual shards having a respective virtual root located on a same physical shard and at east one of the at least two virtual shards spanning at least two physical nodes.

6. The method of claim 5 , wherein tenant data is allocated in trees giving access to child data and further comprising migrated tenant data.

7. The method of claim 6 , wherein the data of at least one tenant is allocated to a single shard.

8. The method of claim 5 , further comprising rebuilding a tenant access tree.

9. A method of configuring parallel access to tenant nodes in a hierarchical multi-tenant data storage environment wherein tenant nodes are stored on virtual shards, the method comprising:

generating a physical shard tree for the tenant nodes;

calculating a storage allocation configuration for tenant nodes using a bin-packing algorithm;

virtualizing at least one shard for storage of a tenant node including by dividing a plurality of segments that form a plurality of physical shards as one or more partitions of the storage environment and consistent with the calculated allocation configuration, wherein the tenant node has access to at least one child node stored on the virtualized at least one shard, wherein virtualizing includes generating a virtual shard tree separate from the physical shard tree, the virtual shard tree generated by allocating the virtualized at least one shard and rebuilding the virtual shard tree for tenant data migration such that post-migration, the virtual shard tree includes at least two virtual shards, each of the at least two virtual shards having a respective virtual root located on a same physical shard and at least one of the at least two virtual shards spanning at least two physical nodes; and

accepting simultaneous processing requests to access one or more tenant nodes on a virtual shard.

10. The method of claim 9 , wherein tenant data is allocated in trees giving access to child data and further comprising migrated tenant data.

11. The method of claim 10 , wherein the data of at least one tenant is allocated to a single shard.

12. The method of claim 9 , further comprising rebuilding a tenant access tree.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2024
From: KOMPANIETS, ILYA; RID, IVAN; BELOUSSOV, SERGUEI; PROTASOV, STANISLAV
To: ACRONIS INTERNATIONAL GMBH
Reel/Frame 068217/0968 →
Continuity (1)
Related Publication 20220318074A1 · Oct 6, 2022
Cited By (1)
US 12,561,343