Partitioned Mid-Tier Cache for Role-Based Data Delivery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current middle-tier cache systems face inefficiencies in handling large data objects, as they use a binary validity system that marks data as either 'valid' or 'invalid', leading to long latency for guest users who only need a small portion of the data, while administrative users require the entire object, and there is no effective handling of different user roles with varying permissions.

Innovation Solution

Implementing a middle-tier cache with multiple validity states that allows data objects to be loaded incrementally based on user roles, where each user role has access to specific portions of the data object, and the cache is partitioned dynamically to match request traffic, enabling immediate data delivery to users with the necessary permissions without waiting for the entire object to load.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the cache waits for the entire data object to load before marking it as valid, then data integrity is ensured, but latency increases for users who only need a portion of the data

Engineering Contradiction:
Improvedata integrityVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the data object into multiple portions based on user roles and permissions. Each portion can be independently validated and served, allowing the cache to mark portions as valid independently rather than waiting for the entire object to load. This resolves the contradiction by enabling partial data integrity validation while reducing latency for users who only need specific portions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements partial action by allowing the cache to serve portions of the data object before the entire object is loaded. The cache validates and serves available portions to users with appropriate permissions, rather than requiring complete object validation. This reduces latency while maintaining reliability for the portions that are actually served.

Inventive Principle:
Principle #16Partial or excessive action

2Reliability

If the cache loads the entire data object for administrative users, then complete data availability is ensured, but cache resources are wasted when only guest users need a portion of the data

Engineering Contradiction:
Improvedata availabilityVSAvoidcache resource usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the cache storage and data objects based on user roles and permissions. Different portions of data objects are stored and managed separately, allowing the cache to allocate resources efficiently by only loading and storing the portions needed for each user type, thereby reducing overall cache resource usage while maintaining data availability for authorized users.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by tailoring the cache content and validation state to specific user roles. Guest users receive only the portions of data they are permitted to access, while administrative users receive complete data. This optimizes cache resource usage by avoiding unnecessary storage and loading of data portions that different user groups do not need.

Inventive Principle:
Principle #3Local quality

3Device complexity

If the cache uses a binary validity system, then simplicity is maintained, but it cannot handle different user roles with varying permissions effectively

Engineering Contradiction:
Improvecache system complexityVSAvoiduser role handling
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the validity system into multiple validity states corresponding to different user roles and permission levels. Instead of a single binary state, the cache tracks which portions of data objects are valid for which user roles, enabling effective handling of varying permissions while maintaining manageable complexity through structured segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds another dimension to the validity system by introducing user role-based validity states. Rather than simply valid/invalid, the system tracks validity across multiple dimensions including user role, data portion, and permission level. This enables versatile user role handling while maintaining system organization and manageability.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11625325B2Partitioned mid-tier cache based on user type
Publication Date: 2023.04.11 ORACLE INT CORP
  • US11625325B2 patent drawing
  • US11625325B2 patent drawing
  • US11625325B2 patent drawing

AI summary

A server includes a data cache for storing data objects requested by users logged in under different user roles. Different user roles may have different permissions to access individual fields within a data object. When a cache miss occurs, the cache may begin loading portions of a requested data object from various data sources. Instead of waiting for the entire object to load to change the object state to “valid,” the cache may incrementally update the state through various levels of validity based on the user role of the request. When a portion of the data object used by a low-level user role is received, the object state can be upgraded to be valid for that user role while data for higher-level user roles continues to load. The portion of the data object can then be sent to the low-level user roles without waiting for the rest of the data object to load.