Separate Cache Servers for Dedicated Size Ranges

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Caching objects in slabs of fixed memory size leads to memory fragmentation inefficiencies and defragmentation overhead due to over-provisioning or misalignment with requested object sizes, resulting in wasted memory resources and costly object eviction.

Innovation Solution

Implementing separate cache servers dedicated to specific size ranges, with a mapping system that routes object requests to the appropriate server based on object size, eliminating the need for one-size-fits-all caching and minimizing defragmentation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If objects are cached in slabs of fixed memory size, then caching can be implemented with simple memory allocation, but memory fragmentation inefficiency and defragmentation overhead occur

Engineering Contradiction:
Improvecaching implementation simplicityVSAvoidmemory fragmentation inefficiency
Core Design Contradiction:
Ease of manufactureVSLoss of energy

Solution Approach 1:

The patent divides the caching system into multiple separate cache servers, each dedicated to storing objects within a specific size range. This segmentation allows each server to allocate memory more efficiently for its designated size range, reducing memory fragmentation compared to a single cache server using fixed-size slabs for all objects.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each cache server is configured with memory allocation optimized for its specific size range, rather than using a uniform allocation strategy across all objects. This local optimization ensures that memory is efficiently utilized for each size category without the waste associated with over-provisioning fixed-size slabs.

Inventive Principle:
Principle #3Local quality

2Device complexity

If fixed-size slabs are used for caching, then memory allocation is simplified, but defragmentation overhead increases

Engineering Contradiction:
Improvememory allocation complexityVSAvoiddefragmentation overhead
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

By segmenting the caching system into multiple servers handling different size ranges, the patent eliminates the need for frequent defragmentation operations that would be required in a single-cache system with fixed-size slabs. Each segmented server experiences less memory fragmentation and requires fewer defragmentation operations.

Inventive Principle:
Principle #1Segmentation

3Loss of energy

If separate cache servers are used for different size ranges, then memory efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvememory efficiencyVSAvoidsystem architecture complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent introduces a size-range mapping system that acts as an intermediary between object requests and the appropriate cache server. This mapping mechanism efficiently routes objects to the correct cache server based on size range, managing the complexity of multiple servers without significantly impacting overall system operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Device complexity

If one-size-fits-all caching is used, then system architecture is simpler, but object eviction costs increase

Engineering Contradiction:
Improvecaching architecture complexityVSAvoidobject eviction cost
Core Design Contradiction:
Device complexityVSLoss of energy

Solution Approach 1:

The patent segments the caching system into multiple servers, each optimized for specific size ranges. This segmentation reduces object eviction costs by ensuring that objects are stored in appropriately-sized memory allocations, minimizing waste and improving cache utilization efficiency compared to a one-size-fits-all approach.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10938878B2Separate cache servers for storing objects in different dedicated size ranges
Publication Date: 2021.03.02 RED HAT INC
  • US10938878B2 patent drawing
  • US10938878B2 patent drawing
  • US10938878B2 patent drawing

AI summary

Cache servers can be dedicated to storing objects within certain size ranges such that each cache server is designated to store objects having a size within a particular size range that is different than the size range of objects to which at least one other cache server is designated to store. A memory device includes mappings between identifiers for objects and sizes of the objects. The mappings can be used to select a cache server from which to fetch a particular object to respond to a request for the particular object.