Content-Addressable Data Chunk Caching for Virtual Desktop Infrastructure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtualization in datacenter and cloud computing environments faces inefficiencies in storage performance due to disk interference, network latency, and bandwidth constraints, particularly evident in Virtual Desktop Infrastructure (VDI) scenarios where boot and login times are significantly delayed due to poor storage performance.

Innovation Solution

Implementing content-addressable caching using deduplication techniques to identify and store common data chunks on fast-access media like RAM and SSDs, reducing network latency and bandwidth bottlenecks by caching data locally and sharing it across compute machines within the same rack, and using server-side caches to minimize disk IOPs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Volume of stationary object

If data is stored on remote storage across network, then storage capacity is increased, but network latency and bandwidth constraints worsen storage access performance

Engineering Contradiction:
Improvestorage capacityVSAvoidstorage access time
Core Design Contradiction:
Volume of stationary objectVSLoss of time

Solution Approach 1:

The patent segments storage data into fixed-size chunks (e.g., 4MB) that can be independently cached and managed. This segmentation allows the system to cache only frequently accessed chunks in local memory rather than entire files, reducing network latency while maintaining storage capacity benefits.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a content-addressable cache as an intermediary layer between the application and remote storage. This cache stores data chunks locally in memory, mediating between the application's data access requests and the remote storage system, thereby reducing network latency for frequently accessed data.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple VMs share the same storage resources, then storage efficiency is improved, but disk head seeks on the same spindle cause interference and reduce performance

Engineering Contradiction:
Improvestorage efficiencyVSAvoiddisk interference
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent replaces the mechanical disk-based storage system with a memory-based storage system. By using RAM or SSD memory instead of spinning disk drives, the system eliminates mechanical disk head seeks and the associated interference between concurrent access operations, while maintaining storage efficiency through virtualization.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Quantity of substance

If read-only VHDs with gold master images and deltas are used, then storage size efficiency is improved, but boot and login performance deteriorates due to poor virtualized storage performance

Engineering Contradiction:
Improvestorage size efficiencyVSAvoidboot and login speed
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent pre-loads frequently accessed data chunks into the content-addressable cache before they are actually needed by applications. This preliminary action ensures that when VMs need to boot or log in, the required data is already available in fast memory, eliminating the performance penalty associated with delta-based storage systems.

Inventive Principle:
Principle #10Preliminary action

4Loss of energy

If data is cached locally on compute machines, then network bandwidth usage is reduced, but cache memory consumption increases

Engineering Contradiction:
Improvenetwork bandwidth usageVSAvoidcache memory consumption
Core Design Contradiction:
Loss of energyVSQuantity of substance

Solution Approach 1:

The patent implements content-addressable caching with fixed-size chunks (e.g., 4MB) that can be independently managed. This allows the system to cache only the specific portions of data that are frequently accessed, rather than caching entire files or unnecessarily large data blocks, thereby optimizing the balance between network bandwidth savings and memory consumption.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP2972893B1Caching content addressable data chunks for storage virtualization
Publication Date: 2020.10.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2972893B1 patent drawingFigure 1
  • EP2972893B1 patent drawingFigure 2
  • EP2972893B1 patent drawingFigure 3

AI summary

The subject disclosure is directed towards using primary data deduplication concepts for more efficient access of data via content addressable caches. Chunks of data, such as deduplicated data chunks, are maintained in a fast access client-side cache, such as containing chunks based upon access patterns. The chunked content is content addressable via a hash or other unique identifier of that content in the system. When a chunk is needed, the client-side cache (or caches) is checked for the chunk before going to a file server for the chunk. The file server may likewise maintain content addressable (chunk) caches. Also described are cache maintenance, management and organization, including pre-populating caches with chunks, as well as using RAM and/or solid-state storage device caches.