Patents by Inventor Douglas P. Doucette
Douglas P. Doucette has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11966611Abstract: The disclosed technology relates determining a first subset of a plurality drives having a first zone size and a second subset of the plurality of drives having a second zone size different from the first zone size, within a redundant array of independent disks (RAID) group. A prevailing zone size between the first zone size and the second zone size is determined. One or more logical zones within the determined first subset of the plurality of drives and the determined second subset of the plurality of drives for a received input-output operation is reserved based on the determined prevailing zone size. The received input-output operation is completed within the reserved one or more logical zones within the determined first subset of the plurality of drives and the determined second subset of the plurality of drives.Type: GrantFiled: June 9, 2023Date of Patent: April 23, 2024Assignee: NETAPP, INC.Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Sushilkumar Gangadharan
-
Publication number: 20240045807Abstract: The disclosed technology relates to determining physical zone data within a zoned namespace solid state drive (SSD), associated with logical zone data included in a first received input-output operation based on a mapping data structure within a namespace of the zoned namespace SSD. A second input-output operation specific to the determined physical zone data is generated wherein the second input-output operation and the received input-output operation is of a same type. The generated second input-output operation is completed using the determined physical zone data within the zoned namespace SSD.Type: ApplicationFiled: October 16, 2023Publication date: February 8, 2024Inventors: Abhijeet Prakash Gole, Rohit Shankar Singh, Douglas P. Doucette, Ratnesh Gupta, Sourav Sen, Prathamesh Deshpande
-
Patent number: 11860791Abstract: The disclosed technology relates to determining physical zone data within a zoned namespace solid state drive (SSD), associated with logical zone data included in a first received input-output operation based on a mapping data structure within a namespace of the zoned namespace SSD. A second input-output operation specific to the determined physical zone data is generated wherein the second input-output operation and the received input-output operation is of a same type. The generated second input-output operation is completed using the determined physical zone data within the zoned namespace SSD.Type: GrantFiled: April 24, 2020Date of Patent: January 2, 2024Assignee: NETAPP, INC.Inventors: Abhijeet Prakash Gole, Rohit Shankar Singh, Douglas P. Doucette, Ratnesh Gupta, Sourav Sen, Prathamesh Deshpande
-
Patent number: 11803329Abstract: Methods and systems for a storage environment are provided, including generating a plurality of child (or tetris) write requests to write data for a write request using a plurality of subdivisions of a plurality of logical zones defined for a plurality of zoned solid state drives (ZNS SSDs) of a RAID array, each LZone mapped to one or more logical RAID zone (RZone) of the ZNS SSDs having a plurality of physical zones across a plurality of independent media units of each ZNS SSD; assigning a sequence number to each child (or tetris) write request corresponding to each subdivision, the sequence number indicating an order in which the child (or tetris) write requests are to be processed; and selecting, based on the assigned sequence number, one or more subdivisions for sequentially writing data to one or more RZones of the plurality of ZNS SSDs.Type: GrantFiled: November 22, 2021Date of Patent: October 31, 2023Assignee: NETAPP, INC.Inventors: Douglas P. Doucette, Sushilkumar Gangadharan, Rohit Singh
-
Publication number: 20230333740Abstract: The disclosed technology relates to managing input-output operation in a zoned storage system includes identifying a first physical zone and a second physical zone within a zoned namespace solid-state drive associated with a logical zone to perform a received write operation. Data to be written in the received write operation is temporarily staged in a zone random write area associated with the identified second physical zone. Based a storage threshold of the zone random write area, a determination is made regarding when to transfer temporarily staged data to be written area to the identified second physical zone. When the storage threshold of the zone random write area determined to have exceeded, temporarily staged data to be written is transferred to the identified second physical zone.Type: ApplicationFiled: June 28, 2023Publication date: October 19, 2023Applicant: NetApp, Inc.Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Prathamesh Deshpande
-
Patent number: 11789611Abstract: The disclosed technology relates to managing input-output operation in a zoned storage system includes identifying a first physical zone and a second physical zone within a zoned namespace solid-state drive associated with a logical zone to perform a received write operation. Data to be written in the received write operation is temporarily staged in a zone random write area associated with the identified second physical zone. Based a storage threshold of the zone random write area, a determination is made regarding when to transfer temporarily staged data to be written area to the identified second physical zone. When the storage threshold of the zone random write area determined to have exceeded, temporarily staged data to be written is transferred to the identified second physical zone.Type: GrantFiled: April 24, 2020Date of Patent: October 17, 2023Assignee: NETAPP, INC.Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Prathamesh Deshpande
-
Publication number: 20230325102Abstract: The disclosed technology relates determining a first subset of a plurality drives having a first zone size and a second subset of the plurality of drives having a second zone size different from the first zone size, within a redundant array of independent disks (RAID) group. A prevailing zone size between the first zone size and the second zone size is determined. One or more logical zones within the determined first subset of the plurality of drives and the determined second subset of the plurality of drives for a received input-output operation is reserved based on the determined prevailing zone size.Type: ApplicationFiled: June 9, 2023Publication date: October 12, 2023Applicant: NetApp, Inc.Inventors: ROHIT SHANKAR SINGH, Douglas P. Doucette, Abhijeet Prakash Gole, Sushikumar Gangadharan
-
Patent number: 11768620Abstract: The disclosed technology relates determining a first subset of a plurality drives having a first zone size and a second subset of the plurality of drives having a second zone size different from the first zone size, within a redundant array of independent disks (RAID) group. A prevailing zone size between the first zone size and the second zone size is determined. One or more logical zones within the determined first subset of the plurality of drives and the determined second subset of the plurality of drives for a received input-output operation is reserved based on the determined prevailing zone size. The received input-output operation is completed within the reserved one or more logical zones within the determined first subset of the plurality of drives and the determined second subset of the plurality of drives.Type: GrantFiled: April 24, 2020Date of Patent: September 26, 2023Assignee: NETAPP, INC.Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Sushilkumar Gangadharan
-
Publication number: 20210334025Abstract: The disclosed technology relates determining a first subset of a plurality drives having a first zone size and a second subset of the plurality of drives having a second zone size different from the first zone size, within a redundant array of independent disks (RAID) group. A prevailing zone size between the first zone size and the second zone size is determined. One or more logical zones within the determined first subset of the plurality of drives and the determined second subset of the plurality of drives for a received input-output operation is reserved based on the determined prevailing zone size.Type: ApplicationFiled: April 24, 2020Publication date: October 28, 2021Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Sushilkumar Gangadharan
-
Publication number: 20210334215Abstract: The disclosed technology relates to determining physical zone data within a zoned namespace solid state drive (SSD), associated with logical zone data included in a first received input-output operation based on a mapping data structure within a namespace of the zoned namespace SSD. A second input-output operation specific to the determined physical zone data is generated wherein the second input-output operation and the received input-output operation is of a same type. The generated second input-output operation is completed using the determined physical zone data within the zoned namespace SSD.Type: ApplicationFiled: April 24, 2020Publication date: October 28, 2021Inventors: Abhijeet Prakash Gole, Rohit Shankar Singh, Douglas P. Doucette, Ratnesh Gupta, Sourav Sen, Prathamesh Deshpande
-
Publication number: 20210334006Abstract: The disclosed technology relates to managing input-output operation in a zoned storage system includes identifying a first physical zone and a second physical zone within a zoned namespace solid-state drive associated with a logical zone to perform a received write operation. Data to be written in the received write operation is temporarily staged in a zone random write area associated with the identified second physical zone. Based a storage threshold of the zone random write area, a determination is made regarding when to transfer temporarily staged data to be written area to the identified second physical zone. When the storage threshold of the zone random write area determined to have exceeded, temporarily staged data to be written is transferred to the identified second physical zone.Type: ApplicationFiled: April 24, 2020Publication date: October 28, 2021Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Prathamesh Deshpande
-
Patent number: 9411514Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.Type: GrantFiled: December 20, 2013Date of Patent: August 9, 2016Assignee: NetApp, Inc.Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
-
Publication number: 20140173198Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.Type: ApplicationFiled: December 20, 2013Publication date: June 19, 2014Applicant: NetApp, Inc.Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
-
Patent number: 8621172Abstract: A method for operating a computer storage system maintains a client computer interacting with the storage system, the client computer storing data on a data storage device of the computer storage system. Locating, by a client-side agent executing on the client computer that examines metadata of the client computer, one or more sets of blocks allocated and then deleted, hereinafter referred to as deleted blocks, within the computer storage system. Sending a command to the storage system, the command to identify the deleted blocks within the computer storage system. Deallocating, in response to receiving the command, the identified deleted blocks within the computer storage system.Type: GrantFiled: May 26, 2009Date of Patent: December 31, 2013Assignee: NetApp, Inc.Inventors: Vijayan Rajan, David Brittain Bolen, Douglas P. Doucette
-
Patent number: 8621465Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.Type: GrantFiled: March 15, 2011Date of Patent: December 31, 2013Assignee: NetApp, Inc.Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
-
Publication number: 20130238851Abstract: Methods and apparatuses for operating a hybrid storage aggregate are provided. In one example, such a method includes operating a first tier of physical storage of the hybrid storage aggregate as a cache for a second tier of physical storage of the hybrid storage aggregate. The first tier of physical storage includes a plurality of assigned blocks. The method also includes updating metadata of the assigned blocks in response to an event associated with at least one of the assigned blocks. The metadata includes block usage information tracking more than two possible usage states per assigned block. The method can further include processing the metadata to determine a caching characteristic of the assigned blocks.Type: ApplicationFiled: March 7, 2012Publication date: September 12, 2013Applicant: NetApp, Inc.Inventors: Koling Chang, Rajesh Sundaram, Douglas P. Doucette, Ravikanth Dronamraju
-
Publication number: 20130238832Abstract: Methods and apparatuses for performing deduplication in a hybrid storage aggregate are provided. In one example, a method includes operating a hybrid storage aggregate that includes a plurality of tiers of different types of physical storage media. The method includes identifying a first storage block and a second storage block of the hybrid storage aggregate that contain identical data and identifying caching statuses of the first storage block and the second storage block. The method also includes deduplicating the first storage block and the second storage block based on the caching statuses of the first storage block and the second storage block.Type: ApplicationFiled: March 7, 2012Publication date: September 12, 2013Applicant: NetApp, Inc.Inventors: Ravikanth Dronamraju, Douglas P. Doucette, Rajesh Sundaram
-
Patent number: 8041924Abstract: A computer storage system is described. A range of volume block numbers (VBNs) is assigned to a volume. A range of storage device block numbers (DBNs) is assigned to each of a plurality of storage devices. A first mapping parameters are created to map a first range of VBN numbers to a first selected range of DBNs using a first portion of a new storage device. A second mapping parameters are created to map a second range of VBN numbers to a second range of DBNs on a second portion of the new storage device.Type: GrantFiled: December 17, 2009Date of Patent: October 18, 2011Assignee: NetApp, Inc.Inventors: Stephen H. Strange, Scott Schoenthal, Douglas P. Doucette, Srinivasan Viswanathan
-
Publication number: 20110191780Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.Type: ApplicationFiled: March 15, 2011Publication date: August 4, 2011Applicant: NETAPP, INC.Inventors: Srinivasan Viswanathan, James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange
-
Patent number: 7979633Abstract: The invention features a method for controlling storage of data in a plurality of storage devices each including storage blocks, for example, in a RAID array. The method includes receiving a plurality of write requests associated with data, and buffering the write requests. A file system defines a group of storage blocks, responsive to disk topology information. The group includes a plurality of storage blocks in each of the plurality of storage devices. Each data block of the data to be written is associated with a respective one of the storage blocks, for transmitting the association to the plurality of storage devices.Type: GrantFiled: April 2, 2004Date of Patent: July 12, 2011Assignee: NetApp, Inc.Inventors: Steven R. Kleiman, Rajesh Sundaram, Douglas P. Doucette, Stephen H. Strange, Srinivasan Viswanathan