IP Library Patent Application 15822972
Patent Application
App. No. 15/822,972

PERFORMANCE RANKING OF READ REQUESTS IN A DISTRIBUTED STORAGE NETWORK

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 None
App. No.
15/822,972
Abstract

A method begins with a processing unit of a dispersed storage network (DSN) receiving a read request for a data segment, wherein a data segment is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that are distributedly stored in a set of storage units (SUs). The method continues with the processing unit identifying the set of SUs storing the set of EDSs and then identifying a read prioritization scheme for the read request. Based on the read prioritization scheme the method continues by selecting a read threshold number of SUs from the set of SUs storing the set of EDSs; and issuing read slice requests to each SU of the read threshold number of SUs.

Claims (42)

1 . A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method comprises:

receiving a read request for a data segment, wherein a data object is segmented into a plurality of data segments that includes the data segment, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of a pillar width and further wherein the set of EDSs are distributedly stored in a set of storage units (SUs);

identifying the set of SUs storing the set of EDSs;

identifying a read prioritization scheme for the read request;

based on the read prioritization scheme, selecting a read threshold number of SUs from the set of SUs storing the set of EDSs; and

issuing read slice requests to each SU of the read threshold number of SUs.

2 . The method of claim 1 , wherein the dispersal parameters include at least one of a pillar width, a write threshold, a read threshold, a decode threshold, an encoding matrix identifier, and an information dispersal algorithm identifier.

3 . The method of claim 1 , wherein the identifying a read prioritization scheme is based on at least one of the read request, a vault identifier (ID), a data ID, a registry lookup, a directory lookup, a data type indicator, a data size estimator, a segment priority indicator, a performance requirement, and a reliability requirement.

4 . The method of claim 1 , wherein the read prioritization scheme is one of a minimum latency scheme, a maximum throughput scheme, and a maximum predictability scheme.

5 . The method of claim 4 wherein the minimum latency scheme includes a fast retrieval access time for the read request.

6 . The method of claim 4 wherein the read prioritization scheme is based on a data size estimator and further wherein the maximum throughput scheme is identified based on the data size estimator indicating a data size greater than a pre-determined threshold.

7 . The method of claim 4 wherein the read prioritization scheme is based on a reliability requirement and further wherein the maximum predictability scheme is identified based on the reliability requirement indicating a low standard deviation of retrieval performance.

8 . The method of claim 1 , wherein the read prioritization scheme is a minimum latency scheme and further wherein the identifying the minimum latency scheme is based on latency information for each of the read threshold number of SUs.

9 . The method of claim 8 further comprises:

obtaining latency information by executing at least one of performing a lookup, initiating a query, receiving a response and performing a test.

10 . The method of claim 1 , wherein the read prioritization scheme is a maximum throughput scheme and further wherein the identifying the maximum throughput scheme is based on throughput information for each of the read threshold number of SUs.

11 . The method of claim 10 further comprises:

obtaining throughput information by executing at least one of performing a lookup, initiating a query, receiving a response and performing a test.

12 . The method of claim 1 , wherein the read prioritization scheme is a maximum predictability scheme and further wherein the identifying the maximum predictability scheme is based on predictability information for each of the read threshold number of SUs.

13 . The method of claim 12 further comprises:

obtaining predictability information by executing at least one of performing a lookup, initiating a query, receiving a response and performing a test.

14 . A computer readable storage medium comprises:

at least one memory section that stores operational instructions that, when executed by one or more processing modules of one or more computing devices of a (DSN), causes the one or more processing modules to:

receive a read request for a data segment, wherein a data object is segmented into a plurality of data segments that includes the data segment, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of a pillar width and further wherein the set of EDSs are distributedly stored in a set of storage units (SUs);

identify the set of SUs storing the set of EDSs;

identify a read prioritization scheme for the read request, wherein the read prioritization scheme is one of a minimum latency scheme, a maximum throughput scheme, and a maximum predictability scheme;

based on the read prioritization scheme, select a read threshold number of SUs from the set of SUs storing the set of EDSs; and

issue read slice requests to each SU of the read threshold number of SUs.

15 . The computer readable storage medium of claim 14 , wherein the read prioritization scheme is identified based on at least one of the read request, a vault identifier (ID), a data ID, a registry lookup, a directory lookup, a data type indicator, a data size estimator, a segment priority indicator, a performance requirement, and a reliability requirement.

16 . The computer readable storage medium of claim 14 , wherein the read prioritization scheme is the minimum latency scheme and further wherein the minimum latency scheme is identified based on latency information for each of the read threshold number of SUs.

17 . The computer readable storage medium of claim 14 , wherein the read prioritization scheme is the maximum throughput scheme and further wherein the maximum throughput scheme is identified based on throughput information for each of the read threshold number of SUs.

18 . The computer readable storage medium of claim 14 , wherein the read prioritization scheme is the maximum predictability scheme and further wherein the maximum predictability scheme is identified based on predictability information for each of the read threshold number of SUs.

19 . A dispersed storage (DS) processing unit of a dispersed storage network (DSN), the dispersed storage (DS) processing unit comprises:

an interface;

a local memory; and

a processing module operably coupled to the interface and the local memory, wherein the processing module functions to:

receive, via the interface, a read request for a data segment, wherein a data object is segmented into a plurality of data segments that includes the data segment, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices (EDSs) that is of a pillar width and further wherein the set of EDSs are distributedly stored in a set of storage units (SUs);

identify the set of SUs storing the set of EDSs;

identify a read prioritization scheme for the read request, wherein the read prioritization scheme is one of a minimum latency scheme, a maximum throughput scheme, and a maximum predictability scheme;

based on the read prioritization scheme, select a read threshold number of SUs from the set of SUs storing the set of EDSs; and

issue read slice requests to each SU of the read threshold number of SUs.

20 . The dispersed storage (DS) processing unit of claim 19 , wherein the read prioritization scheme is identified based on at least one of the read request, a vault identifier (ID), a data ID, a registry lookup, a directory lookup, a data type indicator, a data size estimator, a segment priority indicator, a performance requirement, and a reliability requirement.

Assignments (5)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE DELETE 15/174/279 AND 15/174/596 PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 49555 FRAME: 530. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 7, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 051495/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049555/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2017
From: RESCH, JASON K.; DHUSE, GREG R.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 044235/0968 →