IP Library Granted Patent US 10,819,819
Granted Patent B2
US 10,819,819 · App. 15/288,261 · Granted Oct 27, 2020

Data storage based on content popularity

Inventors: Artur Bergman (San Francisco, CA); Rogier Mulhuijzen (The Hague, NL)
Assignee: Fastly, Inc.
H04L67/2842H04L65/4084H04L67/1097H04N21/231H04N21/23106
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 10,819,819
App. No.
15/288,261
Granted
Oct 27, 2020
Kind
B2
Abstract

Methods, systems, and software for operating a data storage system of a content delivery node are provided herein. In one example, a method of operating a data storage system of a content delivery node is presented. The method includes receiving content data into a storage system, storing the content data in a first storage space, determining popular content data within the content data based on at least user requests for the content data, and storing the popular content data in a second storage space.

Claims (53)

1. A method of operating a data storage system of a content delivery node, the method comprising:

receiving a dynamic content item generated by activities of end user devices into the data storage system through a communication interface;

transferring the dynamic content item for storage in a first storage space in the data storage system;

storing the dynamic content item in the first storage space;

determining, using a processor, that the dynamic content item exceeds a popularity threshold based on at least end user requests for the dynamic content item; and

responsively transferring the dynamic content item for storage in a second storage space in the data storage system.

2. The method of claim 1 wherein determining that the dynamic content item exceeds a popularity threshold comprises removing from the first storage space a second content item which does not exceed the popularity threshold content.

3. The method of claim 1 wherein transferring the dynamic content item for storage in a second storage space comprises one of retaining the dynamic content item in the first storage space and removing all content from the first storage space.

4. The method of claim 1 wherein determining that the dynamic content item exceeds a popularity threshold comprises calculating a count of end user requests weighted according to the recentness of the end user requests.

5. The method of claim 1 wherein the popularity threshold comprises at least one of a count of end user requests for the dynamic content item and a percentage of all end user requests that are for the dynamic content item.

6. The method of claim 1 wherein determining that the dynamic content item exceeds a popularity threshold comprises treating as unpopular content already residing in the second storage space.

7. The method of claim 1 wherein receiving the dynamic content item into the data storage system comprises receiving content that was dynamically generated by an origin server.

8. The method of claim 1 wherein the second storage space comprises at least one of a flash drive and a hard drive.

9. The method of claim 1 wherein the first storage space comprises a RAM.

10. The method of claim 1 wherein the dynamic content item comprises keyword search results.

11. The method of claim 1 , further comprising:

receiving a request for information from an end user;

determining that the information is not stored in the first storage space, but is stored in the second storage space;

retrieving the information from the second storage space;

and sending the information to the end user.

12. The method of claim 1 , further comprising:

receiving a request for information from an end user;

determining that the information is not stored in the second storage space, but is stored in the first storage space;

retrieving the information from the first storage space;

and sending the information to the end user.

13. A software apparatus comprising:

one or more computer readable storage media;

a processing system; and

program instructions stored on the one or more computer readable media and executable by the processing system to operate a data storage system of a content delivery node, wherein the program instructions, when executed by the processing system, direct the processing system to at least:

receive a dynamic content item generated by activities of end user devices into the data storage system through a communication interface;

transfer the dynamic content item for storage in a first storage space in the data storage system;

store the dynamic content item in the first storage space;

determine that the dynamic content item exceeds a popularity threshold based on at least end user requests for the dynamic content item; and

responsively transfer the dynamic content item for storage in a second storage space in the data storage system.

14. The software apparatus of claim 13 wherein determining that the dynamic content item exceeds a popularity threshold comprises removing from the first storage space a second content item which does not exceed the popularity threshold content.

15. The software apparatus of claim 13 wherein transferring the dynamic content item for storage in a second storage space comprises one of retaining the dynamic content item in the first storage space and removing all content from the first storage space.

16. The software apparatus of claim 13 wherein determining that the dynamic content item exceeds a popularity threshold comprises calculating a count of end user requests weighted according to the recentness of the end user requests.

17. The software apparatus of claim 13 wherein the popularity threshold comprises at least one of a count of end user requests for the dynamic content item and a percentage of all end user requests that are for the dynamic content item.

18. The software apparatus of claim 13 wherein determining that the dynamic content item exceeds a popularity threshold comprises treating as unpopular content already residing in the second storage space.

19. The software apparatus of claim 13 wherein receiving the dynamic content item into the data storage system comprises receiving content that was dynamically generated by an origin server.

20. The software apparatus of claim 13 wherein the popularity threshold comprises at least one of a flash drive and a hard drive.

21. The software apparatus of claim 13 wherein the first storage space comprises a RAM.

22. The software apparatus of claim 13 wherein the dynamic content item comprises keyword search results.

23. The apparatus of claim 13 , wherein the program instructions, when executed by the processing system, further direct the processing system to at least:

receive a request for information from an end user;

determine that the information is not stored in the first storage space, but is stored in the second storage space;

retrieve the information from the second storage space; and

send the information to the end user.

24. The apparatus of claim 13 , wherein the program instructions, when executed by the processing system, further direct the processing system to at least:

receive a request for information from an end user;

determine that the information is not stored in the second storage space, but is stored in the first storage space;

retrieve the information from the first storage space; and

send the information to the end user.

Assignments (2)
SECURITY INTEREST Recorded Feb 17, 2021
From: FASTLY, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AND COLLATERAL AGENT
Reel/Frame 055316/0616 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2016
From: BERGMAN, ARTUR; MULHUIJZEN, ROGIER
To: FASTLY, INC.
Reel/Frame 039966/0357 →
Continuity (3)
Continuation 14091759 · Nov 27, 2013
Provisional Application 61730419 · Nov 27, 2012
Related Publication 20170134517A1 · May 11, 2017