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: 10511665
    Abstract: A distributed storage network (DSN) employs one or more distributed storage task execution (DST EX) units for dispersed storage of encoded data slices. A delete-slice request associated with a first encoded data slice is received at a DST EX unit, the encoded data slice is packed into a common file with other encoded data slices, and the common file is stored in a distributed storage (DS) memory included in the DST EX unit. Each encoded data slice packed into the common file is associated with a file offset within the common file. The DST EX unit identifies a file offset of the first encoded data slice within the common file. The DST EX unit releases the portion of the DS memory associated with the particular file offset within the common file to a file system maintained by the DST EX unit.
    Type: Grant
    Filed: December 12, 2017
    Date of Patent: December 17, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Ilya Volvovski, Joseph M. Kaczmarek, Trevor J. Vossberg
  • 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: 10506045
    Abstract: A processing device implementing a storage unit is included in a distributed storage network (DSN) that uses employing one or more storage units to store encoded data slices. The storage unit receives an access request that includes a slice identifier associated with an encoded data slice stored in a particular distributed storage (DS) memory of the storage unit. The storage unit obtains a secure seed, and determines a memory range associated with the slice identifier by performing a deterministic function on the slice identifier using the secure seed as an input to the deterministic function. The storage unit identifies the particular DS memory as being associated with the memory range, and performs the access request using the particular DS memory.
    Type: Grant
    Filed: December 8, 2017
    Date of Patent: December 10, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Jason K. Resch
  • 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
  • Patent number: 10481832
    Abstract: A method includes receiving a delete request for a data element and determining to be in a state of queued delete request processing. The method further includes adding an intent to delete to a delete log. The method further includes receiving a data access request regarding the data element and performing a probability function to determine whether the intent to delete is likely in the delete log. When the probability function indicates that the intent to delete is not in the delete log, the method further includes executing the data access request. When the probability function indicates the intent to delete is probably in the delete log, the method further includes accessing the delete log and if the intent to delete is in the delete log, skipping the data access request. When the intent to delete is not in the delete log, the method includes executing the data access request.
    Type: Grant
    Filed: December 11, 2017
    Date of Patent: November 19, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Ravi V. Khadiwala, Greg R. Dhuse, Ilya Volvovski, Andrew D. Baptist, Ethan S. Wozniak, Asimuddin Kazi
  • 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
  • Patent number: 10467095
    Abstract: A method includes identifying, by a computing device of a dispersed storage network (DSN), a delegate device of a plurality of delegate devices of the DSN for processing a change to a node of a plurality of nodes of a hierarchical index structure. The method further includes sending, by the computing device, a change type specific request to the delegate device regarding the change to the node. The method further includes determining, by the delegate device, whether the delegate device is responsible for executing the change type specific request. When the delegate device is responsible for executing the change type specific request, the method further includes sending, by the delegate device, a response message to the computing device indicating that the delegate device is responsible for executing the change type specific request. The method further includes executing, by the delegate device, the change type specific request.
    Type: Grant
    Filed: October 26, 2016
    Date of Patent: November 5, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Greg R. Dhuse, Adam M. Gray, Scott M. Horan, Ravi V. Khadiwala, Tyler K. Reid, Daniel J. Scholl, Ilya Volvovski
  • 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
  • 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
  • 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: 10440107
    Abstract: A method for execution within a dispersed storage network (DSN), where the method begins by calculating, utilizing a first integrity check value function, an integrity check value of a first type for each encoded data slice of a set of encoded data slices to produce a corresponding set of integrity check values. The method continues by issuing, via a network, one or more sets of write slice requests 1-n to a set of storage units 1-n within the DSN, where the one or more sets of write slice requests include a plurality of sets of the encoded data slices and a corresponding plurality of sets of the integrity check values. The method continues, when verifying integrity of a received encoded data slice, by a storage unit calculating, utilizing a second integrity check value function, an integrity check value of a second type for the encoded data slice.
    Type: Grant
    Filed: January 11, 2017
    Date of Patent: October 8, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Niall J. McShane, Jason K. Resch, 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: 10440116
    Abstract: A distributed storage network (DSN) includes a plurality of distributed storage task execution (DST EX) units, each which includes a plurality of distributed storage (DS) memories configured to store encoded data slices. A DST EX unit detects a physical storage failure associated with a first DS memory included in the DST EX unit, wherein the first DS memory is associated with a sub-DSN address range. An available spare DS memory included in the DST EX unit is selected, and slice mapping information is updated to associate the available spare DS memory with the sub-DSN address range. The DST EX unit facilitates rebuilding one or more encoded data slices associated with the sub-DSN address range to produce one or more rebuilt encoded data slices. The DST EX unit facilitates storage of the rebuilt encoded data slices in the available spare DS memory.
    Type: Grant
    Filed: December 15, 2017
    Date of Patent: October 8, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Ilya Volvovski, Jason K. Resch, Praveen Viraraghavan
  • Publication number: 20190294557
    Abstract: A method includes determining, by a storage unit, to place a pointer in a hash table that is stored in local memory of the storage unit. The method further includes executing, by the storage unit, a hash function on addressing information relating to the pointer to produce a hash resultant. The method further includes executing, by the storage unit, a second function on related data to the addressing information or to the pointer to produce an auxiliary resultant. The method further includes storing, by the storage unit, the hash resultant and the auxiliary resultant as an entry in the hash table for the pointer, wherein, when a hash collision occurs with respect to the hash resultant, the storage unit utilizes the auxiliary resultant to resolve the hash collision.
    Type: Application
    Filed: March 26, 2018
    Publication date: September 26, 2019
    Inventors: Greg R. Dhuse, Ilya Volvovski, Ethan S. Wozniak, Ravi V. Khadiwala, Jason K. Resch, Andrew D. Baptist, Praveen Viraraghavan
  • Patent number: 10423362
    Abstract: A first dispersed storage and task (DST) processing unit operates to store data as one or more first sets of encoded data slices in a set of storage units utilizing a first information dispersal algorithm having a first decode threshold number and determine whether to store the data as one or more second sets of encoded data slices in the set of storage units utilizing a second IDA having a second decode threshold number. When determined to store the data as the one or more second sets of encoded data slices, the first DST processing unit further operates to encode the data utilizing the second IDA to produce the one or more second sets of encoded data slices, and facilitate storage of the one or more second sets of encoded data slices in at least a subset of the set of storage units.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: September 24, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Ilya Volvovski, Ethan S. Wozniak
  • Patent number: 10416898
    Abstract: A method includes sending data access requests to storage units regarding a set of encoded data slices. The method further includes, when a write transaction is pending for the set of encoded data slices, receiving proposal records from the storage units. The method further includes interpreting the proposal records to determine an ordering of visible versions of the set of encoded data slices stored by the storage units. The method further includes determining whether a threshold number of encoded data slices of a desired version of the set of encoded data slices is visible. The method further includes, when the threshold number of encoded data slices is visible, determining whether to proceed with the data access request. The method further includes, when determined to proceed with the data access request, sending a request to proceed with the data access request to the storage units.
    Type: Grant
    Filed: May 16, 2018
    Date of Patent: September 17, 2019
    Assignee: International Business Machines Corporation
    Inventors: Andrew D. Baptist, Greg R. Dhuse, Ravi V. Khadiwala, Ilya Volvovski
  • Patent number: 10409679
    Abstract: A method for execution by a computing device includes obtaining utilization information of a pair of adjacent dispersed storage and task (DST) execution units of a common pillar. The utilization information of the pair of adjacent DST execution units is verified based on companion utilization information. Slices to migrate are selected in response to verifying the utilization information, and migration of the slices to migrate is facilitated. An updated storage map is generated based on the slices to migrate. A storage map modification package that includes a previous storage map and the updated storage map is generated. Attaching a signature from each DST execution unit of the pair of adjacent DST execution units to the storage map modification package is facilitated to produce a fully signed storage map modification package. The fully signed storage map modification package is published.
    Type: Grant
    Filed: November 28, 2017
    Date of Patent: September 10, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Manish Motwani, Greg R. Dhuse, Wesley B. Leggette, Andrew D. Baptist, Ilya Volvovski, Jason K. Resch
  • Patent number: 10409772
    Abstract: A method for execution by a computing device includes determining to serially store data in a set of storage units utilizing a dispersed storage error coding function. An information dispersal algorithm (IDA) threshold number of received data blocks are encoded for every IDA threshold number of received data blocks of the data to produce sets of encoded data slices. Storage of the sets of encoded data slices in the set of storage units is facilitated, where each storage unit appends each of a plurality of received encoded data slices to a previously appended encoded data slice. A read offset is generated for the corresponding set of encoded data slices based on an identified portion of the data for recovery. A decode threshold number of data blocks corresponding to the read offset are retrieved and dispersed storage error decoded.
    Type: Grant
    Filed: November 27, 2017
    Date of Patent: September 10, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Ethan S. Wozniak, Andrew D. Baptist, Greg R. Dhuse, Ilya Volvovski, Jason K. Resch
  • Patent number: 10402268
    Abstract: A method begins with a computing device receiving a request to acquire digital content from a digital content provider and forwarding the request to a dispersed storage network (DSN) pre-paid module. The method continues with the DSN pre-paid module validating the request, generating a plurality of sets of at least a threshold number of digital content read requests, and sending the plurality of sets of the at least a threshold number of digital content read requests to the digital content provider via the computing device when the request to acquire the digital content is validated. The method continues with at least one of the DSN pre-paid module and the computing device receiving a plurality of sets of at least a decoded threshold number of encoded data slices and decoding the plurality of sets of the at least a decoded threshold number of encoded data slices to produce the digital content.
    Type: Grant
    Filed: January 10, 2012
    Date of Patent: September 3, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Gary W. Grube, Timothy W. Markison, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Wesley Leggette