Silo-Aware Database Table Proxy for Data Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database systems face challenges in isolating test data from production data, leading to potential contamination and 'dirty reads' during software testing and demonstrations, which can result in user confusion and inaccurate application results.

Innovation Solution

The implementation of a silo-aware database system that uses database table proxies to manage different data silos, allowing for the creation of logical database constructs that can be assigned specific data silos for production, test, and demo data, ensuring data isolation and automatic cleanup of non-permanent data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If test data is temporarily stored in a database to enable testing operations, then testing can be performed, but the production data may be contaminated or destroyed after tests finish

Engineering Contradiction:
Improvetesting capabilityVSAvoiddata integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The database is segmented into multiple isolated silos (test silo, production silo, demo silo) that are logically separated but managed through a unified interface. Each silo contains specific types of data (test data, production data, demo data) and applications are routed to appropriate silos based on their needs, preventing cross-contamination while maintaining operational versatility

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A silo-aware database engine acts as an intermediary between applications and data silos, automatically routing requests to the appropriate silo based on application context, data type, and operational mode. This mediator prevents direct access to production data by test applications while maintaining the appearance of a unified database system

Inventive Principle:
Principle #24Intermediary (Mediator)

2Difficulty of detecting and measuring

If test data is marked with special patterns to differentiate from production data, then test data can be identified, but dirty reads may still occur where applications see test data in production mode

Engineering Contradiction:
Improvetest data identificationVSAvoiddata visibility accuracy
Core Design Contradiction:
Difficulty of detecting and measuringVSLoss of information

Solution Approach 1:

Instead of marking test data within a unified database, the system segments test data into a completely separate test silo. Applications are routed to the test silo when in test mode and to the production silo when in production mode, eliminating the possibility of dirty reads while maintaining clear identification of data purposes

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The database engine implements feedback mechanisms that track application context (test mode vs. production mode) and automatically adjust data routing accordingly. This feedback loop ensures that applications only see data from the appropriate silo based on their operational state, preventing test data leakage into production views

Inventive Principle:
Principle #23Feedback

3Reliability

If multiple database servers (production and test) are used to isolate data, then data contamination is prevented, but system complexity increases

Engineering Contradiction:
Improvedata isolationVSAvoiddatabase system architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Multiple logical database silos are merged into a single physical database server instance, maintaining data isolation through logical separation rather than physical distribution. This approach provides the reliability of isolated data storage while eliminating the complexity of managing multiple separate database servers, connections, and configurations

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The silo-aware database engine provides universal access to multiple data silos through a single interface, allowing one database server to serve multiple functions (test database, production database, demo database) simultaneously. This multi-functionality reduces infrastructure complexity while maintaining the isolation benefits of separate database systems

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP2778962B1Silo-aware databases
Publication Date: 2015.09.02 SAP SE
  • EP2778962B1 patent drawingFigure 1
  • EP2778962B1 patent drawingFigure 2
  • EP2778962B1 patent drawingFigure 3A

AI summary

A system receives a request from an application to access a database. The system forms a database table proxy for a logical database. One or more database silos are assigned to the database table proxy. A default database silo from the one or more database silos is defined for the database table proxy. A database silo of the database table proxy corresponding to an application requesting access to the logical database is accessed with a database engine.