Data Storage Snapshot Deletion Management via Block Driver

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional data storage systems fail to accurately reflect the current state of a hard disk due to data not being treated as deleted at the storage unit level, leading to inefficient data backup and cache management, resulting in unnecessary data storage and transfer.

Innovation Solution

The system excludes data deleted at the file system level when creating memory snapshots and managing data caches, ensuring that only relevant data is copied and stored, thereby reducing the amount of data to be copied and stored.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional file systems delete data by abandoning it in the space that contains the data, then the file system level deletion is achieved, but the storage unit level still recognizes the deleted data as residing in the space, leading to inaccurate reflection of current hard disk state

Engineering Contradiction:
Improveaccuracy of hard disk state reflectionVSAvoidcomplexity of deletion management
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent introduces a block device driver as an intermediary layer between the file system and storage units. This driver receives deletion requests from the file system, translates them into storage unit level operations, and manages the actual deletion process. The intermediary coordinates between file system deletion markers and physical storage unit state, ensuring both layers maintain consistent views of data presence.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements feedback mechanisms where the block device driver continuously monitors storage unit states and reports back to the file system. When deletion occurs at either level, the other layer is notified through feedback signals, allowing both layers to update their internal state representations and maintain accuracy without requiring complex direct coordination.

Inventive Principle:
Principle #23Feedback

2Productivity

If snapshots are created including all data on the hard disk, then complete backup is achieved, but deleted data is unnecessarily copied, increasing snapshot size and creation time

Engineering Contradiction:
Improvesnapshot creation speedVSAvoidsnapshot data volume
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts deleted data from the snapshot creation process by having the block device driver identify and exclude blocks marked as deleted at either file system or storage unit level. Instead of copying all data blocks, the system selectively extracts only living data blocks, removing the harmful element of deleted data from the snapshot operation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Before snapshot creation, the block device driver performs preliminary actions by scanning storage units and identifying deleted blocks based on deletion markers from the file system or deletion confirmation from storage units. This preliminary identification allows the snapshot process to skip deleted blocks entirely, reducing snapshot size and creation time.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If data caches store all data including deleted data, then cache capacity is fully utilized, but unnecessary data occupies cache space, reducing cache efficiency

Engineering Contradiction:
Improvecache management efficiencyVSAvoidcache data volume
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The block device driver acts as an intermediary between storage units and data caches, filtering out deleted data before it enters the cache. By interceptating data transfer requests and checking deletion status, the driver prevents deleted blocks from being copied to cache, ensuring cache space is occupied only by valid data.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The data cache management system uses self-service by autonomously identifying and removing deleted data blocks from cache based on deletion notifications from the block device driver. The cache does not require complex external management to identify deleted data, as the deletion information is automatically propagated through the intermediary layer.

Inventive Principle:
Principle #25Self-service

4Reliability

If backup solutions copy all data from storage devices, then complete backup is achieved, but deleted data is unnecessarily included, increasing backup size and storage costs

Engineering Contradiction:
Improvebackup completenessVSAvoidbackup data volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The backup solution extracts deleted data from the backup process by utilizing deletion information from the block device driver. The driver provides a filtered view of storage unit contents, excluding blocks marked as deleted, allowing the backup system to copy only living data while maintaining backup reliability for all currently valid data.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The backup system implements feedback by receiving deletion status information from the block device driver and adjusting its copying behavior accordingly. When the driver reports that certain blocks are deleted, the backup process receives feedback to skip those blocks, reducing backup size while ensuring all living data is backed up.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10762044B2Managing deletion of data in a data storage system
Publication Date: 2020.09.01 AMAZON TECH INC
  • US10762044B2 patent drawing
  • US10762044B2 patent drawing
  • US10762044B2 patent drawing

AI summary

In certain embodiments, a system comprises a memory and a processor communicatively coupled to the memory. The memory includes executable instructions that upon execution cause the system to generate, at a first time, a first snapshot capturing data stored in storage units of a storage device. The executable instructions upon execution cause the system to receive an indication to delete at least a portion of the data in the storage units and captured by the first snapshot, and to mark, in response to receiving the indication, the one or more storage units that store the at least a first portion of the data as available. The executable instructions upon execution cause the system to generate, at a second time subsequent to the first time, a second snapshot that omits the one or more storage units marked as available.