IP Library Granted Patent US 11,829,604
Granted Patent B2
US 11,829,604 · App. 17/020,033 · Granted Nov 28, 2023

Method, device and computer program products for storage management

Inventors: Hongpo Gao (Beijing, CN); Xinlei Xu (Beijing, CN); Lifeng Yang (Beijing, CN); Jianbin Kang (Beijing, CN); Geng Han (Beijing, CN); Zhenhua Zhao (Beijing, CN)
Assignee: EMC IP Holding Company LLC
G06F3/0619G06F3/0622G06F3/0653G06F3/0659G06F3/0683G06F11/1092
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,829,604
App. No.
17/020,033
Granted
Nov 28, 2023
Kind
B2
Abstract

Techniques for storage management involve determining, in response to a detection that a disk changes from an unavailable state to an available state, at least one candidate storage unit associated with the disk; acquiring historical access information about the at least one candidate storage unit, the historical information comprising information related to a write request directed to the at least one candidate storage unit when the disk is in the unavailable state; determining a target storage unit from the at least one candidate storage unit based on the historical access information; and rebuilding the target storage unit. Such techniques may, in a low-cost manner, improve rebuilding efficiency and reliability of a storage system.

Claims (32)

1. A method for storage management, comprising:

determining, in response to a detection that a disk changes from an unavailable state to an available state, a plurality of candidate RAID stripes associated with the disk, wherein each one of the candidate RAID stripes is built using a plurality of disk slices, wherein each one of the candidate RAID stripes is built at least in part using a respective unique one of a plurality of disk slices located on the disk, and wherein determining the plurality of candidate RAID stripes associated with the disk comprises identifying all RAID stripes built using any one of the plurality of disk slices located on the disk as the plurality of candidate RAID stripes;

requesting, by a first storage node from a second storage node, historical access information about the candidate RAID stripes, wherein the first storage node and the second storage node are peer storage nodes, wherein the candidate RAID stripes are accessible through both the first storage node and the second storage node, the historical information comprising information related to a write request directed to the candidate RAID stripes when the disk is in the unavailable state;

prior to receiving the historical access information about the candidate RAID stripes from the second storage node, in response to detecting that the second storage node is offline, setting, by the first storage node, access flags corresponding to all of the candidate RAID stripes, wherein the access flags corresponding to the candidate RAID stripes indicate whether the corresponding candidate RAID stripes were written while the disk was in the unavailable state, and wherein the set access flags corresponding to all of the candidate RAID stripes indicate that all of the candidate RAID stripes were written while the disk was in the unavailable state;

determining a target RAID stripe from the candidate RAID stripes based on the historical access information, wherein determining the target RAID stripe from the candidate RAID stripes is performed based at least in part on the access flags corresponding to all of the candidate RAID stripes; and

rebuilding the target RAID stripe.

2. The method of claim 1 , the method further comprising:

removing, for candidate RAID stripes other than the target RAID stripe in the plurality of candidate RAID stripes, disabling of a write operation when the disk is in the unavailable state.

3. The method of claim 1 , further comprising: acquiring, from the write request received when the disk is in the unavailable state, an identifier of a RAID stripe to which the write request is directed; and updating, according to a determination that the identifier corresponds to one of the candidate RAID stripes, an access flag corresponding to that one of the candidate RAID stripes, for indicating that the write request directed to that one of the candidate RAID stripes exists when the disk is in the unavailable state.

4. The method of claim 1 , further comprising:

removing, for the target RAID stripe and in response to completion of the rebuilding, disabling of a write operation when the disk is in the unavailable state.

5. The method of claim 1 , further comprising:

clearing, in response to completion of the rebuilding, an access flag directed to the target RAID stripe, the access flag indicating that a write request directed to the target RAID stripe exists when the disk is in the unavailable state.

6. An electronic device, comprising:

a processor; and

a memory coupled to the processor and storing instructions to be executed, wherein when executed by the processor, the instructions cause the electronic device to perform actions comprising:

determining, in response to a detection that a disk changes from an unavailable state to an available state, a plurality of candidate RAID stripes associated with the disk, wherein each one of the candidate RAID stripes is built using a plurality of disk slices, wherein each one of the candidate RAID stripes is built at least in part using a respective unique one of a plurality of disk slices located on the disk, and wherein determining the plurality of candidate RAID stripes associated with the disk comprises identifying all RAID stripes built using any one of the plurality of disk slices located on the disk as the plurality of candidate RAID stripes;

requesting, by a first storage node from a second storage node, historical access information about the candidate RAID stripes, wherein the first storage node and the second storage node are peer storage nodes, wherein the candidate RAID stripes are accessible through both the first storage node and the second storage node, the historical information comprising information related to a write request directed to the candidate RAID stripes when the disk is in the unavailable state;

prior to receiving the historical access information about the candidate RAID stripes from the second storage node, in response to detecting that the second storage node is offline, setting, by the first storage node, access flags corresponding to all of the candidate RAID stripes, wherein the access flags corresponding to the candidate RAID stripes indicate whether the corresponding candidate RAID stripes were written while the disk was in the unavailable state, and wherein the set access flags corresponding to all of the candidate RAID stripes indicate that all of the candidate RAID stripes were written while the disk was in the unavailable state;

determining a target RAID stripe from the candidate RAID stripes based on the historical access information; and

rebuilding the target storage unit.

7. The device of claim 6 , the actions further comprising:

removing, for candidate RAID stripes other than the target RAID stripe in the plurality of candidate RAID stripes, disabling of a write operation when the disk is in the unavailable state.

8. The device of claim 6 , wherein the actions further comprise: acquiring, from the write request received when the disk is in the unavailable state, an identifier of a RAID stripe to which the write request is directed; and updating, according to a determination that the identifier corresponds to one of the candidate RAID stripes, an access flag corresponding to that one of the candidate RAID stripes, for indicating that the write request directed to that one of the candidate RAID stripes exists when the disk is in the unavailable state.

9. The device of claim 6 , wherein the actions further comprise:

clearing, in response to completion of the rebuilding, an access flag directed to the target RAID stripe, the access flag indicating that a write request directed to the target RAID stripe exists when the disk is in the unavailable state.

10. A computer program product having a non-transitory computer readable medium which stores a set of instructions to perform storage management; the set of instructions, when carried out by computerized circuitry, causing the computerized circuitry to perform a method of:

determining, in response to a detection that a disk changes from an unavailable state to an available state, a plurality of candidate RAID stripes associated with the disk, wherein each one of the candidate RAID stripes is built using a plurality of disk slices, wherein each one of the candidate RAID stripes is built at least in part using a respective unique one of a plurality of disk slices located on the disk, and wherein determining the plurality of candidate RAID stripes associated with the disk comprises identifying all RAID stripes built using any one of the plurality of disk slices located on the disk as the plurality of candidate RAID stripes;

requesting, by a first storage node from a second storage node, historical access information about the candidate RAID stripes, wherein the first storage node and the second storage node are peer storage nodes, wherein the candidate RAID stripes are accessible through both the first storage node and the second storage node, the historical information comprising information related to a write request directed to the candidate RAID stripes when the disk is in the unavailable state;

prior to receiving the historical access information about the candidate RAID stripes from the second storage node, in response to detecting that the second storage node is offline, setting, by the first storage node, access flags corresponding to all of the candidate RAID stripes, wherein the access flags corresponding to the candidate RAID stripes indicate whether the corresponding candidate RAID stripes were written while the disk was in the unavailable state, and wherein the set access flags corresponding to all of the candidate RAID stripes indicate that all of the candidate RAID stripes were written while the disk was in the unavailable state;

determining a target RAID stripe from the candidate RAID stripes based on the historical access information; and

rebuilding the target RAID stripe.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2020
From: GAO, HONGPO; XU, XINLEI; YANG, LIFENG; KANG, JIANBIN; HAN, GENG; ZHAO, ZHENHUA
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054063/0773 →