File Collection Morphing for Backup Simulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developers face challenges in simulating data streams with desired characteristics for testing and evaluation, as existing algorithms may not suit all applications and require copying entire files or collections, which is inefficient.
Innovation Solution
The system generates a collection of files based on data streams with specified characteristics, such as dedupability, compressibility, and clustering, by creating a simulated filesystem structure and populating it with data from a data stream, allowing for high-speed generation and morphing of file collections without ad-hoc data stream generation, using masks to identify and write only changed data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If existing algorithms are used to generate data streams, then data streams can be generated with various characteristics, but they may not suit all applications and require copying entire files or collections which is inefficient
Solution Approach 1:
The patent implements dynamic control of data stream generation by allowing runtime adjustment of characteristics such as dedupability, compressibility, and clustering through configurable parameters. The system can morph existing file collections to have different characteristics without regenerating from scratch, enabling adaptation to different application requirements while maintaining high generation speed.
Solution Approach 2:
The patent pre-generates file collections with specific characteristics stored as templates. When testing is needed, the system can quickly instantiate and morph these pre-generated collections rather than generating new data streams from scratch, significantly improving productivity while maintaining versatility through the morphing capability.
2Reliability
If entire files or collections are copied for testing, then complete file structures can be simulated, but the process is inefficient and time-consuming
Solution Approach 1:
The patent segments file collections into smaller units that can be independently generated, stored as templates, and recombined. Instead of copying entire large file collections, the system generates complete simulated filesystems by assembling smaller data blocks with controlled characteristics, reducing preparation time while maintaining simulation completeness.
Solution Approach 2:
The patent creates virtual copies of file collections through morphing operations rather than physical copying. The morphing process generates new file collections with desired characteristics by transforming existing templates in memory, avoiding the time-consuming process of copying entire files while preserving the complete file structure needed for reliable testing.
3Adaptability or versatility
If data streams are generated ad-hoc for each test, then specific test requirements can be met, but generation speed decreases due to repeated work
Solution Approach 1:
The patent pre-generates file collections with various characteristics and stores them as reusable templates. For specific tests, the system loads appropriate templates and applies morphing operations to meet test requirements, avoiding repeated ad-hoc generation while maintaining customization capability through parameter adjustment.
Solution Approach 2:
The patent enables customization for specific tests by allowing modification of generation parameters such as dedupability, compressibility, and clustering ratios. The morphing operation changes these parameters on existing file collections, providing test-specific customization without regenerating from scratch, thus maintaining both adaptability and high generation speed.
Data Source
AI summary
One example method includes receiving a set of filesystem parameters, creating a simulated filesystem based on the filesystem parameters, receiving a set of target characteristics for a file collection, based on the target characteristics, slicing a datastream into a grouping of data slices, populating the simulated files with the data slices to create the file collection and forward or reverse morphing the file collection from one generation to another without rewriting the entire file collection.


