Snapshot Comparison with Metadata Compaction Graph
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing object-based data storage systems face challenges in implementing snapshot or point-in-time image functionality, particularly on a multi-object scale, which is essential for data protection and disaster recovery but lacks efficient definition and scalability.
Innovation Solution
The implementation of techniques for creating and managing snapshot images in distributed object-based datastores, using a metadata datastore with a log-structured merge-tree architecture, allows for efficient snapshotting, comparison, and compaction, enabling flexible snapshotting of entire data volumes or individual objects, and supporting data protection and disaster recovery with minimal impact on workloads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If snapshot functionality is implemented in object-based data storage systems, then data protection and disaster recovery capabilities are improved, but system complexity and implementation difficulty increase significantly
Solution Approach 1:
The patent creates snapshot images by copying metadata from the active metadata datastore to a snapshot metadata datastore at a specific point in time. This copying approach enables data protection without requiring complex real-time replication mechanisms, as the snapshot captures the state of data objects and their locations at that moment.
Solution Approach 2:
The patent introduces a snapshot metadata datastore as an intermediary structure that stores snapshot-specific metadata separately from the active metadata datastore. This intermediary layer isolates snapshot operations from the main storage system, reducing complexity by handling snapshot management independently while still providing comprehensive data protection.
2Measurement precision
If snapshot comparison is performed across multi-object scale, then data integrity verification is improved, but processing time and computational resources increase
Solution Approach 1:
The patent segments the snapshot comparison process by operating at the metadata level rather than examining every data object individually. By comparing metadata structures that describe data objects, their locations, and their relationships, the system achieves comprehensive verification without the computational overhead of detailed object-by-object analysis.
Solution Approach 2:
The patent performs partial comparison by focusing on metadata differences rather than complete data object verification. This approach provides sufficient data integrity assurance for most purposes while significantly reducing processing time, accepting that not every single data object is examined in detail unless necessary.
3Quantity of substance
If metadata compaction is performed frequently, then storage efficiency is improved, but snapshot consistency and data availability may be compromised
Solution Approach 1:
The patent performs metadata compaction in advance of snapshot operations by providing compaction hints to the metadata compaction thread. This preliminary action allows the system to optimize storage efficiency before snapshots are taken, ensuring that compaction does not interfere with snapshot consistency, as the compaction is already complete when the snapshot is created.
Solution Approach 2:
The patent implements a feedback mechanism where the snapshot metadata manager communicates compaction hints to the metadata compaction thread. This feedback loop allows the system to coordinate compaction activities with snapshot operations, ensuring that compaction enhances storage efficiency without compromising snapshot consistency or data availability.
4Adaptability or versatility
If snapshot images are maintained for multiple timepoints, then data recovery flexibility is improved, but memory usage and system resources increase
Solution Approach 1:
The patent creates lightweight copies of metadata for each snapshot timepoint rather than duplicating actual data objects. Each snapshot image stores only the metadata necessary to identify and locate data objects as they existed at that time, dramatically reducing memory usage while maintaining the ability to recover data from multiple timepoints.
Solution Approach 2:
The snapshot metadata datastore structure is designed to be universal and scalable, allowing the system to maintain any number of snapshot images across multiple timepoints using the same infrastructure. This multi-functional design enables flexible data recovery options without requiring separate systems for each snapshot, optimizing resource utilization.
Data Source
AI summary
Snapshot or point-in-time image functionality improves the use of object-based datastores. An example system includes an object-based datastore and a metadata datastore associated with the object-based datastore. Instances of the metadata datastore are created as snapshot images of the object-based datastore. Comparison of snapshot images is important for database analytics, disaster recovery, data protection, and more. Example techniques provide comparison of snapshot images (as metadata datastore instances) and remain robust and accurate in view of compactions performed by the metadata datastore. An example technique includes generating and updating a graph-based data structure that captures relationships between metadata files in the metadata datastore, particularly between pre-compaction files and post-compaction files. The example technique further includes referencing the graph-based data structure to accelerate snapshot image comparison based on determining whether files of a source snapshot image were compacted into files of a destination snapshot image, and/or vice versa.


