Patents by Inventor Manish Motwani

Manish Motwani 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: 11455100
    Abstract: A method for execution by a storage unit of a dispersed storage network (DSN) includes receiving a data slice for storage. A first bin that includes the data slice is generated and stored in a first location of a memory device of the storage unit, and a bin pointer that includes a reference to the first location is generated. A revision of the data slice is later received, and a second bin that includes the revised data slice is generated and stored in a second location of the memory device. A modified bin pointer is generated by editing the bin pointer to include a reference to the second location. A back pointer that references the first location is generated in response to commencing writing of the revised data slice. The back pointer is deleted in response to determining that the revised data slice has reached a finalized write stage.
    Type: Grant
    Filed: June 25, 2019
    Date of Patent: September 27, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Manish Motwani, Praveen Viraraghavan, Ilya Volvovski
  • Patent number: 11442921
    Abstract: A method is presented for execution by a processing system of a dispersed storage and task (DST) processing unit that includes a processor. The method includes: receiving, at the processor, a data access request having a consistency indicator; identifying, via the processor, a set of two or more storage targets associated with the data access request; selecting, via the processor, a threshold number of storage targets of the set of two or more storage targets, based on the consistency indicator; accessing, via the processor, the selected threshold number of storage targets based on the data access request; and generating a data access response, via the processor, based on the accessing of the selected threshold number of storage targets.
    Type: Grant
    Filed: August 22, 2019
    Date of Patent: September 13, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Kumar Abhijeet, Andrew D. Baptist, Wesley B. Leggette, Greg R. Dhuse, Jason K. Resch, Manish Motwani
  • Patent number: 11429486
    Abstract: In various embodiments, a method is presented for execution by a processing circuit of a storage network device that includes a processor. The method comprises: receiving, via the processing circuit, a first subset of encoded data slices of a set of encoded data slices corresponding to a data segment; identifying, via the processing circuit, at least one missing encoded data slice of the first subset of slices that is required to decode the data segment; generating, via the processing circuit, at least one rebuilt encoded data slice corresponding to the at least one missing encoded data slice utilizing locally decodable redundancy data; and recovering, via the processing circuit, the data segment based on the at least one rebuilt encoded data slice and the first subset of encoded data slices.
    Type: Grant
    Filed: October 30, 2020
    Date of Patent: August 30, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Bruno H. Cabral, Manish Motwani, Thomas D. Cocagne, Timothy W. Markison, Gary W. Grube, Wesley B. Leggette, Jason K. Resch, Michael C. Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Publication number: 20220261155
    Abstract: A computing device includes an interface configured to interface and communicate with a storage network, a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. A computing device receives a data access request for an encoded data slice associated with a data object, determines whether the encoded data slice is stored in the first memory and in response to a determination that the encoded data slice is not stored in the first memory, issues another data access request for the encoded data slice to a second memory, where the first memory includes access characteristics that are faster than the second memory. When a data access response including the encoded data slice is received from the second memory, a response including the encoded data slice is transmitted.
    Type: Application
    Filed: April 29, 2022
    Publication date: August 18, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Bruno H. Cabral, Joseph M. Kaczmarek, Ravi V. Khadiwala, Ilya Volvovski, Manish Motwani, Ethan S. Wozniak
  • Publication number: 20220171573
    Abstract: A method for execution by a computing device includes changing a decentralized agreement protocol (DAP) of a storage network to a new DAP, where storage units of the storage network store encoded data slices. The method further includes performing, based on the changing, a DAP redistribution operation that is associated with transfer of affected ones of the encoded data slices from at least one storage unit to at least one other storage unit. The method further includes maintaining, based on the changing, at least one source name address map that includes a listing of source names in accordance with storage network addresses for the at least one storage unit. The method further includes updating the at least one source name address map based on performance of the transfer of the affected ones and storing the updated at least one source name address map in a memory of the storage network.
    Type: Application
    Filed: February 16, 2022
    Publication date: June 2, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Wesley B. Leggette, Manish Motwani
  • Patent number: 11340788
    Abstract: A method for execution by a storage unit of a dispersed storage network includes receiving a proxied data access request regarding an encoded data slice from another storage unit of the DSN, where the encoded data slice is stored in the storage unit according to a distributed agreement protocol. The method continues with determining whether the other storage unit is an authentic storage unit of the DSN. When the other storage unit is the authentic storage unit, the method continues with processing the proxied data access request to produce a data access response. The method continues with sending the data access response to the other storage unit.
    Type: Grant
    Filed: January 11, 2019
    Date of Patent: May 24, 2022
    Inventors: Manish Motwani, Jason K. Resch
  • Patent number: 11250141
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes: generating an encoded data slice from a dispersed storage encoding of a data object and determining when the encoded data slice will not be stored in local dispersed storage. When the encoded data slice will not be stored in the local dispersed storage, the encoded data slice is stored via at least one elastic slice in an elastic dispersed storage, cryptographic material and an elastic storage pointer indicating a location of the elastic slice in the elastic dispersed storage are generated, and the cryptographic material and the elastic storage pointer are stored in the local dispersed storage.
    Type: Grant
    Filed: June 25, 2019
    Date of Patent: February 15, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Patent number: 11226980
    Abstract: Systems and methods for replicating containers in object storage using intents are disclosed. A DS processing unit, upon reception of a write request may determine the location of replicated instances for the container. DS processing unit can then generate an intent for each fork, to indicate a specific write request received. The DS processing unit may save or persist intent objects within one of the containers, or in a dispersed data structure. A DS unit or DS processing unit may then check for intents whose operation has not been completed, and when resources to perform the operation are available, perform the operation specified in the intent. DS processing unit can remove a pending intent once the job or operation is complete. A clean-up agent could run periodically to complete unfinished jobs that are pending within DS processing unit or DS unit due to containers not being available for whatever reason.
    Type: Grant
    Filed: March 13, 2017
    Date of Patent: January 18, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Harsha Hegde, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Daniel J. Scholl, Rohan P. Shah, Yogesh R. Vedpathak
  • Publication number: 20210373998
    Abstract: A method, system, and computer program product for implementing indices in a dispersed storage network (dsNet) are provided. The method receives a key-value pair to be stored in a dsNet. The method routes the key and the value within a data source containing a SourceName repository and a data buffer. The key is routed to the SourceName repository and the value is routed to the data buffer. The data source is erasure encoded into a set of data slices having a slice name and a slice buffer. The method stores the set of data slices within the dsNet. The method generates a namespace index with an index entry for the key-value pair. The index entry represents the key-value pair as a SourceName and a data source indicator with the SourceName and the data source indicator being associated with the set of data slices.
    Type: Application
    Filed: May 28, 2020
    Publication date: December 2, 2021
    Inventors: Gregory R. Dhuse, Ravi Khadiwala, Andrew Dominic Baptist, Jason Resch, Manish Motwani, Thomas Dubucq
  • Patent number: 11188419
    Abstract: A method, system, and computer program product for implementing indices in a dispersed storage network (dsNet) are provided. The method receives a key-value pair to be stored in a dsNet. The method routes the key and the value within a data source containing a SourceName repository and a data buffer. The key is routed to the SourceName repository and the value is routed to the data buffer. The data source is erasure encoded into a set of data slices having a slice name and a slice buffer. The method stores the set of data slices within the dsNet. The method generates a namespace index with an index entry for the key-value pair. The index entry represents the key-value pair as a SourceName and a data source indicator with the SourceName and the data source indicator being associated with the set of data slices.
    Type: Grant
    Filed: May 28, 2020
    Date of Patent: November 30, 2021
    Assignee: International Business Machines Corporation
    Inventors: Gregory R. Dhuse, Ravi Khadiwala, Andrew Dominic Baptist, Jason Resch, Manish Motwani, Thomas Dubucq
  • Publication number: 20210367932
    Abstract: A data segment is encrypted to produce an encrypted data segment, and a data tag associated with the data segment is generated. The encrypted data segment is encoded to generate a set of encoded data slices. At least a read-threshold number of encoded data slices are required to reconstruct the encrypted data segment. A set of write slice requests, which includes the set of encoded data slices and the data tag, is transmitted to a DSN memory. A determination is made, based on the data tag, whether a first encoded data slice of the set of encoded data slices is a duplicate of a second encoded data slice already stored within the DSN memory. If it is a duplicate, rather of storing the first encoded data slice, a reference to a location of the second encoded data slice is stored.
    Type: Application
    Filed: July 20, 2021
    Publication date: November 25, 2021
    Inventors: Ilya Volvovski, S. Christopher Gladwin, Gary W. Grube, Timothy W. Markison, Jason K. Resch, Thomas Franklin Shirley, JR., Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette
  • Patent number: 11182082
    Abstract: A method includes sending, by a computing device of a dispersed storage network (DSN), an inquiry to storage units of the DSN regarding status of a new vault in the DSN. The new vault is a logical storage container supported by the storage units, and the new vault is defined by vault parameters that include new vault identifier, new vault storage capabilities, access privileges, and authorized users. When a threshold number of storage units provide a status response of active and when a data access request for a set of encoded data slices is received, the computing device sends a set of access requests regarding the data access request to the storage units. When the threshold number of storage units do not provide the status response of active, the computing device facilitates activation of the new vault in at least the threshold number of storage units.
    Type: Grant
    Filed: January 9, 2019
    Date of Patent: November 23, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Franco V. Borich, Adam M. Gray, Scott M. Horan, Ravi V. Khadiwala, Mingyu Li, Manish Motwani, Jason K. Resch, Trevor J. Vossberg
  • Publication number: 20210357143
    Abstract: A method for updating software of storage units of a set of storage units in a storage network. In an embodiment, each storage unit of the set of storage units determines a data slice storage status for data slices stored in the storage unit (e.g., by monitoring rebuilding messages relating to the data slices). A processing module of the storage network obtains the data slice storage status of the storage units of the set of storage units and determines whether to perform a software update to software of the storage units of the set of storage units. Determining whether to perform the software update includes determining, based on the data slice storage status of the storage units, whether a threshold number of storage units are associated with a favorable data slice storage status. In response to determining that a threshold number of storage units are associated with a favorable data slice storage status, the processing module indicates to perform the software update.
    Type: Application
    Filed: July 30, 2021
    Publication date: November 18, 2021
    Applicant: Pure Storage, Inc.
    Inventors: Manish Motwani, Joseph M. Kaczmarek, Michael C. Storm, Ilya Volvovski, Greg R. Dhuse, Anthony J. Baldocchi, Jason K. Resch, Thomas D. Cocagne
  • Patent number: 11169731
    Abstract: A method for updating storage resources in a dispersed storage network operates to determine a storage utilization factor for a storage pool that includes a set of storage resources when old storage resources are being reallocated to new storage resources. The method continues by denying write type requests during reallocation when the storage utilization factor is at or above a threshold and processing write type requests when the storage utilization factor is at or below the threshold. When the reallocation is complete the storage utilization factor is recalculated.
    Type: Grant
    Filed: October 31, 2016
    Date of Patent: November 9, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David A. Bukiet, Bart R. Cilfone, Wesley B. Leggette, Manish Motwani, Jason K. Resch
  • Patent number: 11157362
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes: generating an encoded data slice from a dispersed storage encoding of a data object and determining when the encoded data slice will not be stored in local dispersed storage. When the encoded data slice will not be stored in the local dispersed storage, the encoded data slice is stored via at least one elastic slice in an elastic dispersed storage, an elastic storage pointer is generated indicating a location of the elastic slice in the elastic dispersed storage, and the elastic storage pointer is stored in the local dispersed storage.
    Type: Grant
    Filed: July 18, 2019
    Date of Patent: October 26, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Patent number: 11153384
    Abstract: A method by a computing device of a dispersed storage network (DSN) begins by determining whether alternate form data (AFD) exists for a data object. When the alternate form data does not exist, the method continues by identifying a content derivation function in accordance with an AFD policy of the DSN. The method continues by identifying a portion of the data object based on the content derivation function and identifying one or more sets of encoded data slices of a plurality of sets of encoded data slices corresponding to the portion of the data object. The method continues by generating at least a portion of the AFD based on the one or more sets of encoded data slices. The method continues by storing the at least a portion of the AFD within memory of the DSN in accordance with a storage approach.
    Type: Grant
    Filed: July 23, 2019
    Date of Patent: October 19, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Publication number: 20210318811
    Abstract: A method begins by a processing module of a storage network analyzing storage network memory for a level of usability and based on the analyzing, selecting alternative memory available for receipt of encoded data slices stored in current memory, where a data object is segmented into a plurality of data segments and a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices. The method continues with the processing module determining whether to move encoded data slices from current memory to alternative memory and based on a determination to move slices, allocating alternative memory. Finally, the processing module moves at least some encoded data slices from a current memory to alternate memory and updates a memory assignment mechanism for the at least some encoded data slices.
    Type: Application
    Filed: June 24, 2021
    Publication date: October 14, 2021
    Inventors: Gary W. Grube, Jason K. Resch, Timothy W. Markison, Ilya Volvovski, Manish Motwani
  • Patent number: 11145332
    Abstract: Systems and methods for proactive transfer of stored data between storage zones to avoid anticipated bit rot are provided. In embodiments, a method includes: determining that one or more quality prediction parameters of a storage zone of a data storage device meet a predetermined threshold for user access or adjacency to another storage zone determined to be unhealthy; and initiating a proactive refreshing of the storage zone based on the determining that the storage zone meets the predetermined threshold, the proactive refreshing of the storage zone including: reading all data in the storage zone; determining that no errors have occurred during the reading of the data; and based on the determination that no errors have occurred, moving all of the data of the storage zone to a new storage zone.
    Type: Grant
    Filed: March 5, 2020
    Date of Patent: October 12, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ilya Volvovski, Praveen Viraraghavan, Jordan Harrison Williams, Benjamin Lee Martin, Manish Motwani
  • Publication number: 20210280217
    Abstract: Systems and methods for proactive transfer of stored data between storage zones to avoid anticipated bit rot are provided. In embodiments, a method includes: determining that one or more quality prediction parameters of a storage zone of a data storage device meet a predetermined threshold for user access or adjacency to another storage zone determined to be unhealthy; and initiating a proactive refreshing of the storage zone based on the determining that the storage zone meets the predetermined threshold, the proactive refreshing of the storage zone including: reading all data in the storage zone; determining that no errors have occurred during the reading of the data; and based on the determination that no errors have occurred, moving all of the data of the storage zone to a new storage zone.
    Type: Application
    Filed: March 5, 2020
    Publication date: September 9, 2021
    Inventors: Ilya Volvovski, Praveen Viraraghavan, Jordan Harrison Williams, Benjamin Lee Martin, Manish Motwani
  • Patent number: 11099891
    Abstract: A method for execution by a request scheduler includes receiving a set of requests for execution from at least one request issuer. Resource requirements are determined for each of the set of requests, and current resource availability data is determined for resources indicated in the resource requirements. Scheduling data is generated for the set of requests based on the resource requirements and the current resource availability data. A first subset of the set of requests are added to a queue in response to the scheduling data indicating the first subset of the set of requests be queued for execution. Execution of the set of requests is facilitated in accordance with the scheduling data by facilitating immediate, simultaneous execution of a second subset of the set of requests and by facilitating serial execution of the first subset of the set of requests.
    Type: Grant
    Filed: April 22, 2019
    Date of Patent: August 24, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anthony J. Baldocchi, Shaorong Liu, Jordan H. Williams, Ethan S. Wozniak, Manish Motwani, Ilya Volvovski