Selective EC Fragment Caching for Coordinated Distributed Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed storage systems using Erasure Coding (EC) face inefficiencies in caching due to the lack of cluster-level context, leading to ineffective caching of EC fragments across storage nodes, as each node only receives a fragment of the data, making it difficult to coordinate caching without cluster-level information.

Innovation Solution

A framework and methodology for selective caching of EC fragments are introduced, utilizing caching hints to inform storage nodes about caching policies, enabling cluster-level coordination of caching across storage nodes, and optimizing the storage hierarchy based on these hints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If EC fragments are cached independently at each storage node without coordination, then each node can locally optimize its cache, but the overall caching efficiency deteriorates because not all necessary fragments are cached

Engineering Contradiction:
Improvelocal cache independenceVSAvoidcaching efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system implements feedback mechanisms where storage nodes report their cache status and fragment availability to a coordination service. This feedback loop enables the system to make informed decisions about which fragments to cache at which nodes, resolving the contradiction by maintaining local independence while achieving global optimization through information feedback

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

A coordination service or intermediary component is introduced to mediate between individual storage nodes. This intermediary collects information from nodes about their cache status and makes coordinated caching decisions, allowing nodes to maintain operational independence while achieving system-wide caching efficiency through the intermediary's coordination

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If all EC fragments are cached at every storage node, then data retrieval performance improves, but cache space utilization deteriorates due to redundant storage

Engineering Contradiction:
Improvedata retrieval performanceVSAvoidcache space utilization
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The system applies local quality by making caching decisions specific to each storage node's characteristics, workload patterns, and local cache capacity. Instead of uniform caching across all nodes, each node caches fragments based on its specific needs and capabilities, improving retrieval performance while optimizing cache space utilization through differentiated local strategies

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The caching strategy is segmented into different levels and types: hot fragments that are frequently accessed are cached at multiple nodes, while cold fragments are cached selectively. This segmentation allows the system to optimize cache space by not uniformly caching all fragments at all nodes, thereby improving space utilization while maintaining performance for frequently accessed data

Inventive Principle:
Principle #1Segmentation

3Productivity

If caching coordination is implemented at cluster-level, then caching efficiency improves, but system complexity increases due to additional coordination overhead

Engineering Contradiction:
Improvecaching efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A dedicated coordination service acts as an intermediary that centralizes the complex caching coordination logic. This separates the complexity from individual storage nodes, allowing nodes to remain simple while the intermediary handles the sophisticated coordination needed for efficient caching. The intermediary manages fragment tracking, cache status monitoring, and caching decisions

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses feedback mechanisms where nodes report their state to the coordination service, which then makes caching decisions based on aggregated information. This feedback-based approach simplifies node complexity by making them reactive rather than requiring complex decision-making logic, while the coordination service handles the complexity of optimizing caching efficiency across the cluster

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10503654B2Selective caching of erasure coded fragments in a distributed storage system
Publication Date: 2019.12.10 INTEL CORP
  • US10503654B2 patent drawing
  • US10503654B2 patent drawing
  • US10503654B2 patent drawing

AI summary

Methods and apparatus related to framework and/or methodology for selective caching of Erasure Coded fragments in a distributed storage system are described. In one embodiment, a plurality of fragments of a data object are generated. Each of the plurality of fragments is Erasure Coded (EC) prior to storage at a storage node of a plurality of storage nodes. Each of the plurality of fragments is transmitted with a caching hint to indicate whether that fragment is to be cached at the storage node. Other embodiments are also disclosed and claimed.