IP Library Granted Patent US 9,560,133
Granted Patent B2
US 9,560,133 · App. 13/464,272 · Granted Jan 31, 2017

Acquiring multi-media content

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,560,133
App. No.
13/464,272
Granted
Jan 31, 2017
Kind
B2
Abstract

A method begins by a dispersed storage (DS) processing module receiving a first sub-set of encoded data slices, wherein a data segment of multi-media content was encoded using a dispersed storage error coding function to produce a set of encoded data slices, wherein the set of encoded data slices is partitioned into the first sub-set of encoded data slices and a second sub-set of encoded data slices. The method continues with the DS processing module sending accessing information when the second sub-set of encoded data slices is to be requested. The method continues with the DS processing module receiving, in response to the accessing information, at least one of the encoded data slices of the second sub-set of encoded data slices such that a decode threshold number of encoded data slices have been received.

Claims (60)

1. A method comprises:

receiving, based on a partial download schedule of a distribution scheme, a first sub-set of encoded data slices, wherein a data segment of multi-media content was encoded using a dispersed storage error coding function to produce a set of encoded data slices, wherein the set of encoded data slices is partitioned into the first sub-set of encoded data slices and a second sub-set of encoded data slices, wherein the first sub-set of encoded data slices include less than a decode threshold number of encoded data slices, and wherein the second sub-set of encoded data slices are unavailable based on the partial download schedule of the distribution scheme;

determining whether to request the second sub-set of encoded data slices after the partial download schedule of the distribution scheme has completed and when the second sub-set of encoded data slices is made available based on the distribution scheme;

when the second sub-set of encoded data slices is to be requested, sending accessing information regarding the second sub-set of encoded data slices; and

receiving, in response to the accessing information, at least one of the encoded data slices of the second sub-set of encoded data slices such that the decode threshold number of encoded data slices have been received.

2. The method of claim 1 , wherein the receiving the first sub-set of encoded data slices comprises:

receiving a distribution of the first sub-set of encoded data slices to a plurality of potential accessing devices.

3. The method of claim 1 further comprises:

determining whether one or more of the first sub-set of encoded data slices has a slice error; and when the slice error exists:

identifying one or more slice names corresponding to the one or more of the first sub-set of encoded data slices having the slice error; and

requesting the one or more of the first sub-set of encoded data slices having the slice error from one or more devices of a user group based on the one or more slice names.

4. The method of claim 1 , wherein the determining whether to request the second sub-set of encoded data slices comprises:

determining when the multi-media content is available for purchase; and

when the multi-media content becomes available for purchase, indicating that the second sub-set of encoded data slices is to be requested.

5. The method of claim 1 , wherein the determining whether to request the second sub-set of encoded data slices comprises at least one of:

determining whether a storage time frame of the first sub-set of encoded data slices has expired and, when the storage time frame has expired, indicating that the second sub-set of encoded data slices is not going to be requested; and

determining a probability that the second sub-set of encoded data slices will be requested and, when the probability is likely that the second sub-set of encoded data slices will be requested, indicating that the second sub-set of encoded data slices is to be requested.

6. The method of claim 1 further comprises:

temporarily storing the first sub-set of encoded data slices prior to sending the accessing information; and

when the second sub-set of encoded data slices is not to be requested, facilitating deletion of the first sub-set of encoded data slices.

7. The method of claim 1 , wherein the receiving the first sub-set of encoded data slices comprises at least one of:

receiving a message that includes the first sub-set of encoded data slices from at least one of a dispersed storage (DS) processing unit, a user device, and an intermediate edge device of a dispersed storage network (DSN);

receiving the first sub-set of encoded data slices in accordance with a registered user program of a network; and

sending a request message for the first sub-set of encoded data slices.

8. The method of claim 1 further comprises:

determining whether to forward one or more of the first sub-set of encoded data slices to a user device; and

forwarding the one or more of the first sub-set of encoded data slices to the user device to the user device when forwarding.

9. A dispersed storage (DS) module comprises:

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

receive, based on a partial download schedule of a distribution scheme, a first sub-set of encoded data slices, wherein a data segment of multi-media content was encoded using a dispersed storage error coding function to produce a set of encoded data slices, wherein the set of encoded data slices is partitioned into the first sub-set of encoded data slices and a second sub-set of encoded data slices, wherein the first sub-set of encoded data slices include less than a decode threshold number of encoded data slices, and wherein the second sub-set of encoded data slices are unavailable based on the partial download schedule of the distribution scheme;

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

determine whether to request the second sub-set of encoded data slices after the partial download schedule of the distribution scheme has completed and when the second sub-set of encoded data slices is made available based on the distribution scheme;

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

when the second sub-set of encoded data slices is to be requested, send accessing information regarding the second sub-set of encoded data slices; and

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

receive, in response to the accessing information, at least one of the encoded data slices of the second sub-set of encoded data slices such that the decode threshold number of encoded data slices have been received.

10. The DS module of claim 9 , wherein the first module is operable to receive the first sub-set of encoded data slices by:

receiving a distribution of the first sub-set of encoded data slices to a plurality of potential accessing devices.

11. The DS module of claim 9 further comprises:

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

determine whether one or more of the first sub-set of encoded data slices has a slice error; and

when the slice error exists:

identify one or more slice names corresponding to the one or more of the first sub-set of encoded data slices having the slice error; and

request the one or more of the first sub-set of encoded data slices having the slice error from one or more devices of a user group based on the one or more slice names.

12. The DS module of claim 9 , wherein the second module is operable to determine whether to request the second sub-set of encoded data slices by:

determining when the multi-media content is available for purchase; and

when the multi-media content becomes available for purchase, indicating that the second sub-set of encoded data slices is to be requested.

13. The DS module of claim 9 , wherein the second module is further operable to determine whether to request the second sub-set of encoded data slices by at least one of:

determining whether a storage time frame of the first sub-set of encoded data slices has expired and, when the storage time frame has expired, indicating that the second sub-set of encoded data slices is not going to be requested; and

determining a probability that the second sub-set of encoded data slices will be requested and, when the probability is likely that the second sub-set of encoded data slices will be requested, indicating that the second sub-set of encoded data slices is to be requested.

14. The DS module of claim 9 , wherein the second module is further operable to:

temporarily store the first sub-set of encoded data slices prior to sending the accessing information; and

when the second sub-set of encoded data slices is not to be requested, facilitate deletion of the first sub-set of encoded data slices.

15. The DS module of claim 9 , wherein the first module is further operable to receive the first sub-set of encoded data slices by at least one of:

receiving a message that includes the first sub-set of encoded data slices from at least one of a dispersed storage (DS) processing unit, a user device, and an intermediate edge device of a dispersed storage network (DSN);

receiving the first sub-set of encoded data slices in accordance with a registered user program of a network; and

sending a request message for the first sub-set of encoded data slices.

16. The DS module of claim 9 , wherein the first module is further operable to:

determine whether to forward one or more of the first sub-set of encoded data slices to a user device; and

forward the at least some of the one or more of the first sub-set of encoded data slices to the user device when forwarding.

Assignments (6)
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 6, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038629/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 8, 2012
From: GLADWIN, S. CHRISTOPHER; GRUBE, GARY W.; MARKISON, TIMOTHY W.
To: CLEVERSAFE, INC.
Reel/Frame 028173/0734 →