IP Library Granted Patent US 11,360,826
Granted Patent B2
US 11,360,826 · App. 16/889,129 · Granted Jun 14, 2022

Virtual graph nodes

Inventors: Sata Busayarat (Seattle, WA); Jack Song (Shoreline, WA); Brandon C. Furtwangler (Issaquah, WA); Jonathan David Lutz (Seattle, WA); Allen Arthur Gay (Shoreline, WA); Steven N. Furtwangler (Okemos, MI)
Assignee: HOME BOX OFFICE, INC.
G06F9/5077G06F9/5005G06F16/2457G06F16/285G06F16/51G06F16/80
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,360,826
App. No.
16/889,129
Granted
Jun 14, 2022
Kind
B2
Abstract

The described technology is directed towards returning less data than is available for a data item in response to a request to a data service. A virtual graph node is returned in response to client requests, in which the virtual node comprises a relatively lightweight set of information relative to the full set of information for the data item, e.g., maintained in a main (graph) node. A requesting client indicates that a virtual node is desired, and receives a response comprising the virtual node, generally processed from the main node's data into a reduced subset of the main node. The main node may be cached at the data service, and returned if and when requested.

Claims (35)

1. A system, comprising:

a processor; and

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

receiving a request for a node of a graph, the node identified by a node identifier and an indication that the node is requested to be returned as a virtual node, the request associated with client-specific information;

locating a main node, based on the node identifier, in a cache;

obtaining a rule set based on the client-specific information;

processing the main node into the virtual node based on the rule set, wherein the main node corresponds to a data item and the virtual node corresponds to a portion of the data item comprising data included in a visual representation of the data item, and wherein the virtual node comprises a reference linking the virtual node to the main node; and

returning the virtual node in response to the request.

2. The system of claim 1 , wherein the processing the main node into the virtual node comprises removing some of the data from the main node based on the rule set.

3. The system of claim 1 , wherein the operations further comprise, caching the virtual node.

4. The system of claim 1 , wherein the locating the main node further comprises locating the main node in the cache based at least in part on the client-specific information.

5. The system of claim 1 , wherein the main node comprises data that is formatted or shaped, or both formatted and shaped, based on the client-specific information.

6. The system of claim 1 , wherein the rule set is maintained as a file system rule set file, and wherein the locating the rule set corresponding to the client-specific information comprises using information based on the node identifier to determine a filename of the file system rule set file, and using information based on the client-specific information to determine a file system folder in which the rule set file is located.

7. The system of claim 6 , wherein the filename of the file system rule set file is in two or more folders, and wherein the using the information based on the client-specific information to determine the file system folder in which the rule set file is located comprises determining the file system folder based on a folder hierarchy.

8. The system of claim 1 , wherein the client-specific information comprises at least one of: client device class data, client device type data, or client software version data.

9. The system of claim 1 , wherein the node identifier comprises a Uniform Resource Name (URN).

10. The system of claim 1 , wherein the cache comprises a shared cache shared by front-end servers of a data service.

11. A method, comprising:

receiving, by a system comprising a processor, a request for a virtual node, in which the request is associated with client-specific information;

obtaining a main node of a graph, corresponding to the virtual node, from a cache based on identifier information associated with the virtual node and the client-specific information;

processing the main node into a virtual node wherein the main node corresponds to a data item and the virtual node corresponds to a portion of the data item comprising data included in a visual representation of the data item, and wherein the virtual node comprises a reference linking the virtual node to the main node; and

returning the virtual node in response to the request.

12. The method of claim 11 , further comprising caching the virtual node.

13. The method of claim 11 , wherein the processing the main node into the virtual node comprises applying a rule set to data of the main node, in which the rule set modifies the data of the main node.

14. The method of claim 13 , further comprising, locating the rule set based on the client-specific information.

15. The method of claim 13 , further comprising, locating the rule set based on the identifier information.

16. The method of claim 11 , wherein the virtual node is a first virtual node returned in response to the request, and further comprising, processing the main node into a second virtual node.

17. The method of claim 11 , wherein the main node is a first main node processed into a first part of the virtual node, and further comprising, processing a second main node into a second part of the virtual node.

18. Non-transitory machine-readable medium comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising:

receiving a request for a node of a graph, the request comprising a node identifier and the request associated with client-specific information;

locating the node in a pre-populated cache based at least in part on the node identifier;

processing the node into a virtual node, including locating a rule set based at least in part on the client-specific information and applying the rule set to remove at least some data from the node, wherein the main node corresponds to a data item and the virtual node corresponds to a portion of the data item comprising data included in a visual representation of the data item, and wherein the virtual node comprises a reference linking the virtual node to the main node; and

returning the virtual node in response to the request.

19. The non-transitory machine-readable medium of claim 18 , wherein the operations further comprise determining that the node has a corresponding virtual node based on detecting an indicator associated with the node identifier.

20. The non-transitory machine-readable medium of claim 18 , wherein the operations further comprise, caching the virtual node.

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 Jun 1, 2020
From: BUSAYARAT, SATA; SONG, JACK; FURTWANGLER, BRANDON C.; LUTZ, JONATHAN DAVID; GAY, ALLEN ARTHUR; FURTWANGLER, STEVEN N.
To: HOME BOX OFFICE, INC.
Reel/Frame 052801/0570 →