IP Library Granted Patent US 10,656,862
Granted Patent B1
US 10,656,862 · App. 15/969,046 · Granted May 19, 2020

Systems and methods for implementing space consolidation and space expansion in a horizontally federated cluster

Inventors: Paresh Chatterjee (Fremont, CA); Raghavan Sowrirajan (Fremont, CA); Jomy Jose Maliakal (Duluth, GA); Sharon Samuel Enoch (Dacula, GA)
Assignee: Amzetta Technologies, LLC
G06F3/0647G06F3/067G06F3/0608G06F12/1009G06F2212/1044G06F2212/657
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 10,656,862
App. No.
15/969,046
Granted
May 19, 2020
Kind
B1
Abstract

Systems and methods for consolidating space in a storage cluster are described herein. An example method can include striping a volume across a plurality of storage nodes, and maintaining a cluster volume table (CVT) storing information regarding distribution of a plurality of logical blocks across the storage nodes. The CVT can include a plurality of entries, where each of the entries can include information identifying a respective owner storage node of a respective logical block. The method can also include adding a new storage node to the storage cluster, and transferring data for one or more logical blocks from each of the storage nodes to the new storage node based on respective usage ratios of the storage nodes. The method can further include updating the CVT to identify the new storage node as owner storage node of the one or more logical blocks transferred to the new storage node.

Claims (30)

1. A computer-implemented method for consolidating space in a storage cluster, comprising:

striping a volume across a plurality of storage nodes, wherein a plurality of logical blocks of the volume are distributed to the storage nodes;

maintaining a cluster volume table (CVT) storing information regarding distribution of the logical blocks across the storage nodes, wherein the CVT comprises a plurality of entries, and wherein each of the entries in the CVT comprises information identifying a respective owner storage node of a respective logical block;

adding a new storage node to the storage cluster, wherein a portion of the new storage node's storage capacity is reserved for space consolidation;

transferring data for one or more logical blocks from each of the storage nodes to the new storage node based on respective usage ratios of the storage nodes;

updating the CVT to identify the new storage node as owner storage node of the one or more logical blocks transferred to the new storage node;

receiving a list of logical blocks eligible for transfer from the storage nodes to the new storage node, wherein a logical block eligible for transfer is not associated with a plurality of snapshot versions; and

populating a transfer array comprising the list of logical blocks eligible for transfer.

2. The computer-implemented method of claim 1 , further comprising scanning the storage nodes to determine the respective usage ratios of the storage nodes.

3. The computer-implemented method of claim 2 , further comprising normalizing the respective usage ratios of the storage nodes.

4. The computer-implemented method of claim 3 , wherein the data for one or more logical blocks is transferred to the new storage node based on the normalized respective usage ratios of the storage nodes.

5. The computer-implemented method of claim 1 , wherein the transfer array comprises a plurality of non-contiguous logical blocks.

6. The computer-implemented method of claim 1 , further comprising locking a particular logical block to be transferred to the new storage node, wherein the data for one or more logical blocks transferred to the new storage node comprises data for the particular logical block.

7. The computer-implemented method of claim 6 , further comprising:

notifying the storage nodes that the new storage node is the owner storage node for the particular logical block; and

unlocking the particular logical block.

8. The computer-implemented method of claim 1 , further comprising redistributing a plurality of unallocated logical blocks based on the respective usage ratios of the storage nodes.

9. The computer-implemented method of claim 3 , further comprising redistributing a plurality of unallocated logical blocks based on the normalized respective usage ratios of the storage nodes.

10. The computer-implemented method of claim 1 , wherein a first portion of the new storage node's storage capacity is reserved for space consolidation and a second portion of the new storage node's storage capacity is reserved for space redistribution.

11. The computer-implemented method of claim 1 , wherein each of the entries in the CVT further comprises information identifying a respective owner storage node for remotely-owned logical block or a pointer to a system volume table (SVT) for a locally-owned logical block.

12. A non-transitory computer-readable recording medium having computer-executable instructions stored thereon for consolidating space in a storage cluster that, when executed by a storage system computer, cause the storage system computer to:

stripe a volume across a plurality of storage nodes, wherein a plurality of logical blocks of the volume are distributed to the storage nodes;

maintain a cluster volume table (CVT) storing information regarding distribution of the logical blocks across the storage nodes, wherein the CVT comprises a plurality of entries, and wherein each of the entries in the CVT comprises information identifying a respective owner storage node of a respective logical block;

add a new storage node to the storage cluster, wherein a portion of the new storage node's storage capacity is reserved for space consolidation;

transfer data for one or more logical blocks from each of the storage nodes to the new storage node based on respective usage ratios of the storage nodes;

update the CVT to identify the new storage node as owner storage node of the one or more blocks transferred to the new storage node;

receive a list of logical blocks eligible for transfer from the storage nodes to the new storage node, wherein a logical block eligible for transfer is not associated with a plurality of snapshot versions; and

populating a transfer array comprising the list of logical blocks eligible for transfer.

13. The non-transitory computer-readable recording medium of claim 12 , having further computer-executable instructions stored thereon that, when executed by the storage system computer, cause the storage system computer to lock a particular logical block to be transferred to the new storage node, wherein the data for one or more logical blocks transferred to the new storage node comprises data for the particular logical block.

14. The non-transitory computer-readable recording medium of claim 12 , having further computer-executable instructions stored thereon that, when executed by the storage system computer, cause the storage system computer to redistribute a plurality of unallocated logical blocks.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2020
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC,
To: AMZETTA TECHNOLOGIES, LLC,
Reel/Frame 053007/0151 →
CHANGE OF NAME Recorded Jun 22, 2020
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 053007/0233 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2020
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: AMZETTA TECHNOLOGIES, LLC
Reel/Frame 051758/0763 →
CONVERSION Recorded Jan 30, 2020
From: AMERICAN MEGATRENDS, INC.
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 052148/0680 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2018
From: SOWRIRAJAN, RAGHAVAN; MALIAKAL, JOMY JOSE; ENOCH, SHARON SAMUEL
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 047680/0125 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2018
From: CHATTERJEE, EXECUTRIX OF THE ESTATE OF PARESH CHATTERJEE, UDITA
To: AMERICAN MEGATRENDS, INC.
Reel/Frame 047680/0193 →
Cited By (1)
US 12,229,023