US 11,934,681 B2
Data migration for write groups
Andrew Bernat, Mountain View, CA (US); John Colgrove, Los Altos, CA (US); Taher Vohra, Sunnyvale, CA (US); Andrew Kleinerman, San Carlos, CA (US); Xiaohui Wang, Mountain View, CA (US); and Benjamin Scholbrock, San Jose, CA (US)
Assigned to PURE STORAGE, INC., Santa Clara, CA (US)
Filed by PURE STORAGE, INC., Mountain View, CA (US)
Filed on Sep. 1, 2021, as Appl. No. 17/464,141.
Application 17/464,141 is a continuation of application No. 16/736,486, filed on Jan. 7, 2020, granted, now 11,112,990.
Application 16/736,486 is a continuation in part of application No. 15/786,187, filed on Oct. 17, 2017, granted, now 10,564,884, issued on Feb. 18, 2020.
Application 15/786,187 is a continuation of application No. 15/140,445, filed on Apr. 27, 2016, granted, now 9,841,921, issued on Dec. 12, 2017.
Prior Publication US 2021/0397358 A1, Dec. 23, 2021
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 3/06 (2006.01); G11C 11/4074 (2006.01); G11C 11/4096 (2006.01)
CPC G06F 3/0647 (2013.01) [G06F 3/0607 (2013.01); G06F 3/0617 (2013.01); G06F 3/067 (2013.01); G06F 3/0683 (2013.01); G06F 3/0688 (2013.01); G11C 11/4074 (2013.01); G11C 11/4096 (2013.01)] 19 Claims
OG exemplary drawing
 
1. A method comprising:
detecting an occurrence of a storage device evacuation event associated with a source storage device within a write group, wherein the write group includes a subset of all storage devices in a storage system and a first dataset is striped across a plurality of shards of the storage devices in the write group, wherein the storage system includes at least a second write group that includes a different subset of all storage devices in the storage system;
responsive to detecting the occurrence of the storage device evacuation event, identifying a target storage device included in the write group for receiving data stored on the source storage device; and
migrating the data stored on the source storage device to the target storage device;
creating a new write group that includes one or more of the storage devices in the write group, the new write group including a different subset of all storage devices in the storage system; and
rebuilding segments of the write group to accommodate a number of storage devices in the different subset of storage devices by rebuilding each segment into a wider segment.