Garbage collection of preloaded time-based graph data

US11720488B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11720488-B2
Application numberUS-202217648555-A
CountryUS
Kind codeB2
Filing dateJan 21, 2022
Priority dateDec 21, 2018
Publication dateAug 8, 2023
Grant dateAug 8, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The described technology is generally directed towards garbage collecting content selection graphs and related data from in an in-memory content selection graph data store. When a set of content selection graphs expire, a more current content selection graph set becomes active, and the storage space (e.g., in a Redis cache) used by the expired content selection graphs is reclaimed via garbage collection. Some graphs can be replaced before use, referred to as orphaned graphs, and the storage space for any such orphaned graphs is also reclaimed during garbage collection. Also garbage collected is storage space including related data structures used to generate and validate graphs.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: determining, by a system comprising a processor, that a content selection graph preloaded into a memory is no longer in use; determining that an orphaned graph in the memory is not mapped to a timepoint and is not an outstanding graph that is not yet built or is not yet validated; and garbage collecting, by the system, the content selection graph and the orphaned graph from the memory. 2. The method of claim 1 , wherein the garbage collecting the content selection graph further comprises garbage collecting an unused entity key from the memory. 3. The method of claim 2 , further comprising determining, by the system, that the unused entity key is unused based on evaluating a set of referenced entity keys against a full set of entity keys scanned from the memory. 4. The method of claim 2 , wherein the garbage collecting further comprises garbage collecting an unused entity blob corresponding to the unused entity key from the memory. 5. The method of claim 1 , wherein the garbage collecting the content selection graph further comprises garbage collecting a build data structure that is no longer in use from the memory. 6. The method of claim 1 , wherein the garbage collecting the content selection graph further comprises garbage collecting a validation data structure that is no longer in use from the memory. 7. The method of claim 1 , wherein the garbage collecting the content selection graph further comprises garbage collecting a graph identifier-to-timepoint mapping that is no longer in use from the memory. 8. The method of claim 1 , wherein the garbage collecting the content selection graph from the memory comprises scanning keys in the memory. 9. The method of claim 1 , wherein the garbage collecting the content selection graph from the memory comprises setting a write mutex on the memory during the garbage collecting, and unlocking the write mutex after the garbage collecting. 10. 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: in response to determining that a content selection graph preloaded into the memory is no longer in use, garbage collecting the content selection graph from the memory, wherein the garbage collecting the content selection graph comprises setting a write mutex on the memory during the garbage collecting, and unlocking the write mutex after the garbage collecting. 11. The system of claim 10 , wherein the garbage collecting further comprises garbage collecting an unused entity key from the memory. 12. The system of claim 11 , wherein the operations further comprise determining that the unused entity key is unused based on evaluating a set of referenced entity keys against a full set of entity keys scanned from the memory. 13. The system of claim 10 , wherein the garbage collecting the content selection graph further comprises garbage collecting a build data structure that is no longer in use from the memory. 14. The system of claim 10 , wherein the garbage collecting the content selection graph further comprises garbage collecting a validation data structure that is no longer in use from the memory. 15. The system of claim 10 , wherein the garbage collecting the content selection graph further comprises garbage collecting a graph identifier-to-timepoint mapping that is no longer in use from the memory. 16. The system of claim 10 , wherein the garbage collecting the content selection graph from the memory comprises scanning keys in the memory. 17. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, the operations comprising: in response to determining that a content selection graph preloaded into a memory is no longer in use, garbage collecting the content selection graph from the memory, wherein the garbage collecting the content selection graph comprises: determining that an unused entity key in the memory is unused based on evaluating a set of referenced entity keys against a full set of entity keys scanned from the memory, and garbage collecting the unused entity key from the memory. 18. The non-transitory machine-readable medium of claim 17 , wherein the garbage collecting the content selection graph from the memory comprises setting a write mutex on the memory during the garbage collecting, and unlocking the write mutex after the garbage collecting. 19. The non-transitory machine-readable medium of claim 17 , wherein the garbage collecting the content selection graph further comprises garbage collecting a build data structure that is no longer in use from the memory. 20. The non-transitory machine-readable medium of claim 17 , wherein the garbage collecting the content selection graph further comprises garbage collecting a validation data structure that is no longer in use from the memory.

Assignees

Inventors

Classifications

  • Garbage collection, i.e. reclamation of unreferenced memory · CPC title

  • with prefetch · CPC title

  • Graphs; Linked lists (G06F16/9027 takes precedence) · CPC title

  • Space efficiency improvement · CPC title

  • Details relating to cache prefetching · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11720488B2 cover?
The described technology is generally directed towards garbage collecting content selection graphs and related data from in an in-memory content selection graph data store. When a set of content selection graphs expire, a more current content selection graph set becomes active, and the storage space (e.g., in a Redis cache) used by the expired content selection graphs is reclaimed via garbage c…
Who is the assignee on this patent?
Home Box Office Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0253. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 08 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).