Database Subset Generation with Foreign Key Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for generating a subset of data from a database often result in non-representative replicas due to limitations in handling foreign key relationships, particularly when selecting a table with many parental relationships as the driving table, which complicates maintaining referential integrity and statistical representativeness.

Innovation Solution

The method checks foreign key relationships for conflicts and selects dependencies based on both parent and child roles, allowing for the automatic generation of a subset of data that maintains referential integrity, enabling quicker selection of records and generation of representative subsets by ordering tables by preliminary levels and examining foreign key relationships to establish dependencies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a table with many parental relationships is selected as the driving table, then the speed of generating subset data is improved, but maintaining referential integrity becomes more difficult

Engineering Contradiction:
Improvespeed of generating subset dataVSAvoidreferential integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary analysis of foreign key relationships and determines a processing order for tables before generating the subset. By pre-establishing which tables should be processed first based on their foreign key dependencies, the system can quickly generate representative subsets while automatically maintaining referential integrity through the predetermined processing sequence.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system automatically analyzes the database schema, identifies foreign key relationships, and determines the optimal processing order without requiring manual intervention. The algorithm self-adapts to the specific database structure by examining actual foreign key constraints and automatically generates the processing sequence that ensures referential integrity is maintained.

Inventive Principle:
Principle #25Self-service

2Reliability

If foreign key relationships are thoroughly checked for conflicts, then referential integrity is maintained, but the time required to generate subset data increases

Engineering Contradiction:
Improvereferential integrityVSAvoidtime to generate subset data
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs a preliminary pass to analyze all foreign key relationships and determine the processing order before actual subset generation. This upfront analysis caches the dependency information, allowing the subsequent subset generation to proceed quickly while still maintaining referential integrity through the pre-determined processing sequence.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains the foreign key relationship checks throughout the entire subset generation process rather than performing them separately. By continuously applying the processing order rules during data extraction, the system ensures referential integrity is maintained without requiring additional time-consuming verification steps after subset creation.

Inventive Principle:
Principle #20Continuity of useful action

3Quantity of substance

If only a subset of data is provided for testing, then the amount of data to be made available is reduced, but the representativeness of the subset may be compromised

Engineering Contradiction:
Improveamount of dataVSAvoidrepresentativeness of subset
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The system performs preliminary analysis of the database structure and foreign key relationships to determine the optimal processing order. This preliminary action enables the system to select records that maintain the statistical properties and relationships of the original database, ensuring the subset is representative even though it contains fewer records.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses the foreign key relationship information as feedback to guide the selection of records for the subset. By continuously referencing the established processing order based on foreign key dependencies, the system ensures that selected records maintain the same relational structure and statistical characteristics as the original database, thereby preserving representativeness.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP2251802B1Method and program for generating a subset of data from a database
Publication Date: 2017.08.16 MINDBOX
  • EP2251802B1 patent drawingFigure 1
  • EP2251802B1 patent drawingFigure 2
  • EP2251802B1 patent drawingFigure 3

AI summary

For automatically creating a partial replica database from a source relational database, a group of tables that are in direct foreign key relationship with a driving table to which a filtering step is to be applied is selected. Dependencies based of foreign key relationships with the tables are established. Successively, foreign key relationships of tables of next levels are examined for conflicts with previously established dependencies. Dependencies are established in accordance with the foreign key relationships for which no conflict with previously established dependencies has been found. Successively for each level, instances of each table, associated with the selected records in at least one table of a previous dependency level are selected in accordance with the foreign key relationship on which the dependency of that table is based. The selected instances are replicated to the partial replica database.