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: 11966611
    Abstract: 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: Grant
    Filed: June 9, 2023
    Date of Patent: April 23, 2024
    Assignee: NETAPP, INC.
    Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Sushilkumar Gangadharan
  • Publication number: 20240045807
    Abstract: 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: Application
    Filed: October 16, 2023
    Publication date: February 8, 2024
    Inventors: Abhijeet Prakash Gole, Rohit Shankar Singh, Douglas P. Doucette, Ratnesh Gupta, Sourav Sen, Prathamesh Deshpande
  • Patent number: 11860791
    Abstract: 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: Grant
    Filed: April 24, 2020
    Date of Patent: January 2, 2024
    Assignee: NETAPP, INC.
    Inventors: Abhijeet Prakash Gole, Rohit Shankar Singh, Douglas P. Doucette, Ratnesh Gupta, Sourav Sen, Prathamesh Deshpande
  • Patent number: 11803329
    Abstract: 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: Grant
    Filed: November 22, 2021
    Date of Patent: October 31, 2023
    Assignee: NETAPP, INC.
    Inventors: Douglas P. Doucette, Sushilkumar Gangadharan, Rohit Singh
  • Publication number: 20230333740
    Abstract: 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: Application
    Filed: June 28, 2023
    Publication date: October 19, 2023
    Applicant: NetApp, Inc.
    Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Prathamesh Deshpande
  • Patent number: 11789611
    Abstract: 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: Grant
    Filed: April 24, 2020
    Date of Patent: October 17, 2023
    Assignee: NETAPP, INC.
    Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Prathamesh Deshpande
  • Publication number: 20230325102
    Abstract: 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: Application
    Filed: June 9, 2023
    Publication date: October 12, 2023
    Applicant: NetApp, Inc.
    Inventors: ROHIT SHANKAR SINGH, Douglas P. Doucette, Abhijeet Prakash Gole, Sushikumar Gangadharan
  • Patent number: 11768620
    Abstract: 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: Grant
    Filed: April 24, 2020
    Date of Patent: September 26, 2023
    Assignee: NETAPP, INC.
    Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Sushilkumar Gangadharan
  • Publication number: 20210334025
    Abstract: 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: Application
    Filed: April 24, 2020
    Publication date: October 28, 2021
    Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Sushilkumar Gangadharan
  • Publication number: 20210334215
    Abstract: 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: Application
    Filed: April 24, 2020
    Publication date: October 28, 2021
    Inventors: Abhijeet Prakash Gole, Rohit Shankar Singh, Douglas P. Doucette, Ratnesh Gupta, Sourav Sen, Prathamesh Deshpande
  • Publication number: 20210334006
    Abstract: 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: Application
    Filed: April 24, 2020
    Publication date: October 28, 2021
    Inventors: Rohit Shankar Singh, Douglas P. Doucette, Abhijeet Prakash Gole, Prathamesh Deshpande
  • Patent number: 9411514
    Abstract: 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: Grant
    Filed: December 20, 2013
    Date of Patent: August 9, 2016
    Assignee: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Publication number: 20140173198
    Abstract: 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: Application
    Filed: December 20, 2013
    Publication date: June 19, 2014
    Applicant: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 8621172
    Abstract: 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: Grant
    Filed: May 26, 2009
    Date of Patent: December 31, 2013
    Assignee: NetApp, Inc.
    Inventors: Vijayan Rajan, David Brittain Bolen, Douglas P. Doucette
  • Patent number: 8621465
    Abstract: 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: Grant
    Filed: March 15, 2011
    Date of Patent: December 31, 2013
    Assignee: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Publication number: 20130238851
    Abstract: 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: Application
    Filed: March 7, 2012
    Publication date: September 12, 2013
    Applicant: NetApp, Inc.
    Inventors: Koling Chang, Rajesh Sundaram, Douglas P. Doucette, Ravikanth Dronamraju
  • Publication number: 20130238832
    Abstract: 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: Application
    Filed: March 7, 2012
    Publication date: September 12, 2013
    Applicant: NetApp, Inc.
    Inventors: Ravikanth Dronamraju, Douglas P. Doucette, Rajesh Sundaram
  • Patent number: 8041924
    Abstract: 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: Grant
    Filed: December 17, 2009
    Date of Patent: October 18, 2011
    Assignee: NetApp, Inc.
    Inventors: Stephen H. Strange, Scott Schoenthal, Douglas P. Doucette, Srinivasan Viswanathan
  • Publication number: 20110191780
    Abstract: 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: Application
    Filed: March 15, 2011
    Publication date: August 4, 2011
    Applicant: NETAPP, INC.
    Inventors: Srinivasan Viswanathan, James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange
  • Patent number: 7979633
    Abstract: 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: Grant
    Filed: April 2, 2004
    Date of Patent: July 12, 2011
    Assignee: NetApp, Inc.
    Inventors: Steven R. Kleiman, Rajesh Sundaram, Douglas P. Doucette, Stephen H. Strange, Srinivasan Viswanathan