IP Library Granted Patent US 8,812,454
Granted Patent B2
US 8,812,454 · App. 13/348,754 · Granted Aug 19, 2014

Apparatus and method for managing storage of data blocks

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 8,812,454
App. No.
13/348,754
Granted
Aug 19, 2014
Kind
B2
Abstract

A data block storage management capability is presented. A cloud file system management capability manages storage of data blocks of a file system across multiple cloud storage services (e.g., including determining, for each data block to be stored, a storage location and a storage duration for the data block). A cloud file system management capability manages movement of data blocks of a file system between storage volumes of cloud storage services. A cloud file system management capability provides a probabilistic eviction scheme for evicting data blocks from storage volumes of cloud storage services in advance of storage deadlines by which the data blocks are to be removed from the storage volumes. A cloud file system management capability enables dynamic adaptation of the storage volume sizes of the storage volumes of the cloud storage services.

Claims (105)

1. An apparatus, comprising:

a processor configured to:

determine a storage duration for storage of a data block in a memory, the storage duration configured to indicate a time at which the data block is scheduled to be removed from the memory;

compute a data block eviction time for the data block based on a probability density function configured to describe a probability of removing the data block from the memory at a time, within a range of time from an initial time to the time at which the data block is scheduled to be removed from the memory, since a last access time of the data block; and

evict the data block from the memory when the data block eviction time elapses without a subsequent access to the data block.

2. The apparatus of claim 1 , wherein the processor is configured to:

compute the data block eviction time when the data block is stored in the memory or accessed from the memory.

3. The apparatus of claim 1 , wherein the processor is configured to compute the probability density function as:

p

(

t

)

=

1

T

(

e

-

1

)

t

/

T

,

wherein T is the storage duration for the data block and t is the time since the last access time of the data block.

4. The apparatus of claim 1 , wherein, to compute the data block eviction time, the processor is configured to:

generate a uniformly distributed random variable U in the range [0:1]; and

compute the data block eviction time from a current time as T log [(e−1)U+1], wherein T is the storage duration for the data block.

5. The apparatus of claim 1 , wherein the processor is configured to determine the storage duration for the data block by computing the storage duration for the data block using cost information associated with each of a plurality of memories available for storing the data block.

6. The apparatus of claim 1 , wherein the memory is configured to host a storage volume of a cloud storage service.

7. The apparatus of claim 1 , wherein the memory is a memory of an end user computer.

8. A method, comprising:

determining, by a processor, a storage duration for storage of a data block in a memory, the storage duration configured to indicate a time at which the data block is scheduled to be removed from the memory;

computing a data block eviction time for the data block based on a probability density function configured to describe a probability of removing the data block from the memory at a time, within a range of time from an initial time to the time at which the data block is scheduled to be removed from the memory, since a last access time of the data block; and

evicting the data block from the memory when the data block eviction time elapses without a subsequent access to the data block.

9. The method of claim 8 , wherein the data block eviction time is computed when the data block is stored in the memory or accessed from the memory.

10. The method of claim 8 , further comprising:

computing the probability density function as:

p

(

t

)

=

1

T

(

e

-

1

)

t

/

T

,

wherein T is the storage duration for the data block and t is the time since the last access time of the data block.

11. The method of claim 8 , wherein computing the data block eviction time comprises:

generating a uniformly distributed random variable U in the range [0:1]; and

computing the data block eviction time from a current time as T log [(e−1)U+1], wherein T is the storage duration for the data block.

12. The method of claim 8 , wherein determining the storage duration for the data block comprises:

computing the storage duration for the data block using cost information associated with each of a plurality of memories available for storing the data block.

13. The method of claim 8 , wherein the memory is configured to host a storage volume of a cloud storage service.

14. The method of claim 8 , wherein the memory is a memory of an end user computer.

15. A non-transitory computer-readable storage medium storing instructions which, when executed by a computer, cause the computer to perform a method, the method comprising:

determining a storage duration for storage of a data block in a memory, the storage duration configured to indicate a time at which the data block is scheduled to be removed from the memory;

computing a data block eviction time for the data block based on a probability density function configured to describe a probability of removing the data block from the memory at a time, within a range of time from an initial time to the time at which the data block is scheduled to be removed from the memory, since a last access time of the data block; and

evicting the data block from the memory when the data block eviction time elapses without a subsequent access to the data block.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the data block eviction time is computed when the data block is stored in the memory or accessed from the memory.

17. The non-transitory computer-readable storage medium of claim 15 , the method further comprising:

computing the probability density function as:

p

(

t

)

=

1

T

(

e

-

1

)

t

/

T

,

wherein T is the storage duration for the data block and t is the time since the last access time of the data block.

18. The non-transitory computer-readable storage medium of claim 15 , wherein computing the data block eviction time comprises:

generating a uniformly distributed random variable U in the range [0:1]; and

computing the data block eviction time from a current time as T log [(e−1)U+1], wherein T is the storage duration for the data block.

19. The non-transitory computer-readable storage medium of claim 15 , wherein determining the storage duration for the data block comprises:

computing the storage duration for the data block using cost information associated with each of a plurality of memories available for storing the data block.

20. The non-transitory computer-readable storage medium of claim 15 , wherein the memory is configured to host a storage volume of a cloud storage service.

21. The non-transitory computer-readable storage medium of claim 15 , wherein the memory is a memory of an end user computer.

Assignments (11)
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2020
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP, LLC; PROVENANCE ASSET GROUP HOLDINGS LLC
Reel/Frame 051963/0510 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 28, 2020
From: PROVENANCE ASSET GROUP LLC
To: PROVEN NETWORKS, LLC
Reel/Frame 051963/0125 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2020
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: PROVENANCE ASSET GROUP, LLC; PROVENANCE ASSET GROUP HOLDINGS, LLC
Reel/Frame 051963/0707 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033949/0016 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2013
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 029858/0206 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2012
From: PUTTASWAMY NAGA, KRISHNA P; NANDAGOPAL, THYAGARAJAN; KODIALAM, MURALIDHARAN S
To: ALCATEL-LUCENT USA INC.
Reel/Frame 027621/0740 →