IP Library Granted Patent US 9,208,026
Granted Patent B2
US 9,208,026 · App. 14/505,835 · Granted Dec 8, 2015

Utilizing a local area network memory and a dispersed storage network memory to access data

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 9,208,026
App. No.
14/505,835
Granted
Dec 8, 2015
Kind
B2
Abstract

A method begins by a processing module encoding data based on a decode threshold parameter and a pillar width parameter to produce a set of encoded data slices and selecting a local area network (LAN) pillar width value of encoded data slices of the set of encoded data slices for storage in LAN available memories, wherein the LAN pillar width value is based on the decode threshold parameter, the pillar width parameter, and quantities of the LAN available memories. The method continues with the processing module selecting a wide area network (WAN) pillar width value of encoded data slices of the set of encode data slices for storage in a dispersed storage network (DSN) memory of a wide area network, wherein the WAN pillar width value is based on the decode threshold parameter and the pillar width parameter.

Claims (41)

1. A method for execution by a computing device, the method comprises:

receiving a request for a data segment of data that has been encoded into a set of encoded data slices in accordance with a dispersed storage error coding function and based on a decode threshold parameter and a pillar number, wherein a local area network (LAN) number of encoded data slices of the set of encoded data slices are stored in memories of LAN memory, wherein the memories of the LAN memory include fixed memory and mobile memory, wherein a wide area network (WAN) number of encoded data slices of the set of encoded data slices are stored in memories of WAN memory, wherein a decode threshold number of encoded data slices of the set of encoded data slices are needed to decode and recover the data segment, and wherein each of the LAN number and the WAN number is equal to or greater than the decode threshold number;

requesting the LAN number of encoded data slices from the LAN memory;

when less than the decode threshold number of encoded data slices are received from the LAN memory due to unavailability of one or more the mobile memories of the LAN memory, requesting encoded data slices of the WAN number of encoded data slices until the decode threshold number of encoded data slices has been received; and

decoding the decode threshold number of encoded data slices to recover the data segment.

2. The method of claim 1 further comprises:

the memories of the LAN memory that are mobile memory include memory of a mobile device; and

the memories of the LAN memory that are fixed memory include memory of a fixed device.

3. The method of claim 1 further comprises:

when at least the decode threshold number of encoded data slices are received from the LAN memory, decoding the decode threshold number of the at least the decode threshold number encoded data slices to recover the data segment.

4. The method of claim 1 , wherein the requesting the LAN number of encoded data slices comprises:

determining whether the LAN memory is accessible; and

when the LAN memory is accessible, sending read requests to the memories of the LAN memory.

5. The method of claim 4 further comprises:

sending queries to the memories of the LAN memory; and

based on responses to the queries, determining whether the LAN memory is accessible.

6. The method of claim 1 , requesting encoded data slices of the WAN number of encoded data slices comprises:

determining a deficit number to represent how many more encoded data slices are needed to yield the decode threshold number of encoded data slices; and

sending a deficit number of read requests to a deficit number of memories of the WAN memory.

7. A dispersed storage (DS) module comprises:

a first module, when operable within a computing device hosting the DS module, causes the computing device to:

receive a request for a data segment of data that has been encoded into a set of encoded data slices in accordance with a dispersed storage error coding function and based on a decode threshold parameter and a pillar number, wherein a local area network (LAN) number of encoded data slices of the set of encoded data slices are stored in memories of LAN memory, wherein the memories of the LAN memory include fixed memory and mobile memory, wherein a wide area network (WAN) number of encoded data slices of the set of encoded data slices are stored in memories of WAN memory, wherein a decode threshold number of encoded data slices of the set of encoded data slices are needed to decode and recover the data segment, and wherein each of the LAN number and the WAN number is equal to or greater than the decode threshold number;

a second module, when operable within the computing device, causes the computing device to:

request the LAN number of encoded data slices from the LAN memory; and

when less than the decode threshold number of encoded data slices are received from the LAN memory due to unavailability of one or more the mobile memories of the LAN memory, request encoded data slices of the WAN number of encoded data slices until the decode threshold number of encoded data slices has been received; and

a third module, when operable within the computing device, causes the computing device to:

decode the decode threshold number of encoded data slices to recover the data segment.

8. The DS module of claim 7 further comprises:

the memories of the LAN memory that are mobile memory include memory of a mobile device; and

the memories of the LAN memory that are fixed memory include memory of a fixed device.

9. The DS module of claim 7 , wherein the third module further causes the computing device to:

when at least the decode threshold number of encoded data slices are received from the LAN memory, decode the decode threshold number of the at least the decode threshold number encoded data slices to recover the data segment.

10. The DS module of claim 7 , wherein the second module further causes the computing device to request the LAN number of encoded data slices by:

determining whether the LAN memory is accessible; and

when the LAN memory is accessible, sending read requests to the memories of the LAN memory.

11. The DS module of claim 10 , wherein the second module further causes the computing device to:

send queries to the memories of the LAN memory; and

based on responses to the queries, determine whether the LAN memory is accessible.

12. The DS module of claim 7 , wherein the second module further causes the computing device to request the encoded data slices of the WAN number of encoded data slices by:

determining a deficit number to represent how many more encoded data slices are needed to yield the decode threshold number of encoded data slices; and

sending a deficit number of read requests to a deficit number of memories of the WAN memory.

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 9992063 AND 10334045 LISTED IN ERROR PREVIOUSLY RECORDED ON REEL 049556 FRAME 0012. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052205/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 13, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038687/0596 →