Patents by Inventor Michael Colin Storm

Michael Colin Storm 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: 9495118
    Abstract: A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) sending a plurality of sets of encoded data slices to DSN memory for storage in accordance with a plurality of sets of DSN data addresses. The method continues with the DS processing module generating retrieval data that is based on a data object number and data storage information. The method continues with the DS processing module dispersed storage error encoding the retrieval data to produce a set of encoded retrieval data slices and generating a set of DSN retrieval data addresses based on the data name and on retrieval data storage information. The method continues with the DS processing module sending the set of encoded retrieval data slices to the DSN memory for storage in accordance with the set of DSN retrieval data addresses.
    Type: Grant
    Filed: June 18, 2014
    Date of Patent: November 15, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Manish Motwani, Michael Colin Storm, Ilya Volvovski, Greg Dhuse, Andrew Baptist, Wesley Leggette
  • Patent number: 9456035
    Abstract: A method begins by each of a group of write requesting modules of a dispersed storage network (DSN) generating one or more sets of write requests regarding one of a group of portions of related data, sending a group of the one or more sets of write requests to DSN memory, and sending binding information to a binding module. The method continues with the binding module processing remaining phases of the group of the one or more sets of write requests for writing the related data into the DSN memory as a single set of write requests and notifying the write requesting modules of status of the writing the related data into the DSN memory at completion of the processing of the remaining phases such that the related data is made accessible as a single piece of data when the processing of the remaining phases is successful.
    Type: Grant
    Filed: March 17, 2014
    Date of Patent: September 27, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Michael Colin Storm, Wesley Leggette, Manish Motwani, Greg Dhuse, Jason K. Resch, Andrew Baptist
  • Publication number: 20160266839
    Abstract: A method includes temporarily modifying a response action plan based on data access performance data of storage units. The response action plan includes, for a particular type of data access request, a preferred set of the storage units to perform the particular type of data access request. The temporarily modified response action plan includes, for the particular type of data access request, an alternate preferred set of storage units to perform the particular type of data access request. The method further includes receiving the particular type of data access request from a requesting computing device. The method further includes, when the response action plan is active, processing the particular type of data access request by the preferred set of the storage units and, when the temporarily modified response action plan is active, processing the particular type of data access request by the alternate preferred set of the storage units.
    Type: Application
    Filed: May 23, 2016
    Publication date: September 15, 2016
    Inventors: Michael Colin Storm, Jason K. Resch
  • Patent number: 9348698
    Abstract: A method includes segmenting a data object into data segments based on segmenting information. For a first data segment, the method further includes dispersed storage error encoding the first data segment. The method further includes identifying a first set of storage units from a pool of storage units. The method further includes issuing a first set of write requests to the first set of storage units. The method further includes receiving write responses from the first set of storage units. The method further includes, when a write threshold number of favorable write responses have been received, generating a first DSN addresses for encode data slices based on Internet addresses of storage units that provided the favorable write responses and based on the temporary slice names of the encoded data slices. The method further includes storing an association of the first DSN addresses and the first encode data slices.
    Type: Grant
    Filed: November 30, 2015
    Date of Patent: May 24, 2016
    Assignee: International Business Machines Corporation
    Inventors: Michael Colin Storm, Jason K. Resch
  • Publication number: 20160085629
    Abstract: A method includes segmenting a data object into data segments based on segmenting information. For a first data segment, the method further includes dispersed storage error encoding the first data segment. The method further includes identifying a first set of storage units from a pool of storage units. The method further includes issuing a first set of write requests to the first set of storage units. The method further includes receiving write responses from the first set of storage units. The method further includes, when a write threshold number of favorable write responses have been received, generating a first DSN addresses for encode data slices based on Internet addresses of storage units that provided the favorable write responses and based on the temporary slice names of the encoded data slices. The method further includes storing an association of the first DSN addresses and the first encode data slices.
    Type: Application
    Filed: November 30, 2015
    Publication date: March 24, 2016
    Applicant: International Business Machines Corporation
    Inventors: Michael Colin Storm, Jason K. Resch
  • Patent number: 9223653
    Abstract: A method includes storing tasks in a task queue. The method continues with computing devices retrieving at least some of the plurality of tasks for execution. The method includes a computing device issuing read requests and initiate delete requests to storage units regarding an unassigned task, wherein the initiate delete requests instruct the storage units to flag for deletion, but not execute deletion, of a set of encoded task slices corresponding to the unassigned task. The method continues with the computing device receiving responses. When the responses include encoded task slices, the method continues with the computing device decoding them to recover the unassigned task. The method continues with the computing device executing the recovered task and, when execution is successful, issuing commit delete requests to the storage units that instruct the storage units to delete the set of encoded task slices for the unassigned task.
    Type: Grant
    Filed: May 5, 2015
    Date of Patent: December 29, 2015
    Assignee: International Business Machines Corporation
    Inventors: Michael Colin Storm, Jason K. Resch
  • Publication number: 20150356305
    Abstract: A method begins by a processing module of a dispersed storage network (DSN) dividing data into a plurality of data units and generating a plurality of encryption keys from a master key associated with the data and a data identifier associated with the data. The method continues with the processing module encrypting the plurality of data units using the plurality of encryption keys to produce a plurality of encrypted data units and sending the plurality of encrypted data units to a first set of storage units of the DSN for storage. The method continues with the processing module encoding the master key to produce a plurality of encoded master key units and sending the plurality of encoded master key units to a second set of storage units of the DSN for storage.
    Type: Application
    Filed: March 31, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    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: 20150355960
    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: Application
    Filed: April 7, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    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: 20150355980
    Abstract: A method begins by storage units of a dispersed storage network (DSN) receiving a retrieval request for a data object, where each storage unit stores a unique group of encoded data slices of the data object and a local set of encoded recovery data slices. The method continues with some storage units sending the unique group of encoded data slices to a requesting computing device and with one storage unit sending an encoded recovery data slice to the requesting computing device. The method continues with the requesting computing device identifying an errant unique group encoded data slice, correcting the errant encoded data slice based on received data slices to produce an updated unique group of encoded data slices, and dispersed storage error decoding the updated unique group of encoded data slices and the unique groups of encoded data slices from other storage units to recover the data object.
    Type: Application
    Filed: March 31, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    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: 20150355979
    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: Application
    Filed: March 31, 2015
    Publication date: December 10, 2015
    Applicant: CLEVERSAFE, INC.
    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: 20150234708
    Abstract: A method includes storing tasks in a task queue. The method continues with computing devices retrieving at least some of the plurality of tasks for execution. The method includes a computing device issuing read requests and initiate delete requests to storage units regarding an unassigned task, wherein the initiate delete requests instruct the storage units to flag for deletion, but not execute deletion, of a set of encoded task slices corresponding to the unassigned task. The method continues with the computing device receiving responses. When the responses include encoded task slices, the method continues with the computing device decoding them to recover the unassigned task. The method continues with the computing device executing the recovered task and, when execution is successful, issuing commit delete requests to the storage units that instruct the storage units to delete the set of encoded task slices for the unassigned task.
    Type: Application
    Filed: May 5, 2015
    Publication date: August 20, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Michael Colin Storm, Jason K. Resch
  • Publication number: 20150220396
    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: Application
    Filed: December 15, 2014
    Publication date: August 6, 2015
    Applicant: CLEVERSAFE, INC.
    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: 9043499
    Abstract: A dispersed storage network memory includes a pool of storage nodes, where the pool of storage nodes stores a multitude of encoded data files. A storage node obtains and analyzes data access response performance data for each of the storage nodes to produce a modified data access response plan that includes identity of an undesired performing storage node and an alternative data access response for the undesired performing storage node. The storage nodes receive corresponding portions of a data access request for at least a portion of one of the multitude of encoded data files. The undesired performing storage node or another storage node processes one of the corresponding portions of the data access request in accordance with the alternative data access response.
    Type: Grant
    Filed: December 11, 2013
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Michael Colin Storm, Jason K. Resch
  • Publication number: 20150066879
    Abstract: A method begins by a dispersed storage (DS) processing module receiving access requests, processing data set requests and issuing access responses. The method continues by monitoring slice access requests to generate access records by either storing time stamped access records indicating identities of slices requested by a timestamp or by commonality of slice names. The method continues with determining a correlation of two or more slice access based on the access records when a correlation is greater than a correlation threshold and identifying two or more slices for co-location. The method continues when the two or more slices are not co-located by selecting one or more of the two or more slices for migration to a common memory device.
    Type: Application
    Filed: July 11, 2014
    Publication date: March 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Andrew Baptist, Wesley Leggette, Michael Colin Storm
  • Publication number: 20150067295
    Abstract: A method begins by a dispersed storage (DS) processing module selecting storage pools within the DSN with available capacity for storing data of a storage group. The method continues by selecting one or more dispersed storage (DS) units within each of the selected storage pools based on a selection criteria and mapping the one or more DS units to the storage group. The method continues by receiving a write request to store a data object to the storage group and by storing the data object in at least one of the mapped one or more DS units. The method continues with the DS processing module issuing an indication unutilized storage space calculated on a proportionate basis based on storage utilized for the storage group as a percentage of total storage utilized and updating a write proportion value based on received storage utilization responses.
    Type: Application
    Filed: July 11, 2014
    Publication date: March 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Michael Colin Storm, Manish Motwani, Wesley Leggette
  • Publication number: 20150039969
    Abstract: A method begins by a dispersed storage (DS) processing module of a dispersed storage network (DSN) sending a plurality of sets of encoded data slices to DSN memory for storage in accordance with a plurality of sets of DSN data addresses. The method continues with the DS processing module generating retrieval data that is based on a data object number and data storage information. The method continues with the DS processing module dispersed storage error encoding the retrieval data to produce a set of encoded retrieval data slices and generating a set of DSN retrieval data addresses based on the data name and on retrieval data storage information. The method continues with the DS processing module sending the set of encoded retrieval data slices to the DSN memory for storage in accordance with the set of DSN retrieval data addresses.
    Type: Application
    Filed: June 18, 2014
    Publication date: February 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Manish Motwani, Michael Colin Storm, Ilya Volvovski, Greg Dhuse, Andrew Baptist, Wesley Leggette
  • Publication number: 20150039660
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a data object co-locate write request. The method continues with the DS processing module obtaining a plurality of sets of encoded data slices for a data object to co-locate. The method continues with the DS processing module generating a plurality of sets of slice names for the data object to co-locate based on another plurality of sets of slice names associated with a data object to be co-located with. The method continues with the DS processing module storing the plurality of sets of encoded data slices in the DSN using the generated plurality of sets of slice names for the data object co-locate.
    Type: Application
    Filed: May 30, 2014
    Publication date: February 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Michael Colin Storm
  • Publication number: 20140330921
    Abstract: A method begins by each of a group of write requesting modules of a dispersed storage network (DSN) generating one or more sets of write requests regarding one of a group of portions of related data, sending a group of the one or more sets of write requests to DSN memory, and sending binding information to a binding module. The method continues with the binding module processing remaining phases of the group of the one or more sets of write requests for writing the related data into the DSN memory as a single set of write requests and notifying the write requesting modules of status of the writing the related data into the DSN memory at completion of the processing of the remaining phases such that the related data is made accessible as a single piece of data when the processing of the remaining phases is successful.
    Type: Application
    Filed: March 17, 2014
    Publication date: November 6, 2014
    Applicant: CLEVERSAFE, INC.
    Inventors: Michael Colin Storm, Wesley Leggette, Manish Motwani, Greg Dhuse, Jason K. Resch, Andrew Baptist
  • Publication number: 20140223095
    Abstract: A dispersed storage network memory includes a pool of storage nodes, where the pool of storage nodes stores a multitude of encoded data files. A storage node obtains and analyzes data access response performance data for each of the storage nodes to produce a modified data access response plan that includes identity of an undesired performing storage node and an alternative data access response for the undesired performing storage node. The storage nodes receive corresponding portions of a data access request for at least a portion of one of the multitude of encoded data files. The undesired performing storage node or another storage node processes one of the corresponding portions of the data access request in accordance with the alternative data access response.
    Type: Application
    Filed: December 11, 2013
    Publication date: August 7, 2014
    Applicant: Cleversafe, Inc.
    Inventors: Michael Colin Storm, Jason K. Resch