Patents by Inventor Thomas F. Shirley

Thomas F. Shirley 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: 11886752
    Abstract: A method for execution by one or more processing modules of one or more computing devices of a storage network, the method comprises receiving a data object for processing, determining whether the data object is to be transferred to one or more remote storage location, determining whether one or more legal restrictions are associated with the data object. Based on a determination that one or more legal restrictions are associated with the data object, the method continues by determining whether the one or more legal restrictions allow transfer of the data object to a storage unit of the one or more remote storage locations. The method continues by segmenting the data object into a plurality of data segments, dispersed error encoding a data segment of the plurality of data segments in accordance with dispersed error encoding parameters to produce a set of encoded data slice and transmitting a write requests for an encoded data slice of the set of encoded data slices to the storage location for processing.
    Type: Grant
    Filed: January 9, 2023
    Date of Patent: January 30, 2024
    Assignee: Pure Storage, Inc.
    Inventors: Russell P. Kennedy, Robert C. McCammon, Jason K. Resch, Thomas F. Shirley, Jr.
  • Patent number: 11818089
    Abstract: A method for execution in a storage network includes receiving a request pertaining to a data object, where the request is related to a specified contiguous data range within the data object and the data object is dispersed error encoded to produce a plurality of groups of encoded data slices. The method continues by converting the request into a plurality of partial requests, where each partial request of the plurality of partial requests includes at least one partial task and transmitting each partial request of the plurality of partial requests to a storage unit of a set of storage units. The method then continues by determining when a partial request response has been received for each partial request of the plurality of partial requests and when a partial request response has been received for each partial request of the plurality of partial requests, transmitting an indication that the request pertaining to the data object has been successfully executed.
    Type: Grant
    Filed: February 24, 2021
    Date of Patent: November 14, 2023
    Inventors: Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski, Manish Motwani, S. Christopher Gladwin, Gary W. Grube, Thomas F. Shirley, Jr.
  • Publication number: 20230267042
    Abstract: A method includes retrieving an encoded data slice from memory of a storage network, where the encoded data slice is associated with a slice integrity value stored in the memory, and where a data segment of data is error encoded into a set of encoded data slices that includes the encoded data slice. The method further includes generating a second slice integrity value based on the retrieved encoded data slice. The method further includes determining whether the second slice integrity value compares favorably to the slice integrity value. When the second slice integrity value compares unfavorably to the slice integrity value, the method further includes facilitating rebuilding of the encoded data slice to produce a rebuilt encoded data slice. The method further includes storing the rebuilt encoded data slice in the memory.
    Type: Application
    Filed: April 30, 2023
    Publication date: August 24, 2023
    Applicant: Pure Storage, Inc.
    Inventors: Thomas F. Shirley, JR., Ilya Volvovski, Manish Motwani, Andrew D. Baptist, Wesley B. Leggette, Jason K. Resch, Greg R. Dhuse
  • Patent number: 11734463
    Abstract: A method includes a computing device of a storage network obfuscating encoded data slices of a first set of encoded data slices of a plurality of sets of encoded data slices using an obfuscating method to produce obfuscated encoded data slices. The method further includes the computing device of the storage network outputting the obfuscated encoded data slices for storage in the storage network.
    Type: Grant
    Filed: May 18, 2022
    Date of Patent: August 22, 2023
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Thomas F. Shirley, Jr., Gary W. Grube
  • Publication number: 20230252312
    Abstract: A method executed by a computing device includes determining a set of identigens for each query word of a query to produce a plurality of sets of identigens. The method further includes interpreting, based on identigen pairing rules of a knowledge database, pairs of sequentially adjacent identigens of adj acent sets of identigens of the plurality of sets of identigens to determine a most likely meaning interpretation of the query and produce a query entigen group. The method further includes identifying a set of entigen variations associated with the query entigen group utilizing the knowledge database to produce an expanded query entigen group. The method further includes obtaining knowledge associated with the first entigen variation of the set of entigen variations.
    Type: Application
    Filed: May 26, 2022
    Publication date: August 10, 2023
    Applicant: entigenlogic LLC
    Inventors: Frank John Williams, Neil O'Driscoll, Ahmad Abdelqader Abunaser, Stephen Emerson Sundberg, Ameeta Vasant Reed, Jessy Thomas, Karl Olaf Knutson, Thomas F. Shirley, Jr., Thomas James MacTavish, Andrew Chu, Zachary John McCord, Ali Fattahian, Gregory William Cox, Kyle Edward Alberth, Gary W. Grube
  • Patent number: 11714719
    Abstract: Apparatus for tiered storage of data in a storage network. In an example of operation, a computing device receives a data object for storage and forwards the data object for storage in a first plurality of memory devices of a first memory type. The computing device determines a system level storage efficiency for the data object based, at least in part, on a data attribute associated with the data object. The computing device further selects, based at least in part on the system level storage efficiency preference, a second plurality of memory devices comprised of a second memory type. The computing device determines error encoding parameters based on the second plurality of memory devices, retrieves the data object from the first plurality of memory devices, and encodes the data object with the error encoding parameters to generate a plurality of encoded data slices for storage in the second plurality of memory devices.
    Type: Grant
    Filed: September 30, 2022
    Date of Patent: August 1, 2023
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg R. Dhuse, Thomas F. Shirley, Jr., Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Publication number: 20230027787
    Abstract: Apparatus for tiered storage of data in a storage network. In an example of operation, a computing device receives a data object for storage and forwards the data object for storage in a first plurality of memory devices of a first memory type. The computing device determines a system level storage efficiency for the data object based, at least in part, on a data attribute associated with the data object. The computing device further selects, based at least in part on the system level storage efficiency preference, a second plurality of memory devices comprised of a second memory type. The computing device determines error encoding parameters based on the second plurality of memory devices, retrieves the data object from the first plurality of memory devices, and encodes the data object with the error encoding parameters to generate a plurality of encoded data slices for storage in the second plurality of memory devices.
    Type: Application
    Filed: September 30, 2022
    Publication date: January 26, 2023
    Applicant: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg R. Dhuse, Thomas F. Shirley, JR., Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Patent number: 11550515
    Abstract: A method for determining a storage location includes one or more processing modules of one or more computing devices of a storage network (SN) receiving a data object to store in a storage network (SN) and determining whether the data object is subject to a legal restriction, where a data object is subject to a legal restriction based on the data object requiring storage in a jurisdiction that subjects the data object to a retention policy. The method continues by determining one or more attributes of a first storage location of a plurality of storage locations and based on a determination that the data object is subject to a legal restriction and at least one attribute of the one or more attributes of the first storage location, transmitting a write threshold number of write requests to a plurality of SUs at the first storage location.
    Type: Grant
    Filed: October 26, 2020
    Date of Patent: January 10, 2023
    Assignee: PURE STORAGE, INC.
    Inventors: Russell P. Kennedy, Robert C. McCammon, Jason K. Resch, Thomas F. Shirley, Jr.
  • Publication number: 20220374162
    Abstract: A processing system of a storage network operates by receiving a write request associated with a data object; identifying dispersed storage error encoding parameters; and determining a number of available storage units. When the number of available storage units is determined to exceed a first number, the processing system operates by: determining a first write threshold number in accordance with the dispersed storage error encoding parameters; dispersed error encoding the data object to produce a first write threshold number of encoded data slices; and writing, to available storage units, the first write threshold number of encoded data slices.
    Type: Application
    Filed: August 8, 2022
    Publication date: November 24, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Andrew D. Baptist, Niall J. McShane, Greg R. Dhuse, Thomas F. Shirley, JR., Gregory Palinckx, Russell P. Kennedy, S. Christopher Gladwin, Robert C. McCammon, James Sherer
  • Publication number: 20220308962
    Abstract: Methods and apparatus for selection of memory devices in a distributed storage network. In an example, a computing device receives a data object for storage and selects a set of storage nodes of a plurality of sets of storage nodes for storing the data object. Selection of the set of storage nodes includes determining storage attributes associated with each set of storage nodes of the plurality of sets of storage nodes. Selection of the set of storage nodes additionally includes determining a storage preference associated with the data object, and comparing the storage preference with the storage attributes of the plurality of sets of storage nodes to determine a best match. Following selection of a set of storage nodes, the computing device facilitates storage of the data object in the selected set of storage nodes.
    Type: Application
    Filed: June 13, 2022
    Publication date: September 29, 2022
    Applicant: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg R. Dhuse, Thomas F. Shirley, JR., Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Publication number: 20220277111
    Abstract: A method includes a computing device of a storage network obfuscating encoded data slices of a first set of encoded data slices of a plurality of sets of encoded data slices using an obfuscating method to produce obfuscated encoded data slices. The method further includes the computing device of the storage network outputting the obfuscated encoded data slices for storage in the storage network.
    Type: Application
    Filed: May 18, 2022
    Publication date: September 1, 2022
    Applicant: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Thomas F. Shirley, JR., Gary W. Grube
  • Publication number: 20220214944
    Abstract: A storage network method begins by receiving a data retrieval request, wherein a data object is segmented into a plurality of data segments, determining a storage configuration associated with the data retrieval request based on an encoded data slice identifier included in the retrieval request and, based on the storage configuration, determining a plurality of storage resources associated with the encoded data slice identifier The mehod continues by determining an estimated performance level for each storage resource of a plurality of storage resources associated with the encoded data slice identifier, determining an expected retrieval performance for the retrieval request and selecting a storage resource of the plurality of storage resources based on the expected retrieval performance. The method then continues by transmitting a read request for one or more encoded data slices associated with the encoded data slice identifier to the storage resource.
    Type: Application
    Filed: March 22, 2022
    Publication date: July 7, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Thomas F. Shirley, JR., Greg R. Dhuse, Jason K. Resch
  • Patent number: 11366939
    Abstract: A method includes a computing device of a storage network dispersed storage error encoding a plurality of data segments to produce a plurality of sets of encoded data slices. The method further includes the computing device obfuscating a first set of encoded data slices of the plurality of sets of encoded data slices using an obfuscating method to produce a first set of obfuscated encoded data slices. The method further includes the computing device outputting the first set of obfuscated encoded data slices for storage in the storage network.
    Type: Grant
    Filed: December 10, 2020
    Date of Patent: June 21, 2022
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Thomas F. Shirley, Jr., Gary W. Grube
  • Patent number: 11360852
    Abstract: Methods and apparatus for selection of memory devices in a distributed storage network. In an embodiment, a computing device receives a data object for storage and forwards the data object to a buffer for temporary storage, the buffer comprised of a first memory devices of a first memory type. A system level storage efficiency is determined for the data object based, at least in part, on a data attribute associated with the data object. Second memory devices, of a second memory type, are selected based on the system level storage efficiency preference, and compatible dispersed storage error encoding parameters for the data object are determined. The data object is encoded using the encoding parameters to generate a plurality of encoded data slices, which are provided to the second plurality of memory devices for storage. Further, system addressing information is generated based on an identifier associated with the data object.
    Type: Grant
    Filed: January 18, 2021
    Date of Patent: June 14, 2022
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Timothy W. Markison, Greg R. Dhuse, Thomas F. Shirley, Jr., Wesley B. Leggette, Jason K. Resch, Gary W. Grube
  • Patent number: 11307930
    Abstract: A distributed storage network method begins by determining an encoded data slice to rebuild, determining a storage set of distributed storage units associated with the encoded data slice to rebuild, determining an historical performance level of each distributed storage unit of the storage set of distributed storage units, determining an estimated performance level of each distributed storage unit of the storage set of distributed storage units, selecting at least a decode threshold number of distributed storage units of the storage set of distributed storage units to produce selected distributed storage units, determining an encoded data slice partial aggregation scheme for the selected distributed storage units, sending encoded data slice partial request messages to the selected distributed storage units, and receiving encoded data slice partial response messages and extracting encoded data slice partials from the encoded data slice partial response messages to rebuild or verify the encoded data slice.
    Type: Grant
    Filed: October 9, 2020
    Date of Patent: April 19, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: Thomas F. Shirley, Jr., Greg R. Dhuse, Jason K. Resch
  • Patent number: 11301592
    Abstract: A processing module of a dispersed storage network determines an obfuscation method is determined from a plurality of obfuscation methods for a data segment. The method continues with the processing module obfuscating the data segment according to the obfuscation method to produce an obfuscated data segment. The obfuscated data segment is encrypted and dispersed storage error encoded to produce a set of encoded data slices. The set of encoded data slices is then transmitted for storage in the dispersed storage network.
    Type: Grant
    Filed: November 6, 2017
    Date of Patent: April 12, 2022
    Assignee: PURE STORAGE, INC.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Thomas F. Shirley, Jr.
  • Patent number: 10944712
    Abstract: A method for processing partial tasks in a distributed storage network (DSN) includes receiving a partial task request message for a DS execution unit, where the partial task request message includes corresponding partial tasks. The method continues by processing each partial task request message in accordance with the processing parameters to produce task request slice groupings, generating slices, such that each message is directed at a corresponding DS execution unit, and the sending the slice groupings and the task request slice groupings to the selected DS execution units for storage therein. The method continues by retrieving at least a decode threshold number of task response slices of one or more task response slice groupings from the DS execution units, decoding the task response slices, retrieving at least a decode threshold number of partial result slices, and decoding the partial results slices and processing the partial results to produce a result.
    Type: Grant
    Filed: April 29, 2020
    Date of Patent: March 9, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: Wesley B. Leggette, Andrew D. Baptist, Greg R. Dhuse, Jason K. Resch, Ilya Volvovski, Manish Motwani, S. Christopher Gladwin, Gary W. Grube, Thomas F. Shirley, Jr.
  • Patent number: 10911230
    Abstract: A method begins or continues with deleting a security code from random access memory (RAM) of a computing device when the computing device is inactive. The security code is required for functionality of the computing device and is stored in the RAM. The method continues with detecting a reactivation request. In response to the reactivation request, the method continues with obtaining authentication data from an activation requester, generating a set of blinded random numbers, and requesting a plurality of encoded data slices from a plurality of other devices. The method continues with performing a sequence of operations on the plurality of encoded data slices using the authentication data and the set of blinded random numbers to produce a recovered security code. When the recovered security code is verified, the method continues with storing the recovered security code as the security code in RAM and activating operation of the computing device.
    Type: Grant
    Filed: November 28, 2018
    Date of Patent: February 2, 2021
    Assignee: Pure Storage, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Thomas F. Shirley, Jr.
  • Patent number: 10891400
    Abstract: A method includes dispersed storage error encoding, by a computing device of a dispersed storage network (DSN), a plurality of data segments to produce a plurality of sets of encoded data slices. The method further includes obfuscating a first set of encoded data slices of the plurality of sets of encoded data slices using a first obfuscating method to produce a first set of obfuscated encoded data slices. The method further includes obfuscating a second set of encoded data slices of the plurality of sets of encoded data slices using a second obfuscating method to produce a second set of obfuscated encoded data slices. The method further includes outputting the first and second sets of obfuscated encoded data slices for storage.
    Type: Grant
    Filed: November 27, 2018
    Date of Patent: January 12, 2021
    Assignee: PURE STORAGE, INC.
    Inventors: S. Christopher Gladwin, Thomas F. Shirley, Jr., Gary W. Grube
  • Patent number: 10838664
    Abstract: Systems and method for determining a storage location according to legal requirements. According to one example a dispersed storage (DS) processing unit receives data to store in a dispersed storage network (DSN) and assesses attributes of data to produce a determination of whether the data falls into one or more defined legal categories. The DS processing unit also determines one or more attributes of a storage location in the DSN. The DS processing unit then determines whether or not to select the storage location based on the determination and based on one or more attributes of the storage location. If storing data of the identified category would be illegal the DS processing unit evaluates the another storage location, and so on. If no available storage location is found the DS processing unit returns an error indicating that no legal storage location is found.
    Type: Grant
    Filed: November 17, 2016
    Date of Patent: November 17, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Russell P. Kennedy, Robert C. McCammon, Jason K. Resch, Thomas F. Shirley, Jr.