DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Frost et al. (US 7,856,528) and further in view of Kirkpatrick et al. (US 2018/0173442).
Consider claim 1, Frost in view of Kirkpatrick et al. discloses a method, comprising: writing a first data stripe from a first data segment across a first plurality of storage nodes of a storage system; writing a second data stripe from the data segment across a second plurality of storage nodes of the storage system; and mapping the first and second data stripes to physical pages in erase blocks having differing erase block sizes, wherein the first data stripe and the second data stripe are different sizes based on the differing erase block sizes (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 18 lines 25-27 Col. 21-22 lines 54-2, Frost discloses a plurality of flash memory devices that are dividing into dies, planes, blocks, pages, and page stripes, among other groupings. Data is mapped to storage locations using these divisions to store the data. Various length page stripes are stored across the Flash memory devices. Frost does not explicitly teach that the erase blocks have different erase block sizes, however Kirkpatrick et al. Fig. 2E, [0027], [0046], [0068], [0073], [0125], [0126], [0140], describes differing sized erase blocks, the use of raid with write groups made up of allocation units and the allocation units can be individual erase blocks, thus having a RAID write group made up of allocation units containing at least one erase block which can have differing sizes and therefore the write group can have different sizes and different groupings of erase blocks.).
It would have been obvious to a person of ordinary skill in the art at the time the invention was made to modify the Frost reference so that the block sizes can be different, because doing so allows for the system to utilize different memory manufacturers allowing for more versatility in memory replacement and future proofing due to changing standards.
Claim 8 is the computer readable medium claim to the method claim 1 above and is rejected using the same rationale.
Claim 14 is the storage system claim to the method claim 1 above and is rejected using the same rationale.
Consider claim 2, Frost in view of Kirkpatrick et al. discloses the method of claim 1, further comprising: mapping data into data segments, wherein at least two of the data segments differ in at least one of width, height or an amount of data in the data segment (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, various data groupings can store data but can be full, empty or partially full. Kirkpatrick et al. Fig. 2E, [0027], [0068], [0073], [0140], size differences.).
Claim 9 is the non-transitory computer readable storage medium claim to the method claim 8 above and is rejected using the same rationale.
Consider claim 3, Frost in view of Kirkpatrick et al. discloses the method of claim 1, further comprising: performing garbage collection with data segments comprising a garbage collection domain (Kirkpatrick et al. [0049], [0103]).
Claim 16 is the storage system claim to the method claim 3 above and is rejected using the same rationale.
Consider claim 4, Frost in view of Kirkpatrick et al. discloses the method of claim 1, wherein: the writing the first data stripe comprises writing the first data stripe with N+2 protection and the writing the second data stripe comprises writing the second data stripe with M+2 protection, wherein M is less than N. (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, Frost discloses having varying sized stripes with different data protection information.).
Claim 17 is the storage system claim to the method claim 1 above and is rejected using the same rationale.
Consider claim 5, Frost in view of Kirkpatrick et al. discloses the method of claim 1, further comprising: mapping a first type of data into a first plurality of data segments having a first parity protection and a first one or more garbage collection domains and mapping a second type of data into a second plurality of data segments having a second parity protection and a second one or more garbage collection domains (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, Frost discloses a plurality of flash memory devices that are dividing into dies, planes, lanes, blocks, pages, and page stripes, among other groupings. Frost discloses having varying sized stripes with different data protection information. Data is mapped to storage locations using these divisions to store the data. Kirkpatrick et al. Fig. 2E, [0027], [0049], [0068], [0073], [0103], [0140] describes the use of garbage collection).
Claim 10 is the non-transitory computer readable storage medium claim to the method claim 5 above and is rejected using the same rationale.
Claim 18 is the storage system claim to the method claim 5 above and is rejected using the same rationale.
Consider claim 6, Frost in view of Kirkpatrick et al. discloses the method of claim 1, further comprising: applying adaptive RAID protection schemes for the data stripes across the first plurality of storage nodes and the second plurality of storage nodes. (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, varying sized protective page stripes are used across the flash memory devices.).
Claim 19 is the storage system claim to the method claim 6 above and is rejected using the same rationale.
Consider claim 7, Frost in view of Kirkpatrick et al. discloses the method of claim 1, further comprising: using one or more levels of adaptive mapping to map the data segments into physical pages of erase blocks to make efficient use of heterogeneous erase block sizes. (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, Frost discloses a plurality of flash memory devices that are dividing into dies, planes, lanes, blocks, pages, and page stripes, among other groupings. Data is mapped to storage locations using these divisions to store the data.).
Claim 20 is the storage system claim to the method claim 7 above and is rejected using the same rationale.
Consider claim 11, Frost in view of Kirkpatrick et al. discloses the non-transitory computer readable storage medium of claim 8, wherein the processing device is further to: map a first type of data comprising user data into a first plurality of data segments having a first parity protection and a first one or more garbage collection domains and mapping a second type of data comprising log data into a second plurality of data segments having a second parity protection and a second one or more garbage collection domains (Frost: abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, Frost discloses a plurality of flash memory devices that are dividing into dies, planes, lanes, blocks, pages, and page stripes, among other groupings. Frost discloses having varying sized stripes with different data protection information (log data). Data is mapped to storage locations using these divisions to store the data. Kirkpatrick et al. Fig. 2E, [0027], [0049], [0068], [0073], [0103], [0140] describes the use of blade servers and the use of garbage collection.).
Consider claim 12, Frost in view of Kirkpatrick et al. discloses the non-transitory computer readable storage medium of claim 8, wherein the processing device is further to: apply a plurality of RAID protection schemes for the data stripes across the first plurality of storage nodes and the second plurality of storage nodes to make efficient use of heterogeneous amounts of the solid-state storage memory, wherein the efficient use comprises increasing efficiency of memory usage in comparison to using a single RAID protection scheme for all data stripes (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, varying sized protective page stripes are used across the flash memory devices.).
Consider claim 13, Frost in view of Kirkpatrick et al. discloses the non-transitory computer readable storage medium of claim 8, wherein the processing device is further to: use one or more levels of mapping to map data segments into physical pages of the erase blocks to make efficient use of heterogeneous erase block sizes, wherein the efficient use comprises increasing efficiency of memory usage in comparison to mapping as to a single erase block size for all erase blocks (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, Frost discloses a plurality of flash memory devices that are dividing into dies, planes, lanes, blocks, pages, and page stripes, among other groupings. Data is mapped to storage locations using these divisions to store the data.).
Consider claim 15, Frost in view of Kirkpatrick et al. discloses the storage system of claim 14, wherein the one or more processing devices are further configured to: map the data stripes to allocation units, map the allocation units to allocation unit pages, and map the allocation unit pages to physical pages in erase blocks (abstract, Col. 1 lines 40-60, Col. 2 lines 35-64, Col. 5 lines 17-25, Col. 6 lines 32-42, Col. 7 lines 24-46, and 63-Col. 8 line 3 and lines 57-67, Col. 9 lines 1-20, Col. 10 lines 45-46, Col. 21-22 lines 54-2, Frost discloses a plurality of flash memory devices that are dividing into dies, planes, lanes, blocks, pages, and page stripes, among other groupings. Data is mapped to storage locations using these divisions to store the data.).
Response to Arguments
Applicant’s arguments, filed 2/16/2026, have been fully considered and are not persuasive.
The applicant first argues that Kirkpatrick et al. is not combinable with Frost because Frost requires uniform stripe geometry to function. Upon review of the sections of Frost cited by the applicant, the examiner has not found any specific disclosure that prevents Frost from have or being adaptable to have variable stripe geometry.
The applicant further argues that Kirkpatrick et al. does not vary the size of stripes. However, [0140] states that allocation units can be composed of one or more erase blocks and those erase blocks can be different sizes. Fig. 4 and [0127] discloses that a size of a segment (stripe) may be determined based on if data or metadata is being stored and a number of SSDs in the write group. A segment can include from 8 to 16 allocation units and can vary from segment to segment based on available storage devices and the layout of the device. Therefore, Kirkpatrick et al. does teach various sized stripes based in part of the size of allocation units/erase blocks.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MICHAEL ALSIP whose telephone number is (571)270-1182. The examiner can normally be reached on M-F 9-5.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Reginald G. Bragdon can be reached on (571)272-4204. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see https://ppair-my.uspto.gov/pair/PrivatePair. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/MICHAEL ALSIP/Primary Examiner, Art Unit 2136