Patents by Inventor Daniel J. Scholl

Daniel J. Scholl 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).

  • Publication number: 20230214303
    Abstract: A method for execution by a distributed storage network begins by receiving a request to transfer a copy of a set of encoded data slices from at least some associated virtual storage vaults to a destination virtual storage vault and continues by determining whether the destination storage unit supports a source virtual storage vault of the at least some source virtual storage vaults. When the destination storage unit supports the source virtual storage vault the method continues by determining a sub-set of encoded data slices of the set of encoded data slices for transfer and finally, by facilitating sending the sub-set of encoded data slices to the destination storage unit.
    Type: Application
    Filed: March 10, 2023
    Publication date: July 6, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 11604707
    Abstract: A method for execution by a dispersed storage network (DSN). The method begins by obtaining a data object for synchronized storage within a plurality of storage vaults, identifying a plurality of storage vaults, encoding the data object for each storage vault, initiating storage of data slices for each storage vault and interpreting received data slice information from at least some of the storage vaults to determine a number of storage vaults that have successfully stored the corresponding plurality of sets of encoded data slices and when the vault threshold number of storage vaults have not successfully stored the corresponding plurality of sets of encoded data slices within a synchronization timeframe, initiating a rollback process to abandon storage of the data object in the plurality of storage vaults and a store data response to indicate unsuccessful synchronized storage of the data object in the plurality of storage vaults.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: March 14, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 11321172
    Abstract: A method includes identifying an existing logical storage vault having existing dispersed storage coding properties for vault transformation, where a first set of storage units support the existing logical storage vault, and a data object of first data objects stored within the first set of storage units is stored as a first plurality of sets of encoded data slices in accordance with the existing dispersed storage coding properties. The method includes identifying a new logical storage vault having new dispersed storage coding properties, wherein storage units support the new logical storage vault. The method includes transforming the first data objects from being in accordance with the existing dispersed storage coding properties to being in accordance with the new dispersed storage coding properties to produce transformed first data objects. The method includes storing the transformed first data objects in the new logical storage vault supported by the storage units.
    Type: Grant
    Filed: April 3, 2020
    Date of Patent: May 3, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 11281532
    Abstract: A method begins with a processing module obtaining a data object from a user and identifying a plurality of virtual storage vaults (VSVs) for storage of the data object. The method continues with the processing module determining dispersal error encoding parameters associated with a first virtual storage vault and error encoding the data object in accordance with those dispersal error encoding parameters to produce a corresponding plurality of sets of encoded data slices (EDSs), issuing write slice requests for the EDSs and receiving EDS information from at least some of the plurality of VSVs. When the EDS information indicates that a threshold number of VSVs have successfully stored the plurality of sets of encoded data slices within a synchronization timeframe, the method continues with the processing module issuing a favorable response to the user, or when a threshold number of VSVs have not successfully stored the plurality of sets of encoded data slices initiating a retry process.
    Type: Grant
    Filed: August 8, 2019
    Date of Patent: March 22, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Publication number: 20220066879
    Abstract: A method for execution by storage network begins by identifying a subset of encoded data slices stored in a set of storage units for enhanced access and interpreting registry data to determine a listing type. The method continues by generating listing slice names for the subset of encoded data slices based on the listing type and sending the listing slice names to the set of storage units, where each storage unit updating storage and/or listing of at least some of the subset of encoded data slices associated with the storage unit based on the listing type and each storage unit issuing slice access information to a requesting entity in response to one or more slice access requests in accordance with the listing type for some of the subset of encoded data slices and the requesting entity receiving slice access information from at least some of the set of storage units.
    Type: Application
    Filed: November 9, 2021
    Publication date: March 3, 2022
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 11226980
    Abstract: Systems and methods for replicating containers in object storage using intents are disclosed. A DS processing unit, upon reception of a write request may determine the location of replicated instances for the container. DS processing unit can then generate an intent for each fork, to indicate a specific write request received. The DS processing unit may save or persist intent objects within one of the containers, or in a dispersed data structure. A DS unit or DS processing unit may then check for intents whose operation has not been completed, and when resources to perform the operation are available, perform the operation specified in the intent. DS processing unit can remove a pending intent once the job or operation is complete. A clean-up agent could run periodically to complete unfinished jobs that are pending within DS processing unit or DS unit due to containers not being available for whatever reason.
    Type: Grant
    Filed: March 13, 2017
    Date of Patent: January 18, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Harsha Hegde, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Daniel J. Scholl, Rohan P. Shah, Yogesh R. Vedpathak
  • Patent number: 11010246
    Abstract: A method includes registering, by a first computing device, with a distributed storage network (DSN) to indicate that a first storage site is connected via a common local area network with the first computing device and is the primary storage site for the first computing device. The method continues with the first computing device to store a write threshold number of encoded data slices (EDSs) to the first storage site, obtaining a first writing pattern for writing the write threshold number of EDSs to the first plurality of storage units, and transmitting at least a portion of a remaining number of EDSs to one or more storage units at a second storage site, where the remaining number of EDSs are EDSs not included in the write threshold number of EDSs and the second storage site and the first storage site are each one of a sharing group of storage sites.
    Type: Grant
    Filed: July 11, 2019
    Date of Patent: May 18, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas Dubucq, Daniel J. Scholl
  • Patent number: 10929214
    Abstract: A method for execution by a dispersed storage (DS) cleanup unit includes determining a dead session of a DSN. A subset of a plurality of eventual consistency intent names is generated by identifying eventual consistency intent names that include a session identifier corresponding to the dead session in a prefix of the eventual consistency intent names, where the subset of the plurality of eventual consistency intent names corresponds to all eventual consistency intents of the dead session. A subset of storage units responsible for storing the all eventual consistency intents of the dead session is determined based on the prefix of the eventual consistency intent names in the subset. All eventual consistency intents of the dead session are retrieved from the subset of storage units, and execution of eventual consistency updates indicated in the all eventual consistency intents of the dead session is facilitated.
    Type: Grant
    Filed: January 7, 2019
    Date of Patent: February 23, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ravi V. Khadiwala, Manish Motwani, Renars W. Narubin, Jason K. Resch, Daniel J. Scholl, Yogesh R. Vedpathak
  • Patent number: 10901642
    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: Grant
    Filed: July 22, 2019
    Date of Patent: January 26, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Rohan P. Shah, Harsha Hegde, Wesley B. Leggette, Daniel J. Scholl, Jason K. Resch, Yogesh R. Vedpathak, Manish Motwani
  • Patent number: 10855759
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit includes generating contention level data by evaluating an update contention level in response to determining to update an entry of a node of a dispersed hierarchical index. The update of the node is executed when the contention level data indicates that the update contention level is favorable. An index update request is generated for transmission to an index update unit via a network when the contention level data indicates that the update contention level is unfavorable.
    Type: Grant
    Filed: January 3, 2017
    Date of Patent: December 1, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Greg R. Dhuse, Adam M. Gray, Scott M. Horan, Ravi V. Khadiwala, Tyler K. Reid, Jason K. Resch, Daniel J. Scholl, Ilya Volvovski
  • Patent number: 10693640
    Abstract: Systems and Methods for encrypting and decrypting data in a dispersed storage network are disclosed. A data object may be encrypted using a data object specific encryption key, a container specific encryption key, a tenant account specific encryption key, or a time based encryption key. This specific, or more generally, secondary encryption key can be derived from a master or primary encryption key. Encryption key metadata pertaining to the master encryption key and the specific encryption key is also created and stored in the DSN. When reading an encrypted data object, the master encryption key can be retrieved and, along with the encryption key metadata, used to derive the specific encryption key. The specific encryption key can then be used to decrypt the encrypted data object to recover the data object.
    Type: Grant
    Filed: March 17, 2017
    Date of Patent: June 23, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Adam M. Gray, Harsha Hegde, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Daniel J. Scholl, Mark D. Seaborn, Rohan P. Shah, Yogesh R. Vedpathak
  • Patent number: 10656866
    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 selects storage parameters for a multi-vault synchronization process from a first storage vault to a second storage vault. The computing device synchronizes storage of the set(s) of ingestion encoded data slices (EDSs) between the vaults and maintains storage of a portion of an ingestion data stream within the second storage vault. The computing device facilitates deletion of the set(s) of ingestion EDSs corresponding to the portion of an ingestion data stream from the first storage vault. the computing device performs additional multi-vault synchronization process(es) for any other portion(s) of the ingestion data stream.
    Type: Grant
    Filed: December 15, 2017
    Date of Patent: May 19, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl, Kumar Abhijeet, Praveen Viraraghavan
  • Patent number: 10642521
    Abstract: A method begins with a computing device of a distributed storage network (DSN) being designated to process a write request from a Decentralized, or Distributed, Agreement Protocol (DAP) and continues with the computing device retrieving a current policy for the storage units (SUs) associated with the write request, where the current policy specifies the current connectivity for the SUs. The method continues by using the current policy to configure a data structure to process the write request, where the data structure is based on scaling triggers and a load balancing scheme. The method continues with the data structure incorporating a primary queue and scaling the addition of secondary queues based on the scaling triggers and/or the load balancing scheme.
    Type: Grant
    Filed: May 11, 2018
    Date of Patent: May 5, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Amit H. Lamba, Daniel J. Scholl, Jason K. Resch, Brian F. Ober
  • Patent number: 10642687
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN). The method begins by determining to recover a data object from one or more storage vaults of a plurality of storage vaults where the data object has been synchronously stored amongst the plurality of storage vaults. The method continues, for each storage vault, by determining a slice retrieval performance level and selecting two or more storage vaults of the plurality of storage vaults for retrieval based on the slice retrieval performance levels. The method continues by identifying a plurality of data segments for retrieval where the data object was divided into the plurality of data objects and assigning a storage vault for retrieval to produce assignment information and facilitating recovery of each data segment of the plurality of data segments from the selected two or more storage vaults.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: May 5, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl, Jason K. Resch
  • Patent number: 10623495
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN). The method begins by receiving a portion of a data stream from a requesting entity for storage in a plurality of storage vaults. The method continues by encoding the portion of the data stream in accordance with dispersal parameters of the storage vault to produce a corresponding plurality of sets of encoded data slices. The method continues by facilitating storage of the corresponding plurality of sets of encoded data slices in the storage vault. The method continues by determining an ingestion rate capability level for the plurality of storage vaults and issuing stream pacing information to the requesting entity based on the ingestion rate capability level.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: April 14, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 10621042
    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: April 14, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl
  • Patent number: 10599519
    Abstract: A method includes determining, by a computing device, to change a node of a hierarchical index structure. The method further includes determining, by the computing device, whether one or more other computing devices are attempting to change the node. The method further includes, when yes, determining, by the computing device and/or the other computing device(s), to use a delegate device to process multiple change requests to the node. The method further includes, when determined to use the delegate device, sending, by the computing device, a message to the delegate device requesting the delegate device to process the change to the node. The method further includes coordinating, by the delegate device, requested changes to the node by the computing device and the other computing device(s). The method further includes updating, by the delegate device, the node in accordance with the coordinating of the requested changes.
    Type: Grant
    Filed: October 26, 2016
    Date of Patent: March 24, 2020
    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: 10540111
    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: Grant
    Filed: June 28, 2017
    Date of Patent: January 21, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Rohan P. Shah, Harsha Hegde, Wesley B. Leggette, Daniel J. Scholl, Jason K. Resch, Yogesh R. Vedpathak, Manish Motwani
  • Patent number: 10540120
    Abstract: A method includes, during a given time interval, receiving a plurality of write requests regarding updates to an object, creating a plurality of write intent messages for the plurality of write requests, dispersed storage error encoding the plurality of write intent messages to produce a plurality of sets of encoded intent slices, and sending the plurality of sets of encoded intent slices to a set of storage units of the DSN for storage therein. The method further includes, after expiration of the given time interval, categorizing each write intent message of the plurality of write intent messages with respect to other write intent messages of the plurality of write intent messages, where a write intent message is categorized as complimentary, non-compete, or compete, creating a single write command that encompasses complimentary and non-compete write intent messages, and executing the single write command on the object to produce an updated object.
    Type: Grant
    Filed: November 14, 2017
    Date of Patent: January 21, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Daniel J. Scholl, Ravi V. Khadiwala, Greg R. Dhuse
  • Patent number: 10489247
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN). The method begins by receiving a data object for storage in a plurality of storage vaults. The method continues by encoding the data object in accordance with dispersal parameters of the storage vault to produce a corresponding plurality of sets of encoded data slices. The method continues by generating a unique revision number to associate with the data object. The method continues by facilitating storage of the corresponding plurality of sets of encoded data slices with the unique revision number and facilitating data synchronization between the plurality of storage vaults based on the unique revision numbers of stored data.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: November 26, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Adam M. Gray, Greg R. Dhuse, Andrew D. Baptist, Ravi V. Khadiwala, Wesley B. Leggette, Scott M. Horan, Franco V. Borich, Bart R. Cilfone, Daniel J. Scholl, Jason K. Resch