Shared Memory Burst Buffer System for Data Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional burst buffer systems lack data consistency and redundancy, leading to irrecoverable data loss in case of failures, which is a concern for the data storage industry aiming to minimize complexity and cost while ensuring efficient data management.

Innovation Solution

Implementing a data storage system with multiple burst buffer nodes that provide shared memory, enabling data redundancy and consistency through I/O Forwarder Servers, data management modules, and fast non-volatile storage, allowing communication between nodes for data synchronization and recovery.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional burst buffer systems are used, then implementation complexity is reduced, but data consistency and reliability deteriorate leading to irrecoverable data loss

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system divides the burst buffer functionality into multiple independent nodes, each maintaining its own storage and processing capabilities. This segmentation allows data to be distributed across nodes with redundancy, ensuring that if one node fails, data can be recovered from other nodes. The segmentation principle directly addresses the reliability issue by creating fault-tolerant distributed storage while keeping individual node complexity manageable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple burst buffer nodes are merged into a unified system that presents a single shared memory namespace to applications. The I/O Forwarder Server combines data from multiple nodes and manages consistency across them. This merging approach maintains reliability through redundancy while abstracting the complexity away from applications, as they see a unified interface rather than multiple distributed nodes.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If data redundancy is implemented across multiple nodes, then data recovery capability is improved, but system complexity increases

Engineering Contradiction:
Improvedata recovery capabilityVSAvoidnode communication complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The I/O Forwarder Server acts as an intermediary between applications and the distributed burst buffer nodes. It receives I/O requests from applications, determines which nodes store the required data, and aggregates data from multiple nodes before returning it to the application. This intermediary approach enables data redundancy and recovery across nodes while hiding the communication complexity from applications, as they interact only with the forwarder server.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The I/O Forwarder Server performs multiple functions: it manages I/O requests, coordinates data retrieval from multiple nodes, ensures data consistency, and handles failure recovery. By consolidating these diverse functions into a single universal component, the system achieves robust data recovery capability without requiring applications to implement complex node-to-node communication logic.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Productivity

If shared memory is provided by multiple burst buffer nodes, then data accessibility is improved, but coordination overhead increases

Engineering Contradiction:
Improvedata accessibilityVSAvoidsynchronization overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system creates a virtual copy of the shared memory namespace at each burst buffer node, allowing multiple nodes to serve identical data simultaneously. When data is written to shared memory, the I/O Forwarder Server replicates it to relevant nodes. This copying approach improves data accessibility by allowing any node to serve requests without complex real-time coordination, while maintaining consistency through controlled replication rather than continuous synchronization.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9710190B1Shared memory
Publication Date: 2017.07.18 EMC IP HLDG CO LLC
  • US9710190B1 patent drawing
  • US9710190B1 patent drawing
  • US9710190B1 patent drawing

AI summary

A computer-executable method, computer program product, and system for managing I/Os from an Application on a host, wherein the host is in communication with a data storage system including one or more burst buffer servers, the computer-executable method, computer program product, and system comprising providing a portion of shared memory using the one or more burst buffer servers of the data storage system, wherein the portion of shared memory is enabled to be visible from each of the one or more burst buffer servers, receiving, at a first burst buffer server of the one or more burst buffer servers, a data I/O request from the application on the host, wherein the data I/O request is associated with data on the portion of shared memory, determining whether data associated with the data I/O request is located on the first buffer server, and processing the data I/O request based on the determination.