IP Library Granted Patent US 10,936,229
Granted Patent B1
US 10,936,229 · App. 15/664,564 · Granted Mar 2, 2021

Simulating large drive count and drive size system and method

Inventors: Ashok Tamilarasan (Shrewsbury, MA); Dmitri Prilepski (Upton, MA)
Assignee: EMC IP Holding Company, LLC
G06F3/0644G06F3/0604G06F3/067G06F3/0664
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,936,229
App. No.
15/664,564
Granted
Mar 2, 2021
Kind
B1
Abstract

A method, computer program product, and computer system for forming, by a computing device, one or more virtual storage arrays using one or more storage processor virtual machines. A storage stack may be run inside the one or more storage processor virtual machines. One or more storage device drives of the one or more virtual storage arrays may be simulated as files.

Claims (30)

1. A computer-implemented method comprising:

forming, by a computing device, one or more virtual storage arrays using one or more storage processor virtual machines;

running a storage stack inside the one or more storage processor virtual machines; and

presenting one or more files as one or more physical storage device drives of the one or more virtual storage arrays, wherein the files include thin files with reported storage capacities representative of the storage capacities of the one or more physical storage device drives and with actual storage capacities less than the storage capacities of the one or more physical storage device drives, wherein the files include configuration files configured to present one or more storage device types for the one or more physical storage device drives, the one or more storage device types including one or more of a solid-state drive and a hard disk drive for the one or more physical storage device drives; and

generating one or more tracking files for one or more data files stored on the one or more files, wherein the one or more tracking files are configured to indicate if one or more changes are made to the one or more data files and to identify a host that made the one or more changes to the one or more data files.

2. The computer-implemented method of claim 1 wherein the files presented as the one or more physical storage device drives are stored in a server.

3. The computer-implemented method of claim 1 further comprising consuming the files at a first layer of the storage stack, wherein the first layer is lower than at least one other layer in the storage stack.

4. The computer-implemented method of claim 3 further comprising exposing the files as the one or more storage device drives to a second layer of the storage stack, wherein the second layer is higher than at least the first layer in the storage stack.

5. The computer-implemented method of claim 1 further comprising hosting the files locally on the one or more storage processor virtual machines.

6. The computer-implemented method of claim 1 further comprising hosting the files on one or more volumes exported by a backend datastore.

7. The computer-implemented method of claim 1 wherein the one or more tracking files include a unique indicator associated with each portion of a plurality of portions of the one or more data files.

8. A computer program product residing on a non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed across one or more processors, causes at least a portion of the one or more processors to perform operations comprising:

forming one or more virtual storage arrays using one or more storage processor virtual machines;

running a storage stack inside the one or more storage processor virtual machines; and

presenting one or more files as one or more physical storage device drives of the one or more virtual storage arrays, wherein the files include thin files with reported storage capacities representative of the storage capacities of the one or more physical storage device drives and with actual storage capacities less than the storage capacities of the one or more physical storage device drives, wherein the files include configuration files configured to present one or more storage device types for the one or more physical storage device drives, the one or more storage device types including one or more of a solid-state drive and a hard disk drive for the one or more physical storage device drives; and

generating one or more tracking files for one or more data files stored on the one or more files, wherein the one or more tracking files are configured to indicate if one or more changes are made to the one or more data files and to identify a host that made the one or more changes to the one or more data files.

9. The computer program product of claim 8 wherein the files presented as the one or more physical storage device drives are stored in a server.

10. The computer program product of claim 8 wherein the operations further comprise consuming the files at a first layer of the storage stack, wherein the first layer is lower than at least one other layer in the storage stack.

11. The computer program product of claim 10 wherein the operations further comprise exposing the files as the one or more storage device drives to a second layer of the storage stack, wherein the second layer is higher than at least the first layer in the storage stack.

12. The computer program product of claim 8 wherein the operations further comprise hosting the files locally on the one or more storage processor virtual machines.

13. The computer program product of claim 8 wherein the operations further comprise hosting the files on one or more volumes exported by a backend datastore.

14. A computing system including one or more hardware processors and one or more memories configured to perform operations comprising:

forming one or more virtual storage arrays using one or more storage processor virtual machines;

running a storage stack inside the one or more storage processor virtual machines; and

presenting one or more files as one or more physical storage device drives of the one or more virtual storage arrays, wherein the files include thin files with reported storage capacities representative of the storage capacities of the one or more physical storage device drives and with actual storage capacities less than the storage capacities of the one or more physical storage device drives, wherein the files include configuration files configured to present one or more storage device types for the one or more physical storage device drives, the one or more storage device types including one or more of a solid-state drive and a hard disk drive for the one or more physical storage device drives; and

generating one or more tracking files for one or more data files stored on the one or more files, wherein the one or more tracking files are configured to indicate if one or more changes are made to the one or more data files and to identify a host that made the one or more changes to the one or more data files.

15. The computer program product of claim 8 wherein the files presented as the one or more physical storage device drives are stored in a server.

16. The computing system of claim 14 wherein the operations further comprise consuming the files at a first layer of the storage stack, wherein the first layer is lower than at least one other layer in the storage stack.

17. The computing system of claim 16 wherein the operations further comprise exposing the files as the one or more storage device drives to a second layer of the storage stack, wherein the second layer is higher than at least the first layer in the storage stack.

18. The computing system of claim 14 wherein the operations further comprise hosting the files at least one of locally on the one or more storage processor virtual machines and on one or more volumes exported by a backend datastore.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (043775/0082) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060958/0468 →
RELEASE OF SECURITY INTEREST AT REEL 043772 FRAME 0750 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0606 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Sep 6, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043772/0750 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Sep 6, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 043775/0082 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 31, 2017
From: TAMILARASAN, ASHOK; PRILEPSKI, DMITRI
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 043146/0416 →