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: 20240134569Abstract: 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: ApplicationFiled: July 12, 2023Publication date: April 25, 2024Inventors: ERIC D. SEPPANEN, ANDREW R. BERNAT, TIMOTHY W. BRENNAN, MARK L. McAULIFFE, NEIL BUDA VACHHARAJANI
-
Publication number: 20230280910Abstract: 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: ApplicationFiled: March 13, 2023Publication date: September 7, 2023Inventors: ANDREW R. BERNAT, TIMOTHY W. BRENNAN, MARK L. McAULIFFE, NEIL BUDA VACHHARAJANI
-
Publication number: 20230244382Abstract: 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: ApplicationFiled: April 6, 2023Publication date: August 3, 2023Inventors: ERIC D. SEPPANEN, NEIL BUDA VACHHARAJANI, NIDHI PANKAJ DOSHI
-
Patent number: 11704066Abstract: 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: GrantFiled: June 15, 2021Date of Patent: July 18, 2023Assignee: PURE STORAGE, INC.Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Patent number: 11640244Abstract: 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: GrantFiled: August 13, 2021Date of Patent: May 2, 2023Assignee: Pure Storage, Inc.Inventors: Eric D. Seppanen, Neil Buda Vachharajani, Nidhi Pankaj Doshi
-
Patent number: 11604585Abstract: 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: GrantFiled: August 9, 2021Date of Patent: March 14, 2023Assignee: PURE STORAGE, INC.Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Publication number: 20210373762Abstract: 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: ApplicationFiled: August 13, 2021Publication date: December 2, 2021Inventors: Eric D. Seppanen, Neil Buda Vachharajani, Nidhi Pankaj Doshi
-
Publication number: 20210365190Abstract: 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: ApplicationFiled: August 9, 2021Publication date: November 25, 2021Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Publication number: 20210311667Abstract: 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: ApplicationFiled: June 15, 2021Publication date: October 7, 2021Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Patent number: 11119657Abstract: 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: GrantFiled: October 17, 2019Date of Patent: September 14, 2021Assignee: PURE STORAGE, INC.Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani
-
Patent number: 11086532Abstract: 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: GrantFiled: January 24, 2020Date of Patent: August 10, 2021Assignee: Pure Storage, Inc.Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Patent number: 11074016Abstract: 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: GrantFiled: December 2, 2019Date of Patent: July 27, 2021Assignee: Pure Storage, Inc.Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Patent number: 10884919Abstract: 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: GrantFiled: April 11, 2019Date of Patent: January 5, 2021Assignee: Pure Storage, Inc.Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Publication number: 20200159423Abstract: 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: ApplicationFiled: January 24, 2020Publication date: May 21, 2020Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Publication number: 20200117361Abstract: A system and method of uniform sampling in an append-only database to determine temporal distribution of data.Type: ApplicationFiled: December 13, 2019Publication date: April 16, 2020Inventors: Huihui Cheng, Gunjan Dang, Michael Goldsby, Yanwei Jiang, Aswin Karumbunathan, Peter E. Kirkpatrick, Naveen Neelakantam, Neil Buda Vachharajani, Junming Zhu
-
Publication number: 20200104077Abstract: 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: ApplicationFiled: December 2, 2019Publication date: April 2, 2020Inventors: Eric D. Seppanen, Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Publication number: 20200050361Abstract: 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: ApplicationFiled: October 17, 2019Publication date: February 13, 2020Inventors: Nidhi Pankaj Doshi, Eric D. Seppanen, Neil Buda Vachharajani
-
Patent number: 10545687Abstract: 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: GrantFiled: October 31, 2017Date of Patent: January 28, 2020Assignee: Pure Storage, Inc.Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Neil Buda Vachharajani
-
Patent number: 10540095Abstract: 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: GrantFiled: January 26, 2017Date of Patent: January 21, 2020Assignee: 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: 10496330Abstract: 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: GrantFiled: October 31, 2017Date of Patent: December 3, 2019Assignee: Pure Storage, Inc.Inventors: Andrew R. Bernat, Timothy W. Brennan, Mark L. McAuliffe, Eric D. Seppanen, Neil Buda Vachharajani