Fractional Caching for Dynamic Document Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional caching techniques struggle with dynamically generated documents, as they often require entire document regeneration due to varying input parameters, making caching difficult or impossible, especially when the same operation can be programmed in multiple ways, making it hard to determine repetitive operations.
Innovation Solution
A microprocessor-based system that generates electronic documents by organizing instructions as logical units (instruction nodes) and associates them with cache key values, allowing retrieval from cache memory if the cache key matches, rather than re-executing the nodes, thereby caching portions of documents instead of entire documents.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If conventional caching techniques are used to cache entire documents, then document retrieval speed is improved, but the amount of data that can be cached is limited because documents vary between iterations
Solution Approach 1:
The patent segments documents into reusable instruction nodes that can be independently cached. Instead of caching entire variable documents, the system identifies and caches common instruction nodes (e.g., navigation menus, product descriptions) that appear across multiple document iterations, thereby increasing the quantity of cacheable data while maintaining retrieval speed.
Solution Approach 2:
The patent extracts common, reusable instruction nodes from dynamically generated documents and stores them separately in a cache. This extraction allows the system to cache only the static, reusable portions of documents while leaving variable portions to be generated dynamically, thus increasing the amount of cacheable content without caching entire variable documents.
2Adaptability or versatility
If documents are dynamically generated using programming code, then document flexibility and adaptability are improved, but determining repetitive operations becomes difficult making caching impossible
Solution Approach 1:
The patent introduces an intermediary layer (the instruction node structure) between the programming code and the generated documents. This intermediary represents repetitive operations in a standardized, identifiable format that can be easily cached and reused, while still allowing flexible document generation through different combinations of instruction nodes.
Solution Approach 2:
The patent changes the parameter representation from raw programming code to structured instruction nodes with identifiable characteristics. This transformation allows the system to recognize and cache repetitive operations by comparing instruction node parameters rather than analyzing complex code structures, thereby reducing complexity while maintaining adaptability.
3Loss of time
If entire documents are cached, then retrieval time is reduced, but cache memory usage becomes inefficient when documents vary between iterations
Solution Approach 1:
The patent segments documents into reusable instruction nodes that can be independently cached. Instead of caching entire variable documents, the system identifies and caches common instruction nodes (e.g., navigation menus, product descriptions) that appear across multiple document iterations, thereby increasing the quantity of cacheable data while maintaining retrieval speed.
Solution Approach 2:
The patent applies partial caching by caching only the static, reusable portions of documents (instruction nodes) rather than entire documents. This partial action approach caches sufficient content to reduce retrieval time for common elements while avoiding the waste of caching variable portions that would require frequent updates.
Data Source
AI summary
A microprocessor-based system generates an electronic document based on a set of microprocessor-readable instructions organized in logical units known as instruction nodes. Each instruction node includes at least one microprocessor-readable instruction. If an instruction node is eligible for caching, it is associated with a cache key value, which is compared with a cache key value that is stored in a cache memory and that is associated with a data item. If the cache key value associated with the instruction node matches the cache key value stored in the cache memory, the microprocessor-based system retrieves the data item with the cache key value stored in the cache memory, rather than executing the instruction node. The microprocessor-based system generates at least a portion of the electronic document as a function of the retrieved data item.


