Parallel NDMP Tape Restore Using Reader-Parser-Writers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional Network Data Management Protocol (NDMP) restore technologies restore data from tape drives in a serial manner, leading to inefficient data recovery and performance issues during file system restoration.

Innovation Solution

A parallel restore system utilizing a reader, parser component, and multiple writers to read data from a tape drive, sort it in memory buffers, and independently recover multiple files to the file system, leveraging system memory and parallel processing to improve restore performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is restored from tape drive in a serial manner (one file at a time), then the restore process is simple to implement, but the recovery time is excessive and system performance is degraded

Engineering Contradiction:
Improvedata recovery speedVSAvoidrestore system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the restore operation into independent parallel tasks by separating file header parsing from data restoration. Multiple files are identified and restored simultaneously through separate processing threads, transforming a single serial operation into multiple parallel operations that can execute concurrently, thereby dramatically improving data recovery speed

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of parallel processing by utilizing multiple CPU cores and threads. The restore system operates in parallel across multiple processing dimensions rather than sequentially in a single thread, allowing simultaneous restoration of multiple files from the tape drive through coordinated parallel tasks

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Loss of time

If multiple files are restored simultaneously using parallel processing, then recovery time is reduced and productivity is improved, but system memory requirements and processing complexity increase

Engineering Contradiction:
Improverecovery timeVSAvoidsystem memory usage
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent performs preliminary file header parsing and file identification before the actual data restoration begins. By pre-processing the tape data to identify file boundaries and metadata, the system prepares work items in advance that can be efficiently distributed to parallel restoration threads, reducing the memory burden during active restoration

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary buffer and work item queue system that mediates between the serial tape drive reading and parallel file restoration. This intermediary layer manages data flow and memory allocation, allowing parallel processing while controlling peak memory usage through buffered operations rather than loading all files into memory simultaneously

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10372553B1Parallel file restoration from a serialized storage device using a network data management protocol
Publication Date: 2019.08.06 EMC IP HLDG CO LLC
  • US10372553B1 patent drawing
  • US10372553B1 patent drawing
  • US10372553B1 patent drawing

AI summary

Performing parallel file restoration from a serialized storage device using a network data management protocol is presented herein. A system can comprise a reader, a parser component, and a set of writers. The reader can be configured to copy data from a tape drive to memory buffers as buffered data. The parser component can be configured to determine, within the buffered data, a location of a file header record representing a file that has been stored in the tape drive, and generate, based on the file header record, a header work item for facilitating restoration of the file in a file system. Further, the set of writers can be configured to create, based on the header work item using the buffered data, the file in the file system.