IP Library Granted Patent US 12,216,928
Granted Patent B2
US 12,216,928 · App. 17/574,262 · Granted Feb 4, 2025

Fragment management method and fragment management apparatus

Inventors: Chen Wang (Shenzhen, CN); Tangren Yao (Shenzhen, CN); Feng Wang (Chengdu, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
G06F3/0647G06F3/0604G06F3/0619G06F3/067
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 12,216,928
App. No.
17/574,262
Granted
Feb 4, 2025
Kind
B2
Abstract

A computing node in a storage system is configured to send an instruction of migration of a parity fragment of a plurality of data fragments from a first-level storage medium to a second-level storage medium, where performance of the second-level storage medium is lower than the first-level storage medium.

Claims (40)

1. A method implemented by a computing node, the method comprising:

storing data fragments and a first parity fragment of the data fragments in a first-level storage media;

migrating the first parity fragment from the first-level storage media to a second-level storage medium of the storage system and keeping the data fragments stored in the first-level storage media, wherein the first-level storage media is a high-speed storage medium, wherein the second-level is a low-speed storage medium, and wherein the first-level storage media and the second-level storage medium are different types of storage media;

storing the first parity fragment in the second-level storage medium.

2. The method of claim 1 , wherein the storage system further comprises a third-level storage medium, and wherein the fragment management method further comprises:

migrating a second parity fragment from a first-level storage medium in the first-level storage media to the third-level storage medium, wherein performance of the third-level storage medium is between the performance of the second-level storage medium and the performance of the first-level storage media; and

storing the second parity fragment in the third-level storage medium.

3. The method of claim 2 , wherein the second parity fragment is configured to check a subset of the data fragments.

4. The method of claim 3 , further comprising calculating the second parity fragment using a local reconstruction code (LRC) technology on the subset of the data fragments.

5. A storage system, comprising:

first-level storage media configured to store data fragments and a first parity fragment of the data fragments;

a second-level storage medium, wherein the first-level storage media is a high-speed storage medium, wherein the second-level is a low-speed storage medium, and wherein the first-level storage media and the second-level storage medium are different types of storage media; and

a computing node coupled to the first-level storage media and the second-level storage medium and configured to send a first migration instruction for migrating the first parity fragment from the first-level storage media to the second-level storage medium while the data fragments remain located in the first-level storage media.

6. The storage system of claim 5 , further comprising a third-level storage medium, wherein the first-level storage media is further configured to store a second parity fragment, wherein the computing node is further configured to send a second migration instruction for migrating the second parity fragment from the first-level storage media to the third-level storage medium, and wherein performance of the third-level storage medium is between the performance of the second-level storage medium and the performance of the first-level storage media.

7. The storage system of claim 6 , wherein the first parity fragment is configured to check all of the data fragments, and wherein the second parity fragment is configured to check a subset of the data fragments.

8. The storage system of claim 7 , wherein the computing node is further configured to calculate the second parity fragment using a local reconstruction code (LRC) technology on the subset of the data fragments.

9. The storage system of claim 5 , wherein the data fragments and the first parity fragment meet an erasure code (EC) algorithm.

10. A method implemented by a computing node, the method comprising:

sending data fragments and a first parity fragment of the data fragments to first-level storage media of a storage system for storage, wherein the storage system comprises the first-level storage media and a second-level storage medium, wherein the first-level storage media is a high-speed storage medium, wherein the second-level is a low-speed storage medium, and wherein the first-level storage media and the second-level storage medium are different types of storage media; and

sending the first parity fragment to the second-level storage medium for storage, wherein the data fragments remain stored in the first-level storage media after the first parity fragment is stored in the second-level storage medium.

11. The method of claim 10 , wherein the storage system further comprises a third-level storage medium, wherein a first-level storage medium of the first-level storage media is configured to store a second parity fragment, wherein the fragment management method further comprises sending the second parity fragment to the third-level storage medium, and wherein performance of the third-level storage medium is between the performance of the of the second-level storage medium and the performance of the first-level storage media.

12. The method of claim 11 , wherein the second parity fragment is configured to check a subset of the data fragments.

13. The method of claim 12 , further comprising calculating the second parity fragment using a local reconstruction code (LRC) technology on the subset of the data fragments.

14. A computing node for migrating data, comprising:

a memory configured to store instructions; and

a processor coupled to the memory and configured to execute the instructions to cause the processor to be configured to:

send data fragments to first-level storage media for storage; and

send a first parity fragment of the data fragments from first-level storage media to a second-level storage medium for storage, wherein the first-level storage media is a high-speed storage medium, wherein the second-level is a low-speed storage medium, wherein the first-level storage media and the second-level storage medium are different types of storage media, and wherein the data fragments remain stored in the first-level storage media after the first parity fragment is stored in the second-level storage medium.

15. The computing node of claim 14 , wherein the instructions further cause the processor to be configured to send a second parity fragment to a third-level storage medium, and wherein performance of the third-level storage medium is between the performance of the second-level storage medium and the performance of the first-level storage media.

16. The computing node of claim 15 , wherein the second parity fragment is configured to check a subset of the data fragments.

17. The computing node of claim 16 , wherein the instructions further cause the processor to be configured to calculate the second parity fragment using a local reconstruction code (LRC) technology on the subset of the data fragments.

18. The computing node of claim 14 , wherein the data fragments and the first parity fragment meet an erasure code (EC) algorithm, and wherein the data fragments have a higher read/write frequency than the first parity fragment.

19. A computing node for data migrating in a storage system comprising first-level storage media and a second-level storage medium, wherein data fragments and a first parity fragment of the data fragments are located in the first-level storage media, the computing node comprising:

a memory configured to store instructions; and

a processor coupled to the memory and configured to execute the instructions to cause the processor to be configured to send a first migration instruction for migrating the first parity fragment from the first-level storage media to the second-level storage media,

wherein the first-level storage media is a high-speed storage medium,

wherein the second-level is a low-speed storage medium,

wherein the first-level storage media and the second-level storage medium are different types of storage media, and

wherein the data fragments remain located in the first-level storage media after the first parity fragment is migrated to the second-level storage media.

20. The computing node of claim 19 , wherein the storage system further includes a third-level storage medium, wherein the first-level storage media is further configured to store a second parity fragment, wherein the processor is configured to execute the instructions to cause the processor to be configured to send a second migration instruction for migrating the second parity fragment to the third-level storage medium, and wherein performance of the third-level storage medium is between the performance of the second-level storage medium and the performance of the first-level storage media.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2022
From: WANG, CHEN; YAO, TANGREN; WANG, FENG
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 058635/0200 →
Priority Claims (1)
CN 201710515966.2 · Jun 29, 2017 · national
Continuity (3)
Continuation 16718976 · Dec 18, 2019
Continuation PCTCN2018075188 · Feb 3, 2018
Related Publication 20220137849A1 · May 5, 2022
References Cited (30)
US 9378088B1 · Piszczek et al. · 2016 [cited by applicant]
US 9672905B1 · Gold et al. · 2017 [cited by applicant]
US 10635340B2 · Danilov et al. · 2020 [cited by applicant]
US 11630729B2 · Menon · 2023 [cited by examiner]
US 20030165150A1 · Zimmermann et al. · 2003 [cited by applicant]
US 20060242091A1 · Jansky · 2006 [cited by applicant]
US 20070130423A1 · Liu et al. · 2007 [cited by applicant]
US 20120198153A1 · Fuente · 2012 [cited by examiner]
US 20140380125A1 · Calder et al. · 2014 [cited by applicant]
US 20150121169A1 · Iliadis et al. · 2015 [cited by applicant]
US 20150242136A1 · Lin et al. · 2015 [cited by applicant]
US 20160211869A1 · Blaum · 2016 [cited by examiner]
US 20160380650A1 · Calder · 2016 [cited by examiner]
US 20170090798A1 · Hassner et al. · 2017 [cited by applicant]
US 20170329552A1 · Baldwin · 2017 [cited by examiner]
US 20180011640A1 · Takegawa · 2018 [cited by examiner]
US 20180039425A1 · Li · 2018 [cited by examiner]
US 20180165034A1 · Danilov et al. · 2018 [cited by applicant]
US 20190129649A1 · Zhong · 2019 [cited by applicant]
US 20200278913A1 · Bakre · 2020 [cited by examiner]
CN 103095805A · 2013 [cited by applicant]
CN 103699494A · 2014 [cited by applicant]
CN 103744620A · 2014 [cited by applicant]
CN 105393225A · 2016 [cited by applicant]
CN 105487823A · 2016 [cited by applicant]
CN 106201338A · 2016 [cited by applicant]
CN 106383665A · 2017 [cited by applicant]
CN 106776111A · 2017 [cited by applicant]
CN 107436733A · 2017 [cited by applicant]
Huang, C., et al. “Erasure Coding in Windows Azure Storage,” USENIX ATC12: Proceedings of the 2012 USENIX conference on Annual Technical Conference, Jun. 2012, 12 pages. [cited by applicant]