Solid State Cache for Active-Active DAS Data Shipping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional high availability DAS systems face issues with multi-initiator conflicts and performance degradation due to the need for data shipping between servers, especially in dual-active and active-passive configurations, which hinder true active-active access to data.
Innovation Solution
Implementing a solid state cache in each node of the DAS cluster to store 'hot I/O' data, allowing for smart active-active capability by caching frequently accessed data dynamically, regardless of ownership, and mirroring dirty write data across servers to prevent conflicts and reduce data shipping.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If dual-active configuration is used where each drive is owned by only one server, then multi-initiator conflicts are avoided, but data shipping volume between servers increases
Solution Approach 1:
The patent segments data into hot data (frequently accessed) and cold data (infrequently accessed). Hot data is cached locally in each server's SSD cache, while cold data remains on the underlying storage. This segmentation allows each server to access hot data locally without shipping data between servers, resolving the contradiction between conflict avoidance and data shipping efficiency.
Solution Approach 2:
The patent introduces an SSD cache as an intermediary layer between the servers and the underlying storage. This cache acts as a buffer that holds frequently accessed data, allowing servers to retrieve data from the cache rather than shipping it from another server. The intermediary cache thus reduces data shipping volume while maintaining the dual-active ownership model.
2Loss of energy
If active-passive configuration is used where only one server is active at a time, then data shipping is minimized, but system availability and performance are degraded
Solution Approach 1:
The patent performs preliminary actions by caching frequently accessed data in SSDs before it is needed. Each server pre-loads hot data into its local cache based on access patterns, so when data is needed, it is already available locally rather than requiring data shipping or server failover. This preliminary caching enables both servers to remain active simultaneously.
Solution Approach 2:
The patent creates copies of hot data in each server's SSD cache. Instead of having one active server and one passive server, both servers maintain local copies of frequently accessed data. This copying approach allows either server to independently serve data requests, improving system availability while minimizing data shipping since each server has its own cache copy.
3Speed
If data is cached in solid state cache memory, then read performance is improved, but cache management complexity increases
Solution Approach 1:
The patent implements self-service cache management where the system automatically monitors data access patterns and dynamically identifies hot data. The cache management software automatically decides which data to cache in SSDs based on access frequency, eliminating the need for manual cache configuration. This self-service approach simplifies complexity while maintaining high read performance through automatic hot data identification and caching.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A high availability DAS system using uses a solid state cache to provide near active-active performance in a DAS cluster, while retaining the implementation simplicity of active-passive or dual active system. Each node in the cluster may inlude a solid state cache that stores hot I/O in an active-active mode, which allows the data to be read from or written to the underlying dual-active or active/passive DAS RAID system only when access to the "hot Region" cools down or in the case of Cache Miss. The hot I/O data includes hot read data that accumulated dynamically regardless of ownership of the drives where the hot read data is permanently stored. The hot I/O data also includes hot write data that is mirrored across the solid state cache memories to avoid potential dirty write data conflicts and also to provide High Availability in case of server failures.