Patents by Inventor Neil Buda Vachharajani

Neil Buda Vachharajani 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).

  • Publication number: 20240134569
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Application
    Filed: July 12, 2023
    Publication date: April 25, 2024
    Inventors: ERIC D. SEPPANEN, ANDREW R. BERNAT, TIMOTHY W. BRENNAN, MARK L. McAULIFFE, NEIL BUDA VACHHARAJANI
  • Publication number: 20230280910
    Abstract: A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
    Type: Application
    Filed: March 13, 2023
    Publication date: September 7, 2023
    Inventors: ANDREW R. BERNAT, TIMOTHY W. BRENNAN, MARK L. McAULIFFE, NEIL BUDA VACHHARAJANI
  • Publication number: 20230244382
    Abstract: A first data block on a storage device including a data structure of deallocated data blocks on the storage device and a corresponding program erase count value for each of the deallocated data blocks is identified. A determination as to whether a second data block from the data structure of deallocated data blocks remains deallocated after being added to the data structure of deallocated data blocks based on the program erase count value is made. The data is stored at the second data block upon determining that the second data block remains deallocated after being added to the data structure of deallocated data blocks.
    Type: Application
    Filed: April 6, 2023
    Publication date: August 3, 2023
    Inventors: ERIC D. SEPPANEN, NEIL BUDA VACHHARAJANI, NIDHI PANKAJ DOSHI
  • Patent number: 11704066
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Grant
    Filed: June 15, 2021
    Date of Patent: July 18, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 11640244
    Abstract: A first data block on a storage device including a data structure of deallocated data blocks on the storage device and a corresponding program erase count value for each of the deallocated data blocks is identified. A determination as to whether a second data block from the data structure of deallocated data blocks remains deallocated after being added to the data structure of deallocated data blocks based on the program erase count value is made. The data is stored at the second data block upon determining that the second data block remains deallocated after being added to the data structure of deallocated data blocks.
    Type: Grant
    Filed: August 13, 2021
    Date of Patent: May 2, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Eric D. Seppanen, Neil Buda Vachharajani, Nidhi Pankaj Doshi
  • Patent number: 11604585
    Abstract: A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
    Type: Grant
    Filed: August 9, 2021
    Date of Patent: March 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20210373762
    Abstract: A first data block on a storage device including a data structure of deallocated data blocks on the storage device and a corresponding program erase count value for each of the deallocated data blocks is identified. A determination as to whether a second data block from the data structure of deallocated data blocks remains deallocated after being added to the data structure of deallocated data blocks based on the program erase count value is made. The data is stored at the second data block upon determining that the second data block remains deallocated after being added to the data structure of deallocated data blocks.
    Type: Application
    Filed: August 13, 2021
    Publication date: December 2, 2021
    Inventors: Eric D. Seppanen, Neil Buda Vachharajani, Nidhi Pankaj Doshi
  • Publication number: 20210365190
    Abstract: A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
    Type: Application
    Filed: August 9, 2021
    Publication date: November 25, 2021
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20210311667
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Application
    Filed: June 15, 2021
    Publication date: October 7, 2021
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 11119657
    Abstract: A storage controller coupled to a storage array comprising one or more storage devices receive a request to write data to one of the storage devices. The storage controller determines a first data block on the storage device comprising a list of deallocated data blocks on the storage device, the list comprising a block number of each deallocated data block and an access operation count value at which each deallocated data block was deallocated. The storage controller identifies a second data block from the list of deallocated data blocks on the storage device based on a corresponding access operation count value from the list and writes the data to the second data block.
    Type: Grant
    Filed: October 17, 2019
    Date of Patent: September 14, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani
  • Patent number: 11086532
    Abstract: A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
    Type: Grant
    Filed: January 24, 2020
    Date of Patent: August 10, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 11074016
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Grant
    Filed: December 2, 2019
    Date of Patent: July 27, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 10884919
    Abstract: A method for memory management in a storage system is provided. The method includes defining a required set of pages for writes to solid-state memory and defining multiple levels of indirection for writing data to the solid-state memory, comprising data stripes, each having a plurality of allocation units and each of the allocation units having a plurality of data units. The method includes assigning portions of an allocation unit to a plurality of data units such that one portion of the allocation unit fills an instance of the required set of pages that straddles a boundary between a first data unit and a second data unit, and writing the plurality of data units to the solid-state memory, with the plurality of data units satisfying the required set of pages for writes to solid-state memory.
    Type: Grant
    Filed: April 11, 2019
    Date of Patent: January 5, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20200159423
    Abstract: A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
    Type: Application
    Filed: January 24, 2020
    Publication date: May 21, 2020
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20200117361
    Abstract: A system and method of uniform sampling in an append-only database to determine temporal distribution of data.
    Type: Application
    Filed: December 13, 2019
    Publication date: April 16, 2020
    Inventors: Huihui Cheng, Gunjan Dang, Michael Goldsby, Yanwei Jiang, Aswin Karumbunathan, Peter E. Kirkpatrick, Naveen Neelakantam, Neil Buda Vachharajani, Junming Zhu
  • Publication number: 20200104077
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Application
    Filed: December 2, 2019
    Publication date: April 2, 2020
    Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Publication number: 20200050361
    Abstract: A storage controller coupled to a storage array comprising one or more storage devices receive a request to write data to one of the storage devices. The storage controller determines a first data block on the storage device comprising a list of deallocated data blocks on the storage device, the list comprising a block number of each deallocated data block and an access operation count value at which each deallocated data block was deallocated. The storage controller identifies a second data block from the list of deallocated data blocks on the storage device based on a corresponding access operation count value from the list and writes the data to the second data block.
    Type: Application
    Filed: October 17, 2019
    Publication date: February 13, 2020
    Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani
  • Patent number: 10545687
    Abstract: A method for rebuilding data when changing erase block sizes in a storage system is provided. The method includes determining one or more erase blocks to be rebuilt and allocating one or more replacement erase blocks, wherein the one or more erase blocks and the one or more replacement erase blocks have differing erase block sizes. The method includes mapping logical addresses, for the one or more erase blocks, to the one or more replacement erase blocks and rebuilding the one or more erase blocks into the one or more replacement erase blocks, in accordance with the mapping.
    Type: Grant
    Filed: October 31, 2017
    Date of Patent: January 28, 2020
    Assignee: Pure Storage, Inc.
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
  • Patent number: 10540095
    Abstract: A storage controller coupled to a storage array comprising one or more storage devices performs a uniform sampling of data storage items in an append-only file system to identify a sample set and identifies at least two data storage item groups based on an age of the data storage items. The storage controller performs a garbage collection process on the append-only file system to identify stale data storage items in a first logical storage segment and active data storage items in the first logical storage segment and writes a first active data storage item associated with a first group of the two data storage item groups from the first logical storage segment to a second logical storage segment, the second logic storage segment comprising other active data storage items associated with the first group.
    Type: Grant
    Filed: January 26, 2017
    Date of Patent: January 21, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Huihui Cheng, Gunjan Dang, Michael Goldsby, Yanwei Jiang, Aswin Karumbunathan, Pete Kirkpatrick, Naveen Neelakantam, Neil Buda Vachharajani, Junming Zhu
  • Patent number: 10496330
    Abstract: A method of using flash storage devices with different sized erase blocks is provided. The method includes allocating a plurality of erase blocks of heterogeneous erase block sizes to a RAID stripe, to form a tile pattern having the heterogeneous erase block sizes in the RAID stripe. The method includes writing the RAID stripe across the flash storage devices in accordance with the allocating, and stopping the writing the RAID stripe, responsive to contents of the RAID stripe reaching a threshold.
    Type: Grant
    Filed: October 31, 2017
    Date of Patent: December 3, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Eric D. Seppanen, Neil Buda Vachharajani