Precomputed Rule Results for Content Presentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The application of rules to determine whether content items should be presented can be computationally expensive, leading to delays in job execution and adverse effects on subsequent operations, such as reducing sales transactions or degrading user experience, due to the need for real-time or synchronous processing.
Innovation Solution
Employing stored, precomputed results of rule applications to expedite the presentation of content items by retrieving existing results and queuing jobs to compute current results asynchronously, thereby mitigating the performance impact of real-time re-computation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If rules are applied in real-time to determine whether content items should be presented, then the accuracy and relevance of content presentation is improved, but the computational cost increases and causes delays in job execution
Solution Approach 1:
The system pre-computes rule application results and stores them in a results database before they are needed. When a content item request arrives, the system retrieves pre-computed results instead of applying rules in real-time, thus eliminating computational delays while maintaining presentation accuracy.
Solution Approach 2:
The system creates and stores copies of rule application results in a dedicated results database. These copied results can be quickly retrieved and applied to content items without re-executing the computationally expensive rule application process, significantly reducing job execution time.
2Speed
If rules are applied synchronously with content item requests, then the responsiveness to user requests is improved, but the computational burden increases and adversely affects subsequent operations
Solution Approach 1:
Rule application results are computed and stored in advance, before actual content item requests are processed. This preliminary computation allows the system to respond to user requests quickly by retrieving pre-computed results, rather than performing computationally intensive rule applications synchronously with each request.
Solution Approach 2:
A results database acts as an intermediary between rule definitions and content item requests. Instead of directly applying rules to each content item request, the system queries the intermediary results database for pre-computed outcomes, significantly reducing computational energy consumption while maintaining fast response times.
3Productivity
If rule application results are cached for quick retrieval, then the job execution speed is improved, but the device complexity increases due to additional storage and management infrastructure
Solution Approach 1:
The results database serves multiple functions: it stores rule application results, provides quick retrieval for content item evaluation, and supports asynchronous job processing. This multi-functional approach improves job execution speed without requiring separate complex caching systems, as the database itself handles multiple roles in the content delivery pipeline.
Data Source
AI summary
Techniques are described for employing precomputed results of applying rules to content items, the rules applicable to determine whether content items may be electronically published. On receiving a request for a content item, rules applicable to the content item may be identified. A datastore of precomputed results of rule application may be accessed to determine whether the datastore includes a result of applying a current or previous version of each rule. If the datastore includes a current result, the current result may be employed in determine whether the content item may be presented. If the datastore includes a previous result, the previous result may be so employed. If the datastore includes a previous result or no appropriate result, a job may be queued to calculate the current result asynchronously relative to the request for the content item.


