Fractional Caching for Dynamic Document Generation

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedocument retrieval speedVSAvoidamount of data that can be cached
Core Design Contradiction:
SpeedVSQuantity of substance

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #2Taking out (Extraction)

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

Engineering Contradiction:
Improvedocument flexibilityVSAvoiddifficulty of determining repetitive operations
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If entire documents are cached, then retrieval time is reduced, but cache memory usage becomes inefficient when documents vary between iterations

Engineering Contradiction:
Improveretrieval timeVSAvoidcache memory efficiency
Core Design Contradiction:
Loss of timeVSQuantity of substance

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS7464226B2Fractional caching
Publication Date: 2008.12.09 PHOTHENA OPTICS CORP
  • US7464226B2 patent drawing
  • US7464226B2 patent drawing
  • US7464226B2 patent drawing

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.