Target Database Seeding via Hierarchical Data Filtering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Generating representative target datasets for software testing is complex and resource-intensive, especially when dealing with multiple parent and dependent tables, as existing methods like cloning or synthetic data generation are costly, time-consuming, and require significant expertise.
Innovation Solution
A graphical user interface (GUI) is provided to access and filter source records in a source database, allowing users to select and generate a target database that accurately represents the source data, ensuring parent and dependent records are properly linked and sampled, thereby facilitating thorough software testing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If cloned production data is used for testing, then data representativeness is improved, but cost and time consumption increase
Solution Approach 1:
The system creates a simplified copy of production data structure and relationships rather than cloning actual production data. It generates target data that replicates the hierarchical structure, parent-dependent relationships, and data patterns of the source database, achieving representativeness without the overhead of full data cloning.
Solution Approach 2:
The system generates lightweight, disposable test data that mimics production data characteristics without requiring expensive or time-consuming cloning processes. The target data serves its testing purpose effectively and can be regenerated as needed without significant resource investment.
2Adaptability or versatility
If synthetic test data is generated, then data availability is improved, but resource intensity and time consumption increase
Solution Approach 1:
Instead of generating entirely synthetic data, the system copies the structural patterns, relationships, and constraints from existing source data. It preserves the hierarchical structure and parent-dependent relationships while creating target data that is adaptable for testing purposes without requiring intensive synthetic data generation resources.
3Quantity of substance
If a subset of production data is used, then cost is reduced, but skill intensity increases due to referential integrity issues
Solution Approach 1:
The system segments the data extraction process into manageable components: selecting parent tables, identifying dependent tables, establishing relationships, and applying filters. This segmentation automates the complex referential integrity management, reducing the skill intensity required while maintaining data quality and relationships.
Solution Approach 2:
The system introduces an intermediary processing layer that automatically manages referential integrity between parent and dependent tables. This intermediary handles the complex relationships and constraints, shielding users from the complexity while ensuring data consistency in the target subset.
4Measurement precision
If manual data selection and filtering is performed, then data accuracy is improved, but time consumption and complexity increase
Solution Approach 1:
The system enables users to perform self-service data selection and filtering through an intuitive interface. Users can specify their own criteria for selecting parent tables, dependent tables, and filter conditions, allowing them to control data accuracy while the system automates the complex processing and relationship management.
Data Source
AI summary
A method, including accessing a source database including records stored in tables, which are organized in a hierarchy defining respective parents and dependents of the tables, containing respective parent and dependent records, the records including attribute values. Upon presenting a first list of the tables, an input is received selecting a first table. Upon presenting a second list of the tables related to the first table, an input is received selecting a second table in the second list. Upon presenting filtering criteria for the selected tables, a filtering request is received for a given selected table. The request is applied to the given selected table to select a subset of the records in the given selected table and to generate a target database including the subset of the records and the records in the set that are the respective directly related records of the records in the subset.


