In-Memory Graph Garbage Collection for Content Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data retrieval techniques struggle to handle spikes in content selection requests efficiently, particularly for popular content, leading to overwhelming demands on systems.
Innovation Solution
Preloading and preformatting entire graphs of content selection data in an in-memory data store, such as a Redis cache, to anticipate client requests and provide pre-built, client-specific responses, with graphs being generated and validated in advance based on timepoints to ensure rapid and efficient data retrieval.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional data retrieval techniques are used, then system simplicity is maintained, but the system cannot handle spikes in content selection requests efficiently
Solution Approach 1:
The patent pre-generates and pre-loads content selection graphs into an in-memory data store before requests arrive. This preliminary action allows the system to handle request spikes efficiently by serving pre-computed data without real-time processing delays
Solution Approach 2:
The patent creates copies of content selection graphs and stores them in an in-memory data store (Redis cache). These pre-computed copies are served directly to clients without regenerating the full graphs on each request, significantly improving request handling capacity
2Speed
If entire graphs of content selection data are preloaded and preformatted, then data retrieval speed is improved, but memory usage increases
Solution Approach 1:
The patent extracts only the necessary content selection graph data into an in-memory data store, separating it from the full dataset. This selective extraction allows fast retrieval of frequently accessed content information while managing memory consumption by storing only essential pre-computed graphs
Solution Approach 2:
The patent implements client-specific graph generation by tailoring content selection graphs to individual client characteristics (device type, software version, user preferences). This local customization allows the system to pre-compute and store only the specific graph variants needed for different client segments, optimizing the balance between retrieval speed and memory usage
3Loss of time
If graphs are generated and validated in advance, then real-time formatting requirements are reduced, but graph generation and validation time increases
Solution Approach 1:
The patent performs graph generation and validation in advance during off-peak periods, preparing content selection graphs before they are needed. This preliminary processing eliminates real-time formatting requirements during request handling, as pre-validated graphs are served directly from the in-memory data store
Solution Approach 2:
The patent implements periodic graph generation and validation, updating content selection graphs at scheduled intervals rather than continuously. This periodic approach allows the system to balance the duration of graph generation operations with the need for current data, reducing real-time processing requirements while maintaining data freshness
Data Source
AI summary
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.


