Patents by Inventor Ravi Khadiwala

Ravi Khadiwala 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: 10095872
    Abstract: A method begins by a set of storage units of a dispersed storage network (DSN) storing a plurality of encoded data slices, where each storage unit stores a unique sub-set of encoded data slices. The method continues with each storage unit dispersed storage error encoding at least a recovery threshold number of encoded data slices to produce a local set of encoded recovery data slices. In response to a retrieval request, the method continues with a device identifying a storage unit of an initial recovery number of storage units having a rebuilding issue and determining whether the rebuilding issue is correctable at a DSN level. When the rebuilding issue is correctable at the DSN level the method continues with the device selecting another storage unit to replace the storage unit to produce a recovery number of storage units and sending retrieve requests to the recovery number of storage units.
    Type: Grant
    Filed: March 31, 2015
    Date of Patent: October 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael Colin Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Publication number: 20180210790
    Abstract: A method begins by a dispersed storage (DS) processing module transmitting a set of write commands for storing a set of encoded data slices in storage units of a dispersed storage network (DSN) and determining whether at least a first threshold number of write responses have been received within a response time period. When the at least the first threshold number of the write responses have been received within the response time period, the method continues with the DS processing module determining whether a total number of responses have been received within another response time period. When the total number of responses have not been received within the other response time period, the method continues with the DS processing module issuing a sub-set of write commit commands corresponding to a response number of encoded data slices for which a response was received.
    Type: Application
    Filed: March 14, 2018
    Publication date: July 26, 2018
    Inventors: Ilya Volvovski, Ravi Khadiwala, Greg Dhuse, Jason K. Resch
  • Publication number: 20180191633
    Abstract: Methods and apparatus for selection of memory locations for data access operations in a dispersed storage network (DSN) are disclosed. In various embodiments, a dispersed storage (DS) processing module of the DSN receives a DSN access request regarding at least one data segment of a data object. The DS processing module determines a DSN address associated with the DSN access request and performs a scoring function using the DSN address and one or more properties of DSN memory to produce a storage scoring resultant. The storage scoring resultant is utilized to identify a set of storage units of the DSN. A set of access requests is then sent to the set of storage units regarding the DSN access request. The scoring function can include, for example, performing deterministic functions, normalizing functions and ranking functions to produce the storage scoring resultant.
    Type: Application
    Filed: February 23, 2018
    Publication date: July 5, 2018
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette, Ravi Khadiwala
  • Patent number: 9923838
    Abstract: A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) receiving a DSN access request regarding at least one data segment of a data object. The method continues with the processing module performing a scoring function using one or more properties of the DSN access request and one or more properties of DSN memory of the DSN to produce a storage scoring resultant, where the DSN memory includes a plurality of storage units that are logically arranged into a plurality of storage pools. The method continues with the processing module utilizing the storage scoring resultant to identify a set of storage units of the plurality of storage units affiliated with a given storage pool of the plurality of storage pools. The method continues with the processing module sending a set of access requests to the set of storage units regarding the DSN access request.
    Type: Grant
    Filed: May 8, 2015
    Date of Patent: March 20, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Greg Dhuse, Manish Motwani, Andrew Baptist, Wesley Leggette, Ravi Khadiwala
  • Patent number: 9921907
    Abstract: A method begins by a dispersed storage (DS) processing module transmitting a set of write commands for storing a set of encoded data slices in storage units of a dispersed storage network (DSN) and determining whether at least a first threshold number of write responses have been received within a response time period. When the at least the first threshold number of the write responses have been received within the response time period, the method continues with the DS processing module determining whether a total number of responses have been received within another response time period. When the total number of responses have not been received within the other response time period, the method continues with the DS processing module issuing a sub-set of write commit commands corresponding to a response number of encoded data slices for which a response was received.
    Type: Grant
    Filed: February 9, 2017
    Date of Patent: March 20, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ilya Volvovski, Ravi Khadiwala, Greg Dhuse, Jason K. Resch
  • Patent number: 9900316
    Abstract: A method begins with a group of storage units of a dispersed storage network (DSN) receiving a common access request. The method continues with each storage unit of the group of storage units interpreting the access request to determine whether the storage unit is an intended recipient of the access request, where storage units of a sub-set of storage units of the group of storage units are intended recipients. The method continues with each storage unit of the sub-set of storage units determining a type of the access request and a level of the access request. When the access request is a read request, the method continues with each storage unit of the sub-set of storage units retrieving each encoded data slice having an identifier of its slice address substantially matching the a given identifier of the level to produce a retrieved set of encoded data slices.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: February 20, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Ravi Khadiwala, Greg Dhuse
  • Publication number: 20180024887
    Abstract: A computing device of a dispersed storage network (DSN) includes a memory, interface and a processing module operable to identify an encoded data slice of the set of encoded data slices to produce an identified encoded data slice. The processing module generates a set of first write requests regarding the set of encoded data slices less the identified encoded data slice, and generates a set of second write requests regarding the identified encoded data slice. The set of second write requests include the identified encoded data slice and replications of the identified encoded data slice. The processing module sends the set of first write requests to storage units of the DSN, and sends the set of second write requests to a set of storage units of the DSN, where each storage unit of the set of storage units is sent a corresponding one of the set of second write requests.
    Type: Application
    Filed: September 15, 2017
    Publication date: January 25, 2018
    Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski
  • Patent number: 9841925
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) unit of a plurality of DSN units sending a write request to DSN memory, where the write request includes a range of DSN addresses. The method continues with the DSN unit receiving an error message indicating that another DSN unit of the plurality of DSN units has current write permission to the DSN memory to the range of DSN addresses. The method continues with the DSN unit performing a scoring function using one or more properties of the range of DSN addresses and one or more properties of each of at least some of the plurality of DSN units to produce a scoring resultant, interpreting the scoring resultant to determine a re-write requesting protocol for resending the write request to the DSN memory, and resending the write request in accordance with the re-write requesting protocol.
    Type: Grant
    Filed: May 26, 2015
    Date of Patent: December 12, 2017
    Assignee: International Business Machines Corporation
    Inventors: Ravi Khadiwala, Jason K. Resch
  • Patent number: 9778987
    Abstract: A method for writing a set of encoded data slices to memory of a dispersed storage network (DSN) begins by a processing module identifying an encoded data slice of the set of encoded data slices for a redundant write operation to produce an identified encoded data slice. The method continues with the processing module generating a set of first write requests regarding the set of encoded data slices less the identified encoded data slice and generating a set of second write requests regarding the identified encoded data slice. The method continues with the processing module sending the set of first write requests to storage units of the DSN and sending the set of second write requests to a set of storage units of the DSN, where each storage unit of the set of storage units is sent a corresponding one of the set of second write requests.
    Type: Grant
    Filed: December 15, 2014
    Date of Patent: October 3, 2017
    Assignee: International Business Machines Corporation
    Inventors: Thomas Franklin Shirley, Jr., Gary W. Grube, Bart Cilfone, Ravi Khadiwala, Greg Dhuse, Thomas Darrel Cocagne, Michael Colin Storm, Yogesh Ramesh Vedpathak, Wesley Leggette, Jason K. Resch, Andrew Baptist, Ilya Volvovski
  • Patent number: 9727427
    Abstract: A method begins with storage units receiving a request to transfer a copy of a set of encoded data slices from two or more source virtual storage vaults to a destination virtual storage vault. The method continues with each storage unit obtaining a slice transfer map and determining whether the storage unit supports one of the two or more source virtual storage vaults. For each supporting storage unit, the method continues with each supporting storage unit determining, based on the slice transfer map, a sub-set of encoded data slices of the set of encoded data slices that is stored within the one of the two or more source virtual storage vaults by the supporting storage unit. The method continues with the supporting storage unit sending the sub-set of encoded data slices to a corresponding storage unit that is supporting the destination virtual storage vault.
    Type: Grant
    Filed: October 29, 2015
    Date of Patent: August 8, 2017
    Assignee: International Business Machines Corporation
    Inventors: Adam Michael Gray, Greg Dhuse, Andrew Baptist, Ravi Khadiwala, Wesley Leggette, Scott Michael Horan, Franco Vincent Borich, Bart Cilfone, Daniel Scholl
  • Publication number: 20170147428
    Abstract: A method begins by a dispersed storage (DS) processing module transmitting a set of write commands for storing a set of encoded data slices in storage units of a dispersed storage network (DSN) and determining whether at least a first threshold number of write responses have been received within a response time period. When the at least the first threshold number of the write responses have been received within the response time period, the method continues with the DS processing module determining whether a total number of responses have been received within another response time period. When the total number of responses have not been received within the other response time period, the method continues with the DS processing module issuing a sub-set of write commit commands corresponding to a response number of encoded data slices for which a response was received.
    Type: Application
    Filed: February 9, 2017
    Publication date: May 25, 2017
    Inventors: Ilya Volvovski, Ravi Khadiwala, Greg Dhuse, Jason K. Resch
  • Patent number: 9652470
    Abstract: A method begins by a dispersed storage (DS) processing module transmitting a set of write commands for storing a set of encoded data slices in storage units of a dispersed storage network (DSN) and determining whether at least a first threshold number of write responses have been received within a response time period. When the at least the first threshold number of the write responses have been received within the response time period, the method continues with the DS processing module determining whether a total number of responses have been received within another response time period. When the total number of responses have not been received within the other response time period, the method continues with the DS processing module issuing a sub-set of write commit commands corresponding to a response number of encoded data slices for which a response was received.
    Type: Grant
    Filed: June 17, 2014
    Date of Patent: May 16, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ilya Volvovski, Ravi Khadiwala, Greg Dhuse, Jason K. Resch
  • Publication number: 20170116082
    Abstract: A method includes identifying a data object for retrieval. The data object is encoded in accordance with first encoded parameters and stored as a plurality of sets of encoded data slices in a set of storage units. The method further includes determining whether an access metric regarding the data object exceeds an access threshold. When the access metric is equal to or exceeds the access threshold, the data object is further encoded in accordance with second encoding parameters and stored as a second plurality of sets of encoded data slices in a second set of storage units. The method further includes issuing retrieval requests to the second set of storage units regarding the second plurality of encoded data slices in accordance with a read threshold of the second encoding parameters. The method further includes recovering the data object from the second plurality of encoded data slices.
    Type: Application
    Filed: January 6, 2017
    Publication date: April 27, 2017
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael Colin Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Patent number: 9606867
    Abstract: When an access metric regarding an encoded data object exceeds an access threshold, a method begins by a processing module of a dispersed storage network (DSN) retrieving encoded data slices of a first plurality of sets of encoded data slices and recovering the data object utilizing first dispersed storage error encoding parameters. The method continues with the processing module re-encoding the recovered data object using second dispersed storage error encoding parameters to produce a re-encoded data object, where the re-encoded data object includes a second plurality of sets of encoded data slices. The method continues with the processing module outputting the second plurality of sets of encoded data slices to storage units of the DSN for storage therein and sending a message to retrieving devices of the DSN, where the message indicates use of the second plurality of sets of encoded data slices for the data object.
    Type: Grant
    Filed: April 7, 2015
    Date of Patent: March 28, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ilya Volvovski, Bruno Hennig Cabral, Manish Motwani, Thomas Darrel Cocagne, Timothy W. Markison, Gary W. Grube, Wesley Leggette, Jason K. Resch, Michael Colin Storm, Greg Dhuse, Yogesh Ramesh Vedpathak, Ravi Khadiwala
  • Patent number: 9594639
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) ascertaining a decode threshold value for dispersed storage error encoding data for storage in storage units of the DSN. The method continues with the processing module determining a total width value for the dispersed storage error encoding based on the decode threshold value, a number of selected sites within the DSN, and a number of selected storage units of the selected sites. The method continues with the processing module determining logical storage slots within the selected storage units based on the total width value, the number of selected, and the number of selected storage units. The method continues with the processing module writing a set of encoded data slices to a total width value of the logical storage slots within at least some of the selected storage units of the selected sites based on a slice-to-slot mapping.
    Type: Grant
    Filed: October 29, 2014
    Date of Patent: March 14, 2017
    Assignee: International Business Machines Corporation
    Inventors: Ravi Khadiwala, Wesley Leggette, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch, Manish Motwani
  • Publication number: 20170063402
    Abstract: A method includes determining an acceptable site failure number for storing a set of encoded data slices based on available sites and storage units within the available sites. The method further includes determining dispersed storage error encoding parameters based on the acceptable site failure number, wherein the parameters includes a decode threshold number and a total width number. The method further includes encoding, in accordance with the parameters, a data segment of data to produce the set of encoded data slices. The method further includes generating a slice mapping based on the acceptable site failure number, the available sites, and the storage units within the available storage units within the available sites. The method further includes sending, based on the slice mapping, the set of encoded data slices to at least some of the storage units within at least some of the available sites for storage therein.
    Type: Application
    Filed: November 14, 2016
    Publication date: March 2, 2017
    Inventors: Ravi Khadiwala, Wesley Leggette, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch, Manish Motwani
  • Publication number: 20160292254
    Abstract: A method begins by a first computing device of a plurality of computing devices accessing a rebuild hierarchical index structure to identify a data object having encoded data slices requiring rebuilding, where the structure includes a plurality of nodes that organizes a plurality of data objects based on a level of need of rebuilding. The method continues with the first computing device utilizing a rebuilding function to rebuild one or more of the identified encoded data slices to be rebuilt to produce one or more rebuilt encoded data slices and sending a write request to memory of a dispersed storage network to store the one or more rebuilt encoded data slices. The method continues with the first or another computing device updating the level of need of rebuilding of the identified data object and updating the rebuild hierarchical index structure based on the updated level of need of rebuilding.
    Type: Application
    Filed: January 26, 2016
    Publication date: October 6, 2016
    Applicant: International Business Machines Corporation
    Inventors: Greg Dhuse, Ravi Khadiwala, Thomas Darrel Cocagne, Andrew Baptist, Joseph Martin Kaczmarek
  • Publication number: 20160188218
    Abstract: A method begins with storage units receiving a request to transfer a copy of a set of encoded data slices from two or more source virtual storage vaults to a destination virtual storage vault. The method continues with each storage unit obtaining a slice transfer map and determining whether the storage unit supports one of the two or more source virtual storage vaults. For each supporting storage unit, the method continues with each supporting storage unit determining, based on the slice transfer map, a sub-set of encoded data slices of the set of encoded data slices that is stored within the one of the two or more source virtual storage vaults by the supporting storage unit. The method continues with the supporting storage unit sending the sub-set of encoded data slices to a corresponding storage unit that is supporting the destination virtual storage vault.
    Type: Application
    Filed: October 29, 2015
    Publication date: June 30, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Adam Michael Gray, Greg Dhuse, Andrew Baptist, Ravi Khadiwala, Wesley Leggette, Scott Michael Horan, Franco Vincent Borich, Bart Cilfone, Daniel Scholl
  • Patent number: 9336824
    Abstract: In one embodiment, a method includes analyzing characteristics of a media program to label parts of the media program with a plurality of labels where parts of the media program that are determined to be substantially similar are labeled with a same label. The method then analyzes different partitionings of a sequence of the labels to determine partitions for the media program based on a weighting function that is configured to weight the different partitionings based on portions created from the partitions in the different partitionings. Then, a partitioning for the media program is outputted based on comparing the different partitionings of the sequence of labels using the weighting function. The outputted partitioning partitions the media program into a set of portions and provides points for insertion of information for a service in the media program.
    Type: Grant
    Filed: February 19, 2014
    Date of Patent: May 10, 2016
    Assignee: HULU, LLC
    Inventors: Ravi Khadiwala, Baptiste Coudurier
  • Publication number: 20150378616
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) unit of a plurality of DSN units sending a write request to DSN memory, where the write request includes a range of DSN addresses. The method continues with the DSN unit receiving an error message indicating that another DSN unit of the plurality of DSN units has current write permission to the DSN memory to the range of DSN addresses. The method continues with the DSN unit performing a scoring function using one or more properties of the range of DSN addresses and one or more properties of each of at least some of the plurality of DSN units to produce a scoring resultant, interpreting the scoring resultant to determine a re-write requesting protocol for resending the write request to the DSN memory, and resending the write request in accordance with the re-write requesting protocol.
    Type: Application
    Filed: May 26, 2015
    Publication date: December 31, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Ravi Khadiwala, Jason K. Resch