IP Library Granted Patent US 11,070,318
Granted Patent B1
US 11,070,318 · App. 16/860,302 · Granted Jul 20, 2021

Forwarding data amongst cooperative computing devices of a massive data ingestion system

Inventors: S. Christopher Gladwin (Chicago, IL); Greg R. Dhuse (Chicago, IL); Timothy W. Markison (Mesa, AZ); Wesley B. Leggette (Chicago, IL); Jason K. Resch (Chicago, IL); Gary W. Grube (Barrington Hills, IL)
Assignee: PURE STORAGE, INC.
H04L1/0076G06F3/064G06F3/067G06F3/0619G06F11/1076G06F11/2053H03M13/05H04L1/0041H04L1/0057H04L67/1097H03M13/1515H03M13/3761H03M13/611H04L69/40
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,070,318
App. No.
16/860,302
Granted
Jul 20, 2021
Kind
B1
Abstract

A method begins with a first group of computing devices of a plurality of computing devices of a storage network receiving data objects having a first data type identifier of a plurality of data type identifiers, where the plurality of data type identifiers correspond to a plurality of data types associated with the data objects. The method continues with the first group of computing devices interpreting the data objects having the first data type identifier to sort, based on sorting criteria the data objects into a first processing category and a second processing category. The method continues with the first group of computing devices error encoding the data objects in the second processing category based on short term storage error encoding parameters to produce pluralities of sets of encoded data slices and sending the slices to storage and execution units.

Claims (76)

1. A method for ingesting a large amount of data in a storage network, wherein the method is executed by one or more computing devices of a plurality of computing devices of the storage network, wherein the method comprises:

receiving, by a first group of computing devices of the plurality of computing devices, data objects having a first data type identifier of a plurality of data type identifiers, wherein the plurality of data type identifiers correspond to a plurality of data types associated with the data objects;

interpreting, by the first group of computing devices, the data objects having the first data type identifier to sort, based on sorting criteria, the data objects having the first data type identifier into a first processing category and a second processing category;

error encoding, by the first group of computing devices, the data objects in the second processing category based on short term storage error encoding parameters to produce pluralities of sets of encoded data slices; and

sending, by the first group of computing devices, the pluralities of sets of encoded data slices to a set of storage and execution units for storage therein.

2. The method of claim 1 , wherein the plurality of data types comprises two or more of:

a data file;

an email;

a blog;

a white paper;

a social media post; and

graphics.

3. The method of claim 1 , wherein the sorting criteria comprises one or more of:

a word search;

an image search;

destination information;

facial recognition;

an encryption type; and

source information.

4. The method of claim 1 further comprises:

receiving, by a second group of computing devices of the plurality of computing devices, data objects having a second data type identifier of the plurality of data type identifiers;

interpreting, by the second group of computing devices, the data objects having the second data type identifier to sort, based on second sorting criteria, the data objects having the second data type identifier into a third processing category and a fourth processing category;

error encoding, by the second group of computing devices, the data objects in the fourth processing category based on short term storage error encoding parameters to produce second pluralities of sets of encoded data slices; and

sending, by the second group of computing devices, the second pluralities of sets of encoded data slices to a second set of storage and execution units for storage.

5. The method of claim 1 further comprises:

discarding, by the first group of computing devices, the data objects of the first processing category.

6. The method of claim 1 further comprises:

sending, by the first group of computing devices, the data objects of the first processing category to a second set of storage and execution units for storage.

7. The method of claim 1 further comprises:

interpreting, by the set of storage and execution units, the pluralities of sets of encoded data slices to determine data objects of interest of the data objects of the second processing category based on interest criteria;

error encoding, by the set of storage and execution units, the data objects of interest based on long term storage error encoding parameters to produce second pluralities of sets of encoded data slices; and

sending, by the set of storage and execution units, the second pluralities of sets of encoded data slices to a second set of storage and execution unit units for storage and subsequent processing.

8. The method of claim 1 further comprises:

obtaining, by the one or more computing devices, the data objects;

as the data objects are obtained:

assigning a data type identifier of the plurality of data type identifiers to each data object of the data objects based on the data object being a data type of the plurality of data types;

sending the data objects having the first data type identifier to the first group of computing devices; and

sending data objects having a second data type identifier to a second group of computing devices of the plurality of computing devices.

9. A computer readable memory device of a storage network comprises:

at least one memory element for storing operational instructions that, when executed by a first group of computing devices of a plurality of computing devices of the storage network, causes the first group of computing devices to:

receive data objects having a first data type identifier of a plurality of data type identifiers, wherein the plurality of data type identifiers correspond to a plurality of data types associated with the data objects;

interpret the data objects having the first data type identifier to sort, based on sorting criteria, the data objects having the first data type identifier into a first processing category and a second processing category;

error encode the data objects in the second processing category based on short term storage error encoding parameters to produce pluralities of sets of encoded data slices; and

send the pluralities of sets of encoded data slices to a set of storage and execution units for storage.

10. The computer readable memory device of claim 9 , wherein the plurality of data types comprises two or more of:

a data file;

an email;

a blog;

a white paper;

a social media post; and

graphics.

11. The computer readable memory device of claim 9 , wherein the sorting criteria comprises one or more of:

a word search;

an image search;

destination information;

facial recognition;

an encryption type; and

source information.

12. The computer readable memory device of claim 9 , wherein the at least one memory element stores further operational instructions that, when executed by a second group of computing devices of the plurality of computing devices, causes the second group of computing devices to:

interpret the data objects having a second data type identifier of the plurality of data type identifiers to sort, based on second sorting criteria, the data objects having the second data type identifier into a third processing category and a fourth processing category;

dispersed storage error encode the data objects in the fourth processing category based on short term storage error encoding parameters to produce second pluralities of sets of encoded data slices; and

send the second pluralities of sets of encoded data slices to a second set of storage and execution units for storage.

13. The computer readable memory device of claim 9 , wherein the at least one memory element stores further operational instructions that, when executed by the first group of computing devices, causes the first group of computing devices to:

discard the data objects of the first processing category.

14. The computer readable memory device of claim 9 , wherein the at least one memory element stores further operational instructions that, when executed by the first group of computing devices, causes the first group of computing devices to:

send the data objects of the first processing category to a second set of storage and execution units for storage.

15. The computer readable memory device of claim 9 , where the at least one memory element for stores further operational instructions that, when executed by the set of storage and execution units, causes the set of storage and execution units to:

interpret the pluralities of sets of encoded data slices to determine data objects of interest of the data objects of the second processing category based on interest criteria;

dispersed storage error encode the data objects of interest based on long term storage error encoding parameters to produce second pluralities of sets of encoded data slices; and

send the second pluralities of sets of encoded data slices to a second set of storage and execution unit units for storage and subsequent processing.

16. The computer readable memory device of claim 9 , wherein the at least one memory element stores further operational instructions that, when executed by one or more computing devices of the plurality of computing devices, causes the one or more computing devices to:

obtain the data objects; and

as the data objects are obtained:

assign a data type identifier of the plurality of data type identifiers to each data object of the data objects based on the data object being a data type of the plurality of data types;

send the data objects having the first data type identifier to the first group of computing devices; and

send data objects having a second data type identifier to a second group of computing devices of the plurality of computing devices.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2020
From: GLADWIN, S. CHRISTOPHER; DHUSE, GREG R.; MARKISON, TIMOTHY W.; LEGGETTE, WESLEY B.; RESCH, JASON K.; GRUBE, GARY W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 052520/0985 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052521/0058 →