IP Library Granted Patent US 8,166,248
Granted Patent B2
US 8,166,248 · App. 12/001,837 · Granted Apr 24, 2012

Caching of information according to popularity

Assignee: ARRIS Group, Inc.
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,166,248
App. No.
12/001,837
Granted
Apr 24, 2012
Kind
B2
Abstract

A system includes logic to cache at least one block in at least one cache if the block has a popularity that compares favorably to the popularity of other blocks in the cache, where the popularity of the block is determined by reads of the block from persistent storage and reads of the block from the cache.

Claims (42)

1. A method comprising:

caching at least one block in at least one cache if the block has a popularity that compares favorably to the popularity of blocks in the cache, where the popularity of the block is determined by real reads of the block from persistent storage and reads of the block from the cache;

only when the block is a parity block, the popularity of the block is determined by reads of the block from persistent storage and reads of the block from the cache, whether real or contingent.

2. The method of claim 1 , wherein the caching at least one block in at least one cache if the block has a popularity that compares favorably to the popularity of blocks in the cache further comprises:

caching the block if it is one or more of as popular, more popular, or as or more popular than at least one other block in the cache.

3. The method of claim 2 , wherein the caching the block if it is as popular, more popular, or as or more popular than at least one other block in the cache, further comprises:

caching the block if it is as popular as the at least one other block in the cache and more recently read than the at least one other block.

4. The method of claim 1 , wherein the caching at least one block in at least one cache if the block has a popularity that compares favorably to the popularity of blocks in the cache further comprises:

caching the block on a node of a multi-node stream server, the node where the block is cached comprising mass storage where the block is stored.

5. The method of claim 1 , wherein the caching at least one block in at least one cache if the block has a popularity that compares favorably to the popularity of blocks in the cache further comprises:

the popularity of the block determined at least in part by how many reads of the block have occurred from mass storage or cache over one or more intervals of time.

6. The method of claim 1 , further comprising:

not caching the block if the popularity of the block does not compare favorably with the popularity of the other blocks in the cache, even if the block is read more recently than at least some of the other blocks in the cache.

7. The method of claim 1 , further comprising:

replacing the block if the popularity of the block does not compare favorably with a replacement block, even if the block is read more frequently from cache than the replacement block is read from persistent storage.

8. The method of claim 1 , further comprising:

each node of a multi-node media server maintaining popularity of blocks persistently stored by the node.

9. The method of claim 1 , further comprising:

applying at least one decay function to block popularities.

10. The method of claim 9 , wherein applying at least one decay function to block popularities further comprises:

reducing at least some of the block popularities after an amount of time has elapsed.

11. The method of claim 10 , wherein reducing at least some of the block popularities after an amount of time has elapsed further comprises:

dividing at least some of the block popularities by some amount after the amount of time has elapsed.

12. The method of claim 9 , wherein applying at least one decay function to block popularities further comprises:

reducing the block popularities in a manner that preserves a popularity order.

13. The method of claim 9 , wherein applying at least one decay function to block popularities further comprises:

applying the decay function as a result of at least one block reaching a popularity limit.

14. The method of claim 1 , further comprising:

initializing at least some block popularities as a result of a startup and-or reset situation.

15. The method of claim 14 , wherein initializing at least some block popularities as a result of a startup and-or reset situation further comprises:

initializing block popularities at least in part according to popularity histories of the blocks.

16. The method of claim 14 , wherein initializing at least some block popularities as a result of a startup and-or reset situation further comprises:

initializing block popularities at least in part according to the media streaming and-or viewing histories of programs comprising the blocks.

17. The method of claim 14 , wherein initializing at least some block popularities as a

result of a startup and-or reset situation further comprises:

initializing block popularities at least in part according to popularities of blocks of adjacent storage locations.

18. The method of claim 17 , wherein initializing block popularities at least in part according to popularities of blocks of adjacent storage locations further comprises:

initializing the block popularities at least in part according to popularity of blocks of adjacent RAID storage locations of different nodes of a media server hypercube.

19. A system comprising:

machine memory or non-transitory machine-readable media embodying logic to cache at least one block in at least one cache if the block has a popularity that compares favorably to the popularity of other blocks in the cache, where the popularity of the block is determined by real reads of the block from persistent storage and reads of the block from the cache; only when the block is a parity block, the popularity of the block is determined by reads of the block from persistent storage and reads of the block from the cache, whether real or contingent.

20. The system of claim 19 , wherein the logic to cache at least one block if the block has a popularity that compares favorably to the popularity of other blocks in the cache further comprises:

machine memory or non-transitory machine-readable media embodying logic to cache the block if it is one or more of as popular, more popular, or as or more popular than at least one other block in the cache.

Assignments (14)
SECURITY INTEREST Recorded Apr 8, 2026
From: ARRIS ENTERPRISES LLC; RUCKUS IP HOLDINGS LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 075476/0814 →
RELEASE OF SECURITY INTEREST AT REEL/FRAME 049905/0504 Recorded Dec 19, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: ARRIS ENTERPRISES LLC (F/K/A ARRIS ENTERPRISES, INC.); ARRIS TECHNOLOGY, INC.; ARRIS SOLUTIONS, INC.; COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; RUCKUS WIRELESS, LLC (F/K/A RUCKUS WIRELESS, INC.)
Reel/Frame 071477/0255 →
SECURITY INTEREST Recorded Dec 17, 2024
From: ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE INC., OF NORTH CAROLINA; OUTDOOR WIRELESS NETWORKS LLC; RUCKUS IP HOLDINGS LLC
To: APOLLO ADMINISTRATIVE AGENCY LLC
Reel/Frame 069889/0114 →
SECURITY INTEREST Recorded Nov 19, 2021
From: ARRIS SOLUTIONS, INC.; ARRIS ENTERPRISES LLC; COMMSCOPE TECHNOLOGIES LLC; COMMSCOPE, INC. OF NORTH CAROLINA; RUCKUS WIRELESS, INC.
To: WILMINGTON TRUST
Reel/Frame 060752/0001 →
PATENT SECURITY AGREEMENT Recorded Jul 3, 2019
From: ARRIS ENTERPRISES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 049820/0495 →
TERM LOAN SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049905/0504 →
ABL SECURITY AGREEMENT Recorded Jul 3, 2019
From: COMMSCOPE, INC. OF NORTH CAROLINA; COMMSCOPE TECHNOLOGIES LLC; ARRIS ENTERPRISES LLC; ARRIS TECHNOLOGY, INC.; RUCKUS WIRELESS, INC.; ARRIS SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 049892/0396 →
CHANGE OF NAME Recorded Jun 25, 2019
From: ARRIS ENTERPRISES, INC.
To: ARRIS ENTERPRISES LLC
Reel/Frame 049586/0470 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Apr 8, 2019
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: ARRIS GROUP, INC.; ARRIS ENTERPRISES, INC.; ARRIS SOLUTIONS, INC.; ARRIS KOREA, INC.; ARRIS HOLDINGS CORP. OF ILLINOIS, INC.; BIG BAND NETWORKS, INC.; TEXSCAN CORPORATION; POWER GUARD, INC.; 4HOME, INC.; ACADIA AIC, INC.; AEROCAST, INC.; BROADBUS TECHNOLOGIES, INC.; GENERAL INSTRUMENT CORPORATION; GENERAL INSTRUMENT AUTHORIZATION SERVICES, INC.; GENERAL INSTRUMENT INTERNATIONAL HOLDINGS, INC.; IMEDIA CORPORATION; JERROLD DC RADIO, INC.; LEAPSTONE SYSTEMS, INC.; MODULUS VIDEO, INC.; MOTOROLA WIRELINE NETWORKS, INC.; NETOPIA, INC.; NEXTLEVEL SYSTEMS (PUERTO RICO), INC.; QUANTUM BRIDGE COMMUNICATIONS, INC.; SETJAM, INC.; SUNUP DESIGN SYSTEMS, INC.; UCENTRIC SYSTEMS, INC.; GIC INTERNATIONAL HOLDCO LLC; GIC INTERNATIONAL CAPITAL LLC; CCE SOFTWARE LLC; THE GI REALTY TRUST 1996
Reel/Frame 048825/0294 →
CHANGE OF NAME Recorded Mar 14, 2017
From: ARRIS ENTERPRISES INC
To: ARRIS ENTERPRISES LLC
Reel/Frame 041995/0031 →
SECURITY AGREEMENT Recorded May 28, 2013
From: ARRIS GROUP, INC.; ARRIS ENTERPRISES, INC.; ARRIS SOLUTIONS, INC.; ARRIS KOREA, INC.; ARRIS HOLDINGS CORP. OF ILLINOIS; BIGBAND NETWORKS, INC.; TEXSCAN CORPORATION; POWER GUARD, INC.; 4HOME, INC.; ACADIA AIC, INC.; AEROCAST, INC.; BROADBUS TECHNOLOGIES, INC.; GENERAL INSTRUMENT CORPORATION; GENERAL INSTRUMENT AUTHORIZATION SERVICES, INC.; GENERAL INSTRUMENT INTERNATIONAL HOLDINGS, INC.; IMEDIA CORPORATION; JERROLD DC RADIO, INC.; LEAPSTONE SYSTEMS, INC.; MODULUS VIDEO, INC.; MOTOROLA WIRELINE NETWORKS, INC.; NETOPIA, INC.; NEXTLEVEL SYSTEMS (PUERTO RICO), INC.; QUANTUM BRIDGE COMMUNICATIONS, INC.; SETJAM, INC.; SUNUP DESIGN SYSTEMS, INC.; UCENTRIC SYSTEMS, INC.; GIC INTERNATIONAL HOLDCO LLC; GIC INTERNATIONAL CAPITAL LLC; CCE SOFTWARE LLC; THE GI REALTY TRUST 1996
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 030498/0023 →
MERGER Recorded Apr 16, 2013
From: ARRIS GROUP, INC.
To: ARRIS ENTERPRISES, INC.
Reel/Frame 030228/0349 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2012
From: BROADBAND ROYALTY CORPORATION N/K/A ARRIS SOLUTIONS, INC.
To: ARRIS GROUP, INC.
Reel/Frame 027575/0716 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2008
From: PROVENZANO, CHRISTOPHER A.; JACKSON, BENEDICT J.; GALASSI, MICHAEL N.; SEATON, CARL H.
To: BROADBAND ROYALTY CORPORATION
Reel/Frame 020847/0986 →
Continuity (2)
Continuation PCTUS2006022880 · Jun 12, 2006
Related Publication 20090043967A1 · Feb 12, 2009