IP Library Granted Patent US 11,442,637
Granted Patent B1
US 11,442,637 · App. 17/372,824 · Granted Sep 13, 2022

Managing drive space among different data services environments within a storage system

Inventors: Yuval Harduf (Yahud, IL); Peter J. McCann (Mason, NH)
Assignee: EMC IP Holding Company LLC
G06F3/0631G06F3/0607G06F3/067G06F3/0619G06F3/0689G06F9/4406
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 11,442,637
App. No.
17/372,824
Granted
Sep 13, 2022
Kind
B1
Abstract

A technique manages drive space within a storage system having a main data services environment configured to perform data storage operations on behalf of a set of hosts and a simple data services environment configured to load the main data services environment. The technique involves, while the simple data services environment is running on the storage system, using the simple data services environment to load the main data services environment on to the storage system. The technique further involves, after the main data services environment is loaded on to the storage system, providing a drive space communication from the simple data services environment to the main data services environment. The technique further involves receiving, by the simple data services environment, allocation of drive space from the main data services environment in response to the drive space communication.

Claims (45)

1. A method of managing drive space within a storage system having a main data services environment configured to perform data storage operations on behalf of a set of hosts and a simple data services environment configured to load the main data services environment, the method comprising:

while the simple data services environment is running on the storage system, using the simple data services environment to load the main data services environment on to the storage system;

after the main data services environment is loaded on to the storage system, providing a drive space communication from the simple data services environment to the main data services environment; and

receiving, by the simple data services environment, allocation of drive space from the main data services environment in response to the drive space communication.

2. A method as in claim 1 wherein using the simple data services environment to load the main data services environment includes:

after the simple data services environment is loaded on to the storage system, performing a bootstrap operation to load the main data services environment.

3. A method as in claim 2 wherein using the simple data services environment to load the main data services environment further includes:

after the bootstrap operation is performed, running the main data services environment on the storage system to enable the main data services environment to be responsive to drive space requests from the simple data services environment.

4. A method as in claim 1 wherein providing the drive space communication includes:

providing a drive space request that identifies a storage drive of the storage system and an amount of drive space to be allocated from the storage drive.

5. A method as in claim 4 wherein providing the drive space request includes:

sending a request signal from the simple data services environment to the main data services environment, the request signal including an identifier that uniquely identifies a particular storage drive among a plurality of storage drives of the storage system and an amount parameter that specifies the amount of drive space to be allocated from the particular storage drive.

6. A method as in claim 5 wherein the plurality of storage drives of the storage system includes a set of faster access speed solid state storage devices and a set of slower access speed solid state storage devices; and

wherein the identifier identifies, as the particular storage drive, a particular slower access speed solid state storage device among the set of slower access speed solid state storage devices.

7. A method as in claim 5 wherein the main data services environment is configured to allocate drive space from the plurality of storage drives in N gigabyte chunks, N being a positive integer; and

wherein the amount parameter specifies, as the amount of drive space, an integer multiple of N gigabyte chunks.

8. A method as in claim 1 wherein receiving the allocation of drive space includes:

acquiring storage space, which was previously used by the main data services environment, from the main data services environment for subsequent use by the simple data services environment.

9. A method as in claim 8 wherein receiving the allocation of drive space further includes:

after the drive space communication is provided from the simple data services environment to the main data services environment and prior to acquiring the storage space, waiting for the main data services environment to relocate data from the storage space to other storage space.

10. A method as in claim 8 wherein the simple data services environment is configured to utilize a simple data services environment storage space;

wherein the main data services environment is configured to utilize a main data services environment storage space; and

wherein acquiring the storage space from the main data services environment includes:

adding, as the storage space from the main data services environment, non-volatile memory that is borrowed from the main data services environment storage space to the simple data services environment storage space.

11. A method as in claim 10 wherein the simple data services environment maintains simple data services environment metadata to manage the simple data services environment storage space; and

wherein the method further comprises:

updating the simple data services environment metadata to enable the simple data services environment to access the non-volatile memory that is borrowed from the main data services environment storage space while the main data services environment is inoperative.

12. A method as in claim 10 , further comprising:

after the simple data services environment storage space has utilized the non-volatile memory that is borrowed from the main data services environment storage space and that has been added to the simple data services environment storage space, removing the non-volatile memory from the simple data services environment storage space and returning the non-volatile memory to the main data services environment for further use by the main data services environment.

13. A method as in claim 1 , further comprising:

after receiving the allocation of drive space, forming a redundant array of independent disks (RAID) extent that includes the drive space among other drive spaces to provide fault tolerance to data stored within the RAID extent in accordance with a particular RAID protection scheme.

14. A method as in claim 1 , further comprising:

after receiving the allocation of drive space, writing trace data within the drive space for debugging storage system operation.

15. A method as in claim 1 , further comprising:

after receiving the allocation of drive space, assigning the drive space as standby spare space for use in data recovery.

16. Data storage equipment, comprising:

memory; and

control circuitry coupled to the memory, the memory storing instructions which, when carried out by the control circuitry, cause the control circuitry to manage drive space within a storage system having a main data services environment configured to perform data storage operations on behalf of a set of hosts and a simple data services environment configured to load the main data services environment by performing a method of:

while the simple data services environment is running on the storage system, using the simple data services environment to load the main data services environment on to the storage system,

after the main data services environment is loaded on to the storage system, providing a drive space communication from the simple data services environment to the main data services environment, and

receiving, by the simple data services environment, allocation of drive space from the main data services environment in response to the drive space communication.

17. A computer program product having a non-transitory computer readable medium which stores a set of instructions to manage drive space within a storage system having a main data services environment configured to perform data storage operations on behalf of a set of hosts and a simple data services environment configured to load the main data services environment; the set of instructions, when carried out by computerized circuitry, causing the computerized circuitry to perform a method of:

while the simple data services environment is running on the storage system, using the simple data services environment to load the main data services environment on to the storage system;

after the main data services environment is loaded on to the storage system, providing a drive space communication from the simple data services environment to the main data services environment; and

receiving, by the simple data services environment, allocation of drive space from the main data services environment in response to the drive space communication.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2021
From: HARDUF, YUVAL; MCCANN, PETER J.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 057078/0391 →
Cited By (2)
US 12,236,114 US 12,265,714