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: 10509577
    Abstract: A method for execution by a processing system of a dispersed storage and task (DST) processing unit comprises: receiving one or more encoded data slices for storage; storing the one or more encoded data slices in one or more memories of a set of memories; determining a level redundancy for the one or more encoded data slices; generating redundancy information for the one or more encoded data slices in accordance with the level redundancy; storing the redundancy information in another one or more memories of the set of memories; determining to update the level of redundancy; determining an updated level of redundancy based on one or more of a storage utilization level and a storage reliability level; updating the redundancy information based on the updated level of redundancy and updating storage of the redundancy information based on the updated redundancy information.
    Type: Grant
    Filed: July 11, 2018
    Date of Patent: December 17, 2019
    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 Colin Storm, Greg R. Dhuse, Yogesh R. Vedpathak, Ravi V. Khadiwala
  • Patent number: 10503596
    Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes receiving a slice access request for execution by the DST execution unit. At least one ordered codec algorithm is identified. The slice access request is executed by utilizing the at least one ordered codec algorithm. A slice access response indicating an outcome of the slice access request is generated by the DST execution unit.
    Type: Grant
    Filed: May 2, 2016
    Date of Patent: December 10, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Manish Motwani, Jason K. Resch, Ilya Volvovski
  • Publication number: 20190354294
    Abstract: A computing device of a dispersed storage network includes a processing module operable to receive a plurality of requests regarding writing a plurality of data objects to storage units from a plurality of user computing devices. The processing module is further operable to activate a verification process to verify a content format verification code provided by a user computing device for a request regarding writing a data object, activate a signature process to sign the content format verification code with a trusted certificate to produce a signed content format verification code, send the trusted certificate and a signed content format verification code identification to a dispersed storage (DS) processing unit, receive a verification message indicating that the content format verification code identifies a correct format for the data object, and send the data object in the correct format to the DS processing unit for dispersed storage error encoding and storage.
    Type: Application
    Filed: July 31, 2019
    Publication date: November 21, 2019
    Inventors: Andrew D. Baptist, Bart R. Cilfone, Greg R. Dhuse, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Publication number: 20190347046
    Abstract: A computer readable storage device includes a first memory section that stores operational instructions that, when executed, cause a computing device to, as data accesses occur for a plurality of data objects of a storage container, update object values to produce updated object values, update object retention costs to produce updated object retention costs, adjust a dynamic retention threshold based on the updated object values and the updated object retention costs and update a data object retention policy for a data object based on the dynamic retention threshold to produce an updated retention policy for the data object. The computer readable storage device includes a second memory section that stores operational instructions that, when executed, cause the computing device to, when a data access is a deletion request, utilizing a current updated data object retention policy to determine and execute a deletion-retention option for the data object.
    Type: Application
    Filed: July 24, 2019
    Publication date: November 14, 2019
    Inventors: Andrew D. Baptist, Bart R. Cilfone, Greg R. Dhuse, Harsha Hegde, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Publication number: 20190349431
    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: Application
    Filed: July 23, 2019
    Publication date: November 14, 2019
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Patent number: 10474395
    Abstract: Methods for use in abstracting the addressing namespace of a dispersed storage network (DSN). In various examples, controllers are arranged hierarchically in a plurality of levels, where each level includes one or more groups of peer controllers, and each group of controllers shares a common parent controller at a next higher level. An addressing scheme is established for each group of controllers and the common parent controller. When a controller receives a request from a parent controller, and a higher level address of the request indicates that the request is to be serviced by a device at a lower level, the controller translates the higher level address to a lower level address, identifies a child controller associated with the lower level address, and generates a translated request including the lower level address and an identifier of the child controller. Responses are likewise translated and forwarded to the next higher level.
    Type: Grant
    Filed: February 22, 2017
    Date of Patent: November 12, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Wesley B. Leggette, Manish Motwani, Jason K. Resch
  • Publication number: 20190339893
    Abstract: A method for execution by a container instance manager (CIM) includes determining to create a new instance of a first data container, where the first data container is stored in a first memory location. Creation of the new instance of the first data container for storage in a second memory location is facilitated in response to the determining to create the new instance. The method further includes determining to remove a duplicate instance of a second data container. Deletion of the duplicate instance of the second data container from memory is facilitated in response to the determining to remove the duplicate instance.
    Type: Application
    Filed: July 22, 2019
    Publication date: November 7, 2019
    Inventors: Rohan P. Shah, Harsha Hegde, Wesley B. Leggette, Daniel J. Scholl, Jason K. Resch, Yogesh R. Vedpathak, Manish Motwani
  • Publication number: 20190340072
    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: Application
    Filed: July 18, 2019
    Publication date: November 7, 2019
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Patent number: 10469406
    Abstract: A processing system in a dispersed storage and a task network DSTN determines whether or not to execute a partial task. When determined to execute the partial task, the processing system operates by determining execution steps and a schedule; identifying a portion of the contiguous data for execution of one or more steps of the execution steps; retrieving the portion of the contiguous data from the disk drive; executing the one or more steps of the execution steps in accordance with the schedule on the portion of the contiguous data to produce a partial result; dispersed storage error encoding the partial result to produce a plurality of sets of slices in accordance with dispersal parameters associated with one or more of the group of slices and the partial task; and facilitating storing a plurality of sets of slices in the DSTN.
    Type: Grant
    Filed: April 9, 2019
    Date of Patent: November 5, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, S. Christopher Gladwin, Gary W. Grube, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Thomas F. Shirley, Jr., Ilya Volvovski
  • Patent number: 10459790
    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 26, 2016
    Date of Patent: October 29, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Patent number: 10452317
    Abstract: A method includes maintaining, by a storage unit, a plurality of source name based addressing maps regarding encoding data slice storage by a plurality of storage units. The method further includes receiving, by the storage unit, an access request for an encoded data slice having a source name corresponding to a DSN address. The method further includes accessing, by the storage unit, the source name based address maps to determine whether the encoded data slice is effected by the DAP redistribution operation. The method further includes, when the encoded data slice is effected by the DAP redistribution operation, determining, by the storage unit, to execute the access request, proxy the access request, or deny the access request. The method further includes, when the determination is to execute the access request, executing, by the storage unit, the access request for the encoded data slice.
    Type: Grant
    Filed: December 15, 2017
    Date of Patent: October 22, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Jason K. Resch, Wesley B. Leggette, Manish Motwani
  • Publication number: 20190320023
    Abstract: A distributed storage network (DSN) includes a DSN memory and a distributed storage (DS) processing unit. The DS processing unit determines a particular revision of source data for persistence, and generates a protocol message associated with the particular revision of source data. The protocol message is generated based on a balance between durability and persistence associated with the particular revision. The protocol message is transmitted from the DS processing unit to the DSN memory, and indicates to the DSN memory a particular persistence protocol. The DSN memory process data slices corresponding to the particular revision of source data in accordance with the particular persistence protocol.
    Type: Application
    Filed: June 28, 2019
    Publication date: October 17, 2019
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Manish Motwani, Praveen Viraraghavan, Ilya Volvovski
  • Patent number: 10447612
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) identifying a change in DSN memory of the DSN. For a set of encoded data slices effected by the change, the method continues with the processing module ascertaining updated properties of the DSN memory and performing an updating scoring function using properties of DSN access information and the updated properties of the DSN memory to produce an updated storage scoring resultant. The method continues with the processing module utilizing the updated storage scoring resultant to identify an updated set of storage units affiliated with a given storage pool of a plurality of storage pools of the DSN memory and sending at least one data migration request to at least one storage unit of the updated set of storage units regarding migration of at least one encoded data slice of the set of encoded data slices.
    Type: Grant
    Filed: May 8, 2015
    Date of Patent: October 15, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette
  • Publication number: 20190311139
    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: Application
    Filed: June 25, 2019
    Publication date: October 10, 2019
    Inventors: Wesley B. Leggette, Manish Motwani, Brian F. Ober, Jason K. Resch
  • Publication number: 20190310782
    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: Application
    Filed: June 25, 2019
    Publication date: October 10, 2019
    Inventors: Andrew D. Baptist, Manish Motwani, Praveen Viraraghavan, Ilya Volvovski
  • Patent number: 10437673
    Abstract: A method includes sending, by a computing device of a distributed storage and task (DST) network, a plurality of sets of encoded data slices and index generation task information to a set of DST execution units. The method further includes receiving partial data indexes from the set of DST execution units. The method further includes generating a data index based on the partial data indexes and determining an operational task from a list of operational tasks that includes storing the plurality of sets of encoded data slices, storing the data index, long term storage of the raw data, execute a data processing function on the sets of encoded data slices and execute a data processing function on the data index. The method further includes partitioning the operational task into a set of partial tasks and sending the set of partial tasks to the set of DST execution units.
    Type: Grant
    Filed: November 7, 2018
    Date of Patent: October 8, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Andrew D. Baptist, Greg R. Dhuse, S. Christopher Gladwin, Gary W. Grube, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Thomas F. Shirley, Jr., Ilya Volvovski
  • Patent number: 10430107
    Abstract: A method for execution by a dispersed storage and task (DST) execution unit includes obtaining a list slice request. At least one other storage unit affiliated with a DSN address range of the list slice request is identified and at least one proxied list slice request is issued to the at least one other storage unit. At least one received proxied list slice response associated with the list slice request is selected, and a list slice response is issued to the requesting entity based on the at least one selected proxied list slice response and locally stored encoded data slices associated with the list slice request.
    Type: Grant
    Filed: January 13, 2017
    Date of Patent: October 1, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Manish Motwani, Jason K. Resch
  • Publication number: 20190294359
    Abstract: A method for execution by a computing device includes detecting that an incremental storage cohort has been added to a storage generation to produce an updated plurality of storage cohorts of an updated storage generation, where each storage cohort includes a set of storage units. For each storage cohort, a slice listing process is initiated to identify a plurality of DSN addresses associated with storage of data objects within the each storage cohort. For each DSN address, ranked scoring information is obtained for the each storage cohort of the updated plurality of storage cohorts. One storage cohort is identified based on the ranked scoring information. When the identified storage cohort is different than another storage cohort associated with current storage of encoded data slices associated with the DSN address of the identified storage cohort, a migration process is initiated to migrate the encoded data slices to the identified storage cohort.
    Type: Application
    Filed: June 10, 2019
    Publication date: September 26, 2019
    Inventors: Manish Motwani, Jason K. Resch
  • Patent number: 10419538
    Abstract: A method begins by a processing module of a dispersed storage and task (DST) execution unit receiving a data request for execution by the DST execution unit, the data request including a slice name associated with an encoded data slice of the data request. The method continues with the processing module generating a scoring resultant corresponding to each of a plurality of memories of the DST execution unit, in accordance with a ranking function and the slice name. The method continues with the processing module selecting one of the plurality of memories of the DST execution unit in accordance with a mapping function and executing the data request utilizing the one of the plurality of memories of the DST execution unit.
    Type: Grant
    Filed: April 26, 2016
    Date of Patent: September 17, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Joseph M. Kaczmarek, Manish Motwani, Jason K. Resch
  • Patent number: 10416906
    Abstract: A method includes determining, by a managing unit of a dispersed storage network (DSN), an addition of a new storage unit to a group of storage units. The DSN includes a logical address space divided into a set of logical address sub-spaces, one of which is allocated to the group of storage units. The method further includes reorganizing, by the managing unit, distribution of the logical address sub-space among the new storage unit and each storage unit in the group of storage units to produce a reorganized logical address sub-space. The allocation includes the new storage unit's portion being between portions of first and second storage units. The method further includes transferring, by the first storage unit, a first group of encoded data slices to the new storage unit and transferring, by the second storage unit, a second group of encoded data slices to the new storage unit.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: September 17, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Ravi V. Khadiwala, Manish Motwani, Jason K. Resch