IP Library Granted Patent US 11,068,184
Granted Patent B2
US 11,068,184 · App. 16/507,359 · Granted Jul 20, 2021

Method, device, and computer program product for managing a storage system

Inventors: Ruiyong Jia (Beijing, CN); Lifeng Yang (Beijing, CN); Jian Gao (Beijing, CN); Xinlei Xu (Beijing, CN); Yousheng Liu (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0644G06F3/0604G06F3/0683G06F16/903
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,068,184
App. No.
16/507,359
Granted
Jul 20, 2021
Kind
B2
Abstract

Techniques for managing a storage system involve: determining a size of a data information indicating area in the storage system, the data information indicating area indicating content information related to a slice group including multiple slices, the slice group being the smallest data granularity for storage processor access associated with the storage system; determining a correspondence between the size of the data information indicating area and a size of the slice group; and determining, based on the size of the data information indicating area and the correspondence, the size of the slice group. Accordingly, bandwidth of a communication message interface which interconnects storage processors and is utilized heavily by system components can be saved. Additionally, cross-storage processor message communication for access to data information indicating area from input and output paths can be eliminated. Furthermore, communication message interface resource contention can be relieved, and overall system performance can be improved.

Claims (25)

1. A method for managing a storage system having a first storage processor and a second storage processor, comprising:

determining a size of a data information indicating area in the storage system, the data information indicating area indicating content information related to a slice group including multiple slices of uniform size, a slice being a smallest data granularity that a storage processor may provision to a LUN (Logical Unit) associated with the storage system, wherein data information indicating areas have different sizes for different slice groups;

calculating, based on the size of the data information indicating area and a predetermined correspondence relationship, a size of the slice group; and

in response to the first storage processor receiving a write request to write a portion of the slice group, (i) obtaining a lock on the data information indicating area and (ii) executing the write without contention from the second storage processor for the data information indicating area.

2. The method according to claim 1 , wherein determining a size of a data information indicating area in the storage system comprises:

determining the size of the data information indicating area as a size of one or more sectors.

3. The method according to claim 1 , wherein the content information indicates a zero-filling status of data in the slice group.

4. A device for managing a storage system, comprising a first storage processor and a second storage processor, each of the first storage processor and the second storage processor including:

at least one processing unit; and

at least one memory coupled to the at least one processing unit and storing instructions to be executed by the at least one processing unit, the instructions, when being executed by the at least one processing unit, causing the device to perform acts comprising:

determining a size of a data information indicating area in the storage system, the data information indicating area indicating content information related to a slice group including multiple slices of uniform size, a slice being the smallest data granularity that a storage processor may provision to a LUN (Logical Unit) for storage processor access associated with the storage system, wherein data information indicating areas have different sizes for different slice groups;

calculating, based on the size of the data information indicating area and a predetermined correspondence relationship, a size of the slice group; and

in response to the first storage processor receiving a write request to write a portion of the slice group, (i) obtaining a lock on the data information indicating area and (ii) executing the write without contention from the second storage processor for the data information indicating area.

5. The device according to claim 4 , determining a size of a data information indicating area in the storage system comprises:

determining the size of the data information indicating area as a size of one or more sectors.

6. The device according to claim 4 , wherein the content information indicates a zero-filling status of data in the slice group.

7. A computer program product having a non-transitory computer readable medium which stores a set of instructions to manage a storage system having a first storage processor and a second storage processor; the set of instructions, when carried out by computerized circuitry of the storage system, causing the computerized circuitry to perform a method of:

determining a size of a data information indicating area in the storage system, the data information indicating area indicating content information related to a slice group including multiple slices of uniform size, a slice being a smallest data granularity that a storage processor may provision to a LUN (Logical Unit) associated with the storage system, wherein data information indicating areas have different sizes for different slice groups;

calculating, based on the size of the data information indicating area and a predetermined correspondence relationship, a size of the slice group; and

in response to the first storage processor receiving a write request to write a portion of the slice group, (i) obtaining a lock on the data information indicating area and (ii) executing the write without contention from the second storage processor for the data information indicating area.

8. The computer program product of claim 7 wherein the first storage processor of the storage system operates in parallel to the second storage processor of the storage system for load balancing input/output (IO) operations on behalf of a set of host computers; and wherein the method further comprises:

performing, by the first storage processor, a zerofilling bitmap access operation to update a zerofilling bitmap which supports variable-sized data information indicating areas, the zerofilling bitmap access operation updating the zerofilling bitmap with eliminated cross-storage processor contention.

9. The method of claim 3 , and wherein calculating the size of the slice group includes assigning a number of bytes of data represented by each bit of the data information indicating area.

10. The method of claim 3 , further comprising, in response to the first storage processor receiving a read request to read a second portion of the slice group, returning all zeroes in response to the read request based on the data information indicating area indicating that the second portion of the slice group is all zeroes.

11. The method of claim 1 , wherein the first storage processor is an exclusive owner of the portion of the slice group, and wherein acquiring the lock is performed by the first storage processor without communicating the lock to the second storage processor.

Assignments (9)
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 (053311/0169) Recorded Jun 23, 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 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 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 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 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 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
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 053311/0169 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
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 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2019
From: JIA, RUIYONG; YANG, LIFENG; GAO, JIAN; XU, XINLEI; LIU, YOUSHENG
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 050207/0727 →