IP Library › Granted Patent US 11,861,231
Granted Patent B2
US 11,861,231 · App. 17/650,940 · Granted Jan 2, 2024

Scalable solid-state storage system and methods thereof

Inventors: Abhijeet Prakash Gole (Cupertino, CA); Timothy K. Emami (San Jose, CA)
Assignee: NETAPP, INC.
G06F3/0659G06F3/0604G06F3/067G06F3/0617G06F3/0631G06F3/0688
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,861,231
App. No.
17/650,940
Granted
Jan 2, 2024
Kind
B2
Abstract

Methods and systems for solid state drives are provided, including assigning a first shared namespace to a first instance and a second instance of a storage operating system for enabling write access to the first instance to a first zone of a first portion of a flash storage system, and write access to the second instance to a second zone of the first portion; using a first exclusive namespace by the first instance to store metadata at a first segment of a second portion of the flash storage system; using a second exclusive namespace by the second instance to store metadata at a second segment of the second portion of the flash storage system; and providing read only access to the first instance and the second instance to a second zone of the first portion using the first namespace.

Claims (40)

1. A method executed by one or more processors, comprising:

assigning a first shared namespace to a first instance and a second instance of a storage operating system and a first exclusive namespace to the first instance and a second exclusive namespace to the second instance;

using the first exclusive namespace by the first instance to store a first metadata at a first segment of a second portion of a flash storage system, the first metadata pointing to a location of data stored by a first portion of the flash storage system, and the first exclusive namespace enables write access to the first instance to a first zone of the first portion;

using the second exclusive namespace by the second instance to store a second metadata at a second segment of the second portion of the flash storage system, the second metadata pointing to a location of data stored in the first portion, and the second exclusive namespace enables write access to the second instance to a second zone of the first portion; and

providing read only access to the first instance and the second instance to a third zone of the first portion using the first shared namespace.

2. The method of claim 1 , further comprising:

utilizing, by the first instance, the first metadata at the first segment of the second portion to retrieve a data object from the second zone of the first portion, in response to a read request for the data object received by the first instance; and

utilizing, by the second instance, the second metadata at the second segment of the second portion to retrieve the data object from the second zone of the first portion, in response to a read request for the data object received by the second instance.

3. The method of claim 1 , wherein the first portion comprises of a first type of solid-state drive and the second portion comprises of a second type of solid-state drive.

4. The method of claim 3 , wherein the first type of solid-state drive is a quad-layer cell (QLC) type solid-state drive.

5. The method of claim 3 , wherein the second type of solid-state drive is a triple-layer cell (TLC) type solid-state drive.

6. The method of claim 3 , wherein the first type is a capacity tier with storage performance lower than the second type.

7. The method of claim 1 , wherein the first shared namespace is a zoned namespace.

8. A non-transitory, machine-readable storage medium having stored thereon instructions comprising machine executable code, which when executed by a machine, causes the machine to:

assign a first shared namespace to a first instance and a second instance of a storage operating system and a first exclusive namespace to the first instance and a second exclusive namespace to the second instance;

use the first exclusive namespace by the first instance to store a first metadata at a first segment of a second portion of a flash storage system, the first metadata pointing to a location of data stored by a first portion of the flash storage system, and the first exclusive namespace enables write access to the first instance to a first zone of the first portion;

use the second exclusive namespace by the second instance to store a second metadata at a second segment of the second portion of the flash storage system, the second metadata pointing to a location of data stored in the first portion, and the second exclusive namespace enables write access to the second instance to a second zone of the first portion; and

provide read only access to the first instance and the second instance to a third zone of the first portion using the first shared namespace.

9. The non-transitory, machine readable storage medium of claim 8 , wherein the machine executable code further causes the machine to:

utilize, by the first instance, the first metadata at the first segment of the second portion to retrieve a data object from the second zone of the first portion, in response to a read request for the data object received by the first instance; and

utilize, by the second instance, the second metadata at the second segment of the second portion to retrieve the data object from the second zone of the first portion, in response to a read request for the data object received by the second instance.

10. The non-transitory, machine-readable storage medium of claim 8 ,

wherein the first portion comprises of a first type of solid-state drive and the second portion comprises of a second type of solid-state drive.

11. The non-transitory, machine-readable storage medium of claim 10 , wherein the first type of solid-state drive is a quad-layer cell (QLC) type solid-state drive.

12. The non-transitory, machine readable storage medium of claim 10 , wherein the second type of solid-state drive is a triple-layer cell (TLC) type solid-state drive.

13. The non-transitory, machine readable storage medium of claim 10 , wherein the first type is a capacity tier with storage performance lower than the second type.

14. The non-transitory, machine-readable storage medium of claim 8 , wherein the first shared namespace is a zoned namespace.

15. A system, comprising:

a memory containing a machine readable medium comprising machine executable code having stored thereon instructions; and a processor coupled to the memory to execute the machine executable code to:

assign a first shared namespace to a first instance and a second instance of a storage operating system and a first exclusive namespace to the first instance and a second exclusive namespace to the second instance;

use the first exclusive namespace by the first instance to store a first metadata at a first segment of a second portion of a flash storage system, the first metadata pointing to a location of data stored by a first portion of the flash storage system, and the first exclusive namespace enables write access to the first instance to a first zone of the first portion;

use the second exclusive namespace by the second instance to store a second metadata at a second segment of the second portion of the flash storage system, the second metadata pointing to a location of data stored in the first portion, and the second exclusive namespace enables write access to the second instance to a second zone of the first portion; and

provide read only access to the first instance and the second instance to a third zone of the first portion using the first shared namespace.

16. The system of claim 15 , wherein the machine executable code further causes to:

utilize, by the first instance, the first metadata at the first segment of the second portion to retrieve a data object from the second zone of the first portion, in response to a read request for the data object received by the first instance; and

utilize, by the second instance, the second metadata at the second segment of the second portion to retrieve the data object from the second zone of the first portion, in response to a read request for the data object received by the second instance.

17. The system of claim 15 , wherein the first portion comprises of a first type of solid-state drive and the second portion comprises of a second type of solid-state drive.

18. The system of claim 17 , wherein the first type of solid-state drive is a quad-layer cell (QLC) type solid-state drive.

19. The system of claim 17 , wherein the second type of solid-state drive is a triple-layer cell (TLC) type solid-state drive.

20. The system of claim 15 , wherein the first shared namespace is a zoned namespace.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2022
From: GOLE, ABHIJEET PRAKASH; EMAMI, TIMOTHY K.
To: NETAPP, INC.
Reel/Frame 059003/0186 →
Continuity (2)
Provisional Application 63290549 · Dec 16, 2021
Related Publication 20230195383A1 · Jun 22, 2023
Cited By (4)
US 12,204,403 US 12,242,337 US 12,346,561 US 12,405,857