IP Library Granted Patent US 11,106,590
Granted Patent B2
US 11,106,590 · App. 16/736,217 · Granted Aug 31, 2021

Monitoring service for pre-cached data modification

Inventor: Michal M. Bryc (Seattle, WA)
Assignee: HOME BOX OFFICE, INC.
G06F12/0862G06F12/0891G06F12/128G06F16/24552H04L67/2842G06F2212/154G06F2212/163G06F2212/60G06F2212/6024
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 11,106,590
App. No.
16/736,217
Granted
Aug 31, 2021
Kind
B2
Abstract

The described technology is generally directed towards detecting and propagating changes that affect information maintained in a cache. Data may be pre-cached in advance of its actual need, however such data can change, including in various different source locations. A change monitoring/signaling service detects relevant changes and publishes change events to downstream listeners, including to a cache population service that updates pre-cache data as needed in view of such data changes. Per-user-specific data also may be pre-cached, such as when a user logs into a data service.

Claims (40)

1. A system comprising:

a processor; and

a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, the operations comprising:

obtaining a change event that comprises a change in a user login status related to a first graph of user interface navigation elements pre-populated in a cache for anticipated future access;

determining, based on the change event, that the first graph is invalid;

obtaining a second graph of user interface navigation elements containing information corresponding to the change;

invalidating the first graph; and

pre-populating the cache with the second graph for the anticipated future access.

2. The system of claim 1 , wherein the obtaining the change event further comprises receiving a propagated event.

3. The system of claim 2 , wherein the operations further comprise monitoring for a change to a data source, detecting the change to the data source, and propagating the change to the data source as the propagated event.

4. The system of claim 1 , wherein the determining, based on the change event, that the first graph is invalid comprises determining that a data item representing content to be offered at a future time has changed.

5. The system of claim 1 , wherein the operations further comprise garbage collecting the first graph from the cache.

6. The system of claim 1 , wherein the operations further comprise accessing the second graph in the cache for when a future time is reached.

7. The system of claim 1 , wherein the operations further comprise caching user-specific information in the cache.

8. The system of claim 7 , wherein the operations further comprise invalidating the user-specific information in the cache based on a user logout event associated with the change in the user login status.

9. The system of claim 1 , wherein the change event is a first change event and the change is a first change, and wherein the operations further comprise:

obtaining a second change event that identifies a second change related to the second graph;

determining, based on the second change event, that the second graph is invalid;

obtaining a third graph of user interface navigation elements containing data corresponding to the second change;

invalidating the second graph; and

pre-populating the cache with the third graph for anticipated future access.

10. The system of claim 1 , wherein the cache is coupled to a front-end data service.

11. A method comprising:

monitoring, by a system comprising a processor, a data source for a change event comprising a change in a user login status related to a first graph data structure of user interface navigation elements in a cache for anticipated future access;

determining, by the system based on the change event, that the first graph data structure is invalid;

obtaining, by the system, a second graph data structure of user interface navigation elements containing information corresponding to the change;

invalidating, by the system, the first graph data structure; and

pre-populating, by the system, the cache with the second graph data structure for the anticipated future access.

12. The method of claim 11 , wherein the first graph data structure comprises first user specific information.

13. The method of claim 12 , wherein the second graph data structure comprises second user specific information.

14. The method of claim 11 , further comprising garbage collecting, by the system, the first graph data structure from the cache after invalidating the first graph data structure.

15. The method of claim 11 , further comprising detecting the change in the user login status, and outputting, by the system, a user status change event that identifies a user identity associated with the change in the user login status.

16. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor of a system, facilitate performance of operations, comprising:

receiving a change event that comprises a change in a user login status related to a first graph data structure of user interface navigation elements that is in a cache for anticipated future access;

in response to the receiving the change event, invalidating the first graph data structure in the cache; and

pre-caching a second graph data structure of user interface navigation elements in the cache for the anticipated future access.

17. The non-transitory machine-readable medium of claim 16 , wherein the first graph data structure comprises first user specific information associated with a first user identity, and the second graph data structure comprises second user specific information associated with a second user identity.

18. The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise garbage collecting the first graph data structure from the cache.

19. The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise accessing the second graph data structure in the cache for information corresponding to a data item after a future time is reached.

20. The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise replacing the second graph data structure in the cache with a third graph data structure.

Assignments (2)
SECURITY INTEREST Recorded Oct 1, 2025
From: WARNER BROS. DISCOVERY, INC.; WARNER MEDIA, LLC; TURNER BROADCASTING SYSTEM, INC.; HOME BOX OFFICE, INC.; DISCOVERY COMMUNICATIONS, LLC; WARNERMEDIA DIRECT LLC; DISCOVERY.COM LLC; WARNER BROS. ENTERTAINMENT INC.; CNN INTERACTIVE GROUP, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 072995/0858 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2020
From: BRYC, MICHAL M.
To: HOME BOX OFFICE, INC.
Reel/Frame 051438/0046 →