Dual-Node Flash Array Data Access Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The management of accessing Flash memory in all-flash array (AFA) servers is complicated due to differences between SSDs and HDDs, leading to degraded performance, as existing control methods may become improper or invalid.

Innovation Solution

A dual-node architecture where one node acts as a master and the other as a slave, with data being stored in DRAM and then notified to be written to SSD only after successful storage in both nodes, ensuring proper data management and synchronization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If existing control methods are used for SSD management in AFA servers, then data storage functionality is provided, but system performance is degraded and access control becomes complicated

Engineering Contradiction:
Improvesystem performanceVSAvoidaccess control complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system is divided into master node and slave node segments, each with dedicated DRAM caches. The master node handles data reception and initiation, while the slave node provides verification and notification, segmenting the complex SSD access control into manageable functional units that operate semi-independently

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

DRAM caches are introduced as intermediary buffers between the network interface and SSDs. Data flows through DRAM before being written to SSD, and the dual-node DRAM architecture acts as an intermediary verification layer that simplifies access control by decoupling the network interface from direct SSD management

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If data is written directly to SSD upon receipt, then storage speed is fast, but data integrity and protection are compromised

Engineering Contradiction:
Improvedata writing speedVSAvoiddata integrity
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by storing data in DRAM caches of both master and slave nodes before committing to SSD writing. The slave node must successfully store data in its DRAM and send a notification back to the master node before the master proceeds with SSD writing, ensuring preliminary verification of data integrity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Dual DRAM caches in master and slave nodes serve as cushioning buffers that protect against data loss. If the master node fails before SSD writing, the slave node's DRAM contains a verified copy. This beforehand cushioning mechanism ensures data protection without significantly impacting writing speed

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS11409471B2Method and apparatus for performing data access management of all flash array server
Publication Date: 2022.08.09 SILICON MOTION INC
  • US11409471B2 patent drawing
  • US11409471B2 patent drawing
  • US11409471B2 patent drawing

AI summary

The present invention provides a server including a SSD, a first node and a second node, wherein the first node comprises a first processor and a first memory, and the second node comprises a second processor and a second memory. When the first processor receives data from another device via network, the first processor stores the data in the first memory, and the first processor further sends the data to the second node; when the second processor receives the data from the first node, the second processor stores the data in the second memory, and the second processor further sends a notification to the first node to inform that the data is successfully stored in the second memory; and after and only after the first processor receives the notification from the second node, the first processor starts to write the data into the SSD.