Patents by Inventor Ilya Volvovski

Ilya Volvovski 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: 10346218
    Abstract: A processing system in a dispersed storage and a task (DST) network operates by receiving data and a corresponding task; identifying candidate DST execution units for executing partial tasks of the corresponding task; receiving distributed computing capabilities of the candidate DST execution units; selecting a subset of DST execution units of the candidate DST execution units to favorably execute the partial tasks of the corresponding task; determining task partitioning of the corresponding task into the partial tasks based on one or more of the distributed computing capabilities of the subset of DST execution units; determining processing parameters of the data based on the task partitioning; partitioning the tasks based on the task partitioning to produce the partial tasks; processing the data in accordance with the processing parameters to produce slice groupings; and sending the slice groupings and the partial tasks to the subset of DST execution units.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    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: 10348640
    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: February 28, 2017
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    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: 10346250
    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: Grant
    Filed: November 14, 2016
    Date of Patent: July 9, 2019
    Assignee: International Business Machines Corporation
    Inventors: Ravi Khadiwala, Wesley Leggette, Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch, Manish Motwani
  • Patent number: 10346246
    Abstract: A method for use in a dispersed storage network operates to initiate retrieval of a decode threshold number of encoded data slices of each of one or more sets of encoded data slices in accordance with a first recovery approach. When a recovery time frame expires prior to receiving a second decode threshold number of encoded data slices of each of the one or more second sets of encoded data slices, the method proceeds to select a second data recovery approach that differs from the first recovery approach; recover a sufficient number of encoded data slices in accordance with the second data recovery approach; and dispersed storage error decode the sufficient number of encoded data slices to produce recovered data.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Jason K. Resch, Ilya Volvovski, Ethan S. Wozniak
  • Publication number: 20190190844
    Abstract: Methods and apparatus for a decentralized agreement protocol in a dispersed storage network (DSN) are disclosed. In various embodiments, a processing module(s) receives a ranked scoring information request regarding a set of candidate resources of the DSN. For each candidate resource, a deterministic function is performed on a location identifier (ID) associated with the candidate resource and an asset ID associated with the ranked scoring information request to produce a set of interim results. A normalizing function is performed on each interim result to produce a set of normalized interim results. A scoring function is performed on each normalized interim result utilizing a location weight associated with the candidate resource corresponding to the interim result to produce a score of a set of scores. The scores of the set of scores are ranked by a ranking function to produce ranked scoring information that is provided to the requesting entity.
    Type: Application
    Filed: February 8, 2019
    Publication date: June 20, 2019
    Inventors: Jason K. Resch, Greg R. Dhuse, Ravi V. Khadiwala, Ilya Volvovski
  • Patent number: 10324791
    Abstract: A method includes a computing device determining dispersed storage error encoded parameters for dispersed storage error encoding a data object. The method further includes the computing device dividing the dispersed storage error encoding into a plurality of encoding tasks. The method further includes allocating, by the computing device, the encoding tasks to a plurality of central processing units (CPUs) available to the computing device. The method further includes dispersed storage error encoding, by the CPUs, the data segments into the plurality of sets of encoded data slices in accordance with the encoding tasks. The method further includes sending, by the computing device, the plurality of sets of encoded data slices to storage units of the DSN for storage therein.
    Type: Grant
    Filed: November 28, 2016
    Date of Patent: June 18, 2019
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski
  • Patent number: 10326740
    Abstract: An encryption module encrypts starting data using a random key to produce encrypted data. A hash module performs a secure hash function on the encrypted data using a secret key to produce a hash value. Processing circuitry masks the random key using the hash value to produce a masked random key, and combines the encrypted data and the masked random key to produce a secure package. A distributed storage and task module encodes the secure package to produce a set of encoded data slices. The secret key and a decode threshold number of the encoded data slices included in the set of encoded data slices are sufficient to recover the secure package and the starting data. The set of encoded data slices is stored in a set of storage units.
    Type: Grant
    Filed: January 19, 2017
    Date of Patent: June 18, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason K. Resch, Mark D. Seaborn, Ilya Volvovski
  • Patent number: 10318549
    Abstract: A method includes queuing a plurality of changes to a hierarchical index construct including a plurality of index structures. An index structure includes a plurality of nodes and a node is dispersed storage error encoded to produce a set of encoded data slices (EDSs). The method further includes, when triggered, determining a plurality of affected nodes of the plurality of index structures based on the plurality of changes. The method further includes retrieving a threshold number of EDSs and dispersed storage error decoding the threshold number of EDSs to produce the plurality of affected nodes. The method further includes, for a change of the plurality of changes, identifying one or more nodes of the plurality of affected nodes for which the change is applicable and updating each of the one or more nodes based on the change to produce updated one or more nodes.
    Type: Grant
    Filed: November 17, 2017
    Date of Patent: June 11, 2019
    Assignee: International Business Machines Corporation
    Inventors: Greg R. Dhuse, Ilya Volvovski
  • Patent number: 10318382
    Abstract: A method includes determining, by a computing device of a dispersed storage network (DSN), a source name for a data object to be scanned for missing encoded data slices. The method further includes issuing list source requests to the set of storage units. When a list source response is not received from a storage unit of the set of storage units within a response timeframe, the method further includes identifying one or more encoded data slices stored on the storage unit as potentially missing encoded data slices; determining a next level missing encoded data slice determination approach for the storage unit based on one or more of: a number of potentially missing encoded data slices, a performance goal, a network loading level, a rebuilding loading level, a predetermination, and an entry of a system registry; and executing the next level missing encoded data slice determination approach.
    Type: Grant
    Filed: October 3, 2018
    Date of Patent: June 11, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Shirley, Jr., Gary W. Grube, Bart R. Cilfone, Ravi V. Khadiwala, Greg R. Dhuse, Thomas D. Cocagne, Michael C. Storm, Yogesh R. Vedpathak, Wesley B. Leggette, Jason K. Resch, Andrew D. Baptist, Ilya Volvovski
  • Publication number: 20190171524
    Abstract: Methods and apparatus for isolating the introduction of software defects in a dispersed storage network (DSN) are disclosed. In various embodiments, a search strategy is employed whereby after identifying a test failure in a current version of the memory software code, a sequence of interim versions of the code between the current version of the memory software code and a previous successfully tested version of the code is determined. A first version of the memory software code is selected from the sequence of interim versions (e.g., from the middle of or approximately in the middle of the sequence) and tested. When testing of the first version does not result in a test failure, a second version of the memory software code is tested, the second version selected from a sub-sequence of the sequence of interim versions between the first version of the code and the current version of the code.
    Type: Application
    Filed: January 28, 2019
    Publication date: June 6, 2019
    Inventors: Teague S. Algie, Andrew G. Peake, Mark D. Seaborn, Ilya Volvovski
  • Publication number: 20190171394
    Abstract: A method begins by determining, by an authenticated device of a dispersed storage network (DSN), whether an access request from a requesting device is affiliated with an anonymous user or an authenticated user. When the requesting device is affiliated with the anonymous user, the method continues by determining, by the authenticated device, status of the anonymous user where the status of the anonymous user includes one of minimal threat, non-minimal threat, and significant threat. The method continues by processing, by the authenticated device, the access request in accordance with the status of the anonymous user.
    Type: Application
    Filed: January 24, 2019
    Publication date: June 6, 2019
    Inventors: Jason K. Resch, Mark D. Seaborn, Ilya Volvovski
  • Publication number: 20190163647
    Abstract: A method includes a storage unit receiving an encoded data slice for storage in memory that is organized as log files. The method further includes the storage unit identifying a first log file of the log files for storing the encoded data slice based on one or more of: the first DSN virtual address and the first size information. The method further includes the storage unit comparing storage parameters of the first log file with desired storage parameters associated with the encoded data slice. When the storage parameters of the identified log file compare unfavorably with the desired storage parameters, the storage unit identifies a second log file, stores the encoded data slice in the second log file, and updates a slice location table.
    Type: Application
    Filed: January 15, 2019
    Publication date: May 30, 2019
    Inventors: Ilya Volvovski, Andrew Baptist, Greg Dhuse, Jason K. Resch
  • Patent number: 10303521
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), by selecting a number of distributed storage and task execution (DST) EX units to favorably execute partial tasks of the corresponding tasks. The method continues by determining task partitioning based on one or more of distributed computing capabilities of the selected DST EX units. The method continues by determining processing parameters of the data based on the task partitioning. The method continues by partitioning the task(s) based on the task partitioning to produce the partial tasks. The method continues by processing the data in accordance with the processing parameters to produce slice groupings and sending the slice groupings and corresponding partial tasks to the DST EX units in accordance with a pillar mapping.
    Type: Grant
    Filed: November 2, 2016
    Date of Patent: May 28, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    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: 10304096
    Abstract: A computing device that includes an interface, a memory, and a processing module receives a data access request from a requesting computing device and processes them to produce a set of distributed storage (DS) access requests. The computing device then transmits the set of DS access requests to a set of storage units (SUs) via a DSN connection that is between the computing device and the set of SUs and monitors the DSN connection to generate utilization information. The computing device then receives a set of DS access responses from the set of SUs via the DSN connection and monitors the DSN connection to generate updated utilization information. The computing device then transmits a data access response to the requesting computing device and generates billing information based on at least one of the updated utilization information associated with the DSN connection, a level of billing, and a billing rate.
    Type: Grant
    Filed: August 11, 2017
    Date of Patent: May 28, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ilya Volvovski, S. Christopher Gladwin, Gary W. Grube, Timothy W. Markison, Jason K. Resch, Thomas F. Shirley, Jr., Greg R. Dhuse, Manish Motwani, Andrew D. Baptist, Wesley B. Leggette
  • Patent number: 10305989
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The processing circuitry is configured to execute the operational instructions to perform various operations and functions. The computing device detects a potentially adverse storage issue with a memory device of a storage unit (SU) of set(s) of storage unit(s) (SU(s)). The computing device also determines whether to transfer at least one EDSs (associated with the memory device) to another memory device for temporary storage therein. Based on a determination not to transfer, the computing device identifies at least one alternate storage location and facilitates transfer of the at least one EDSs for temporary storage therein. When the potentially adverse storage issue has subsided, the computing device facilitates transfer of the at least one EDSs back.
    Type: Grant
    Filed: October 25, 2018
    Date of Patent: May 28, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Niall J. McShane, Ilya Volvovski, Randy D. Pfeifer, Andrew D. Baptist, Manish Motwani, Greg R. Dhuse
  • Patent number: 10303548
    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: March 14, 2018
    Date of Patent: May 28, 2019
    Assignee: International Business Machines Corporation
    Inventors: Ilya Volvovski, Ravi Khadiwala, Greg Dhuse, Jason K. Resch
  • Publication number: 20190155689
    Abstract: A system includes a plurality of functional rating modules configured to execute a deterministic function, a normalizing function and a scoring function using a set of storage unit coefficients that are different for each of the functional rating modules. The functional rating modules are configured to receive an encoded data slice identifier, perform the deterministic function using the encoded data slice identifier and a first storage unit coefficient to produce an interim result, perform the normalization function using interim result to produce a normalized interim result, and perform the scoring function by performing a mathematical function on the normalized interim result to produce a score. The system also includes a ranking module configured to receive the score from each of the plurality of functional rating modules to produce a highest ranked set of storage units for storing a plurality of sets of encoded data slices.
    Type: Application
    Filed: January 23, 2019
    Publication date: May 23, 2019
    Inventors: Manish Motwani, Jason K. Resch, Ilya Volvovski
  • Patent number: 10298957
    Abstract: A method includes partitioning a data file into first priority data and second priority data. The method further includes determining first error coding dispersal storage function parameters for the first priority data based on first transmission reliability level and second error coding dispersal storage function parameters for the second priority data based on second transmission reliability level. The method further includes dispersed error encoding the first priority data using the first error coding dispersal storage function parameters to produce first plurality of sets of encoded data slices and dispersed error encoding the second priority data using the second error coding dispersal storage function parameters to produce second plurality of sets of encoded data slices. The method further includes selecting one or more routing paths from a plurality of candidate routing paths and transmitting the first plurality of sets of encoded data slices via the one or more routing paths.
    Type: Grant
    Filed: November 17, 2017
    Date of Patent: May 21, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg R. Dhuse, Andrew D. Baptist, Ilya Volvovski, Gary W. Grube, Timothy W. Markison, S. Christopher Gladwin, Jason K. Resch
  • Publication number: 20190146877
    Abstract: A method for execution by a processing system in dispersed storage and task network (DSTN) that includes a processor, includes: identifying a slice name of a slice in error of a set of slices stored in a set of dispersed storage (DS) units; identifying a number of slice errors of the set of slices; generating a queue entry that includes the slice name of the slice in error, a rebuilding task indicator, an identity of the set of slices, and the number of slice errors; identifying a rebuilding queue based on the number of slice errors, wherein the rebuilding queue is associated with one of: the set of DS units or another set of DS units; and facilitating storing the queue entry in the identified rebuilding queue.
    Type: Application
    Filed: January 10, 2019
    Publication date: May 16, 2019
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Adam M. Gray, Wesley B. Leggette, Jason K. Resch, Ilya Volvovski
  • Publication number: 20190138394
    Abstract: A method of rebuilding data stored as encoded data slices in a dispersed storage network (DSN) includes obtaining, by a rebuilding module implemented in a processing device, an identity of a plurality slices-in-error to be rebuilt, wherein each individual slice-in-error is associated with index information specifying: a particular dispersed storage unit associated with the individual slice-in-error; and a number of slices-in-error associated with the particular dispersed storage unit. A first slice-in-error is selected for rebuilding based, at least in part, on the number of slices-in-error associated with a first dispersed storage unit associated with the first slice-in-error. Read slice requests at least a decode threshold number of data slices are issued to the first dispersed storage unit. At least a decode threshold number of slices are received at the rebuilding module, which rebuilds the first slice-in-error using the received slices.
    Type: Application
    Filed: January 2, 2019
    Publication date: May 9, 2019
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Adam M. Gray, Wesley B. Leggette, Jason K. Resch, Ilya Volvovski