Stream Listening Cache Refresh for Fresh Data Under Peak Load
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Service providers face challenges in balancing consumer data storage to minimize stale data while managing storage system capacity, leading to increased processing burden during demand spikes and consumer dissatisfaction.
Innovation Solution
Implementing a system that refreshes application caches using data streams and machine-learning models to predict user interactions, allowing timely data delivery and reducing storage system overengineering.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If longer TTL values are used, then data freshness is improved, but storage system burden increases
Solution Approach 1:
The system performs preliminary actions by precomputing and storing aggregated data in the cache before consumer requests arrive. The stream listening service proactively updates cache entries with aggregated data from data streams, so when consumers request data, it is already available in the cache without requiring immediate queries to the storage system. This allows longer TTL values while maintaining data freshness.
Solution Approach 2:
The patent introduces a stream listening service as an intermediary component between the data stream source and the cache. This intermediary service subscribes to data streams, aggregates data, and updates the cache asynchronously. It mediates between the need for fresh data and the need to reduce storage system burden by handling data aggregation and cache updates independently from consumer requests.
2Reliability
If shorter TTL values are used, then stale data is reduced, but storage system capacity requirements increase
Solution Approach 1:
The system performs preliminary aggregation of data from streams and stores it in the cache before consumer requests arrive. By precomputing aggregated data and maintaining it in the cache with appropriate TTL values, the system can serve consumers quickly without requiring excessive storage capacity. The stream listening service proactively manages cache updates, allowing shorter TTLs while maintaining performance.
Solution Approach 2:
The stream listening service continuously subscribes to data streams and continuously updates the cache with aggregated data. This continuous operation ensures that the cache remains updated with fresh data without requiring the storage system to handle every individual consumer request. The continuous aggregation and caching process maintains data freshness with efficient storage utilization.
3Loss of time
If data is cached in separate cache, then response time is improved, but device complexity increases
Solution Approach 1:
The patent merges the stream listening functionality with the cache updating mechanism into a unified stream listening service. Instead of having separate components for stream processing and caching, the service combines data aggregation, TTL management, and cache updates into a single coordinated system. This integration reduces overall system complexity while maintaining fast response times through efficient cache utilization.
Solution Approach 2:
The stream listening service performs multiple functions: it subscribes to data streams, aggregates data, determines TTL values, updates the cache, and manages cache expiration. By making this single service multi-functional, the patent reduces the number of separate components needed in the system architecture, thereby reducing overall complexity while achieving fast response times through centralized coordination.
Data Source
AI summary
A system, process, and computer-readable medium for updating an application cache using a stream listening service is described. A stream listening service may monitor one or more data streams for content relating to a user. The stream listening service may forward the content along with time-to-live values to an application cache. A user may use an application to obtain information regarding the user's account, where the application obtains information from a data store and/or cached information from the application cache. The stream listening service, by forwarding current account information, obtained from listening to one or more streams, to the application cache, reduces traffic at the data store by providing current information from the data stream to the application cache.


