Atomic Data Object and Attribute Duplication in Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing practice of storing attributes of data objects in a separate persistent database complicates snapshot, clone, and replication processes, leading to inefficiencies and complexities in data storage systems, as associations between new versions of data objects and their attributes need to be manually managed to ensure seamless functionality.
Innovation Solution
Storing data objects and their attributes within the same logical address space of a storage system, allowing for atomic duplication of both when generating new versions, such as snapshots, clones, or replicas, thereby simplifying the management and ensuring that attributes are preserved alongside the data object versions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If data objects and their attributes are stored in separate locations using different protocols, then data storage functionality is provided, but software development complexity increases and runtime efficiency decreases
Solution Approach 1:
The patent merges the storage of data objects and their attributes into a single location within the same logical address space, allowing both to be accessed using the same protocols. This eliminates the need for separate database access protocols and reduces software development complexity while improving runtime efficiency by enabling atomic operations on both data and attributes simultaneously.
Solution Approach 2:
The storage system is designed to handle both data objects and their attributes through a universal access mechanism using the same protocols. This multi-functional approach allows the storage system to manage diverse data types and attribute types uniformly, reducing the need for protocol-specific code and improving operational efficiency.
2Reliability
If data objects are replicated separately from their attributes, then data versioning is achieved, but association maintenance becomes complex and operations require pausing and retrying
Solution Approach 1:
By storing data objects and their attributes together in the same logical address space, the patent enables atomic duplication operations that replicate both data and attributes simultaneously. This ensures that the association between data and attributes is maintained reliably without requiring separate replication operations, pausing, or retrying, thus improving operation efficiency while maintaining reliability.
3Reliability
If attributes are stored in a persistent database, then data object metadata is preserved, but snapshot, clone, and replication operations become complex
Solution Approach 1:
The patent combines the storage of data objects and their attributes in the same logical address space, allowing snapshot, clone, and replication operations to be performed atomically on both data and attributes. This eliminates the complexity of managing separate database operations while preserving data persistence and attribute integrity.
Solution Approach 2:
The system uses atomic copying operations to duplicate both data objects and their attributes simultaneously during snapshot, clone, and replication operations. This single copying mechanism replaces complex multi-step processes that would otherwise be needed to copy data and database-stored attributes separately, reducing operation complexity while maintaining data persistence.
Data Source
AI summary
A technique for managing data storage places a data object in a first logical extent within a logical address space of a storage system and places a set of attributes assigned to that data object in a second logical extent within the same logical address space of the storage system. In response to a request to generate a second version of the data object, such as a snap, clone, or replica, for example, the first and second logical extents are duplicated atomically, thereby preserving a second version of the attributes along with the second version of the data object.


