Multi-tenant Database Schema Conversion via Abstraction Layer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multi-tenant database deployment options lack the ability to convert between different isolation levels without manual data movement and system downtime, requiring recoding of applications and affecting hardware costs and scalability.

Innovation Solution

A method and system that utilize an abstraction layer to manage tenant-specific data sets by converting between different multi-tenant deployment options, allowing seamless data isolation changes without application recoding and maintaining system availability during conversion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If tenant data is stored in separate databases, then data isolation is maximized, but hardware costs and backup costs increase

Engineering Contradiction:
Improvedata isolationVSAvoidhardware resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments data isolation at the schema level within a single database rather than creating separate databases for each tenant. Each tenant gets their own schema with tables, views, and stored procedures that are logically isolated but physically stored together, achieving strong data isolation with shared hardware resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple tenant databases into a single database instance with multiple schemas. This allows the system to maintain separate logical data spaces for each tenant while sharing physical storage, indexing structures, and database engine resources, thereby reducing hardware costs while preserving data isolation.

Inventive Principle:
Principle #5Merging (Combining)

2Quantity of substance

If multiple tenants are housed in the same database with separate schemas, then hardware costs decrease, but data isolation is reduced

Engineering Contradiction:
Improvehardware resourcesVSAvoiddata isolation
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent uses database schemas as logical containers to segment tenant data. Each schema acts as an independent namespace with its own tables, views, and stored procedures, ensuring that tenants can access only their own data even though all schemas reside in the same physical database instance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an abstraction layer as an intermediary between applications and the physical database. This abstraction layer translates application queries into schema-specific queries, providing a layer of indirection that maintains data isolation while allowing efficient shared access to the underlying database resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If conversion between deployment options is performed manually, then data movement is controlled, but system downtime occurs and application recoding is required

Engineering Contradiction:
Improveconversion downtimeVSAvoidconversion process
Core Design Contradiction:
Loss of timeVSEase of manufacture

Solution Approach 1:

The patent makes the database schema dynamic by allowing runtime switching between different schema configurations. The system can dynamically create, drop, and switch between schemas based on deployment requirements, enabling seamless conversion between deployment options without manual intervention or application recoding.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent uses schema copying mechanisms to facilitate deployment conversions. When converting between deployment options, the system can copy existing schemas to new locations or create mirrored schemas, allowing data to be moved between deployment configurations without disrupting application access or requiring code changes.

Inventive Principle:
Principle #26Copying

4Quantity of substance

If the same database and tables host multiple tenants, then hardware costs are minimized, but data isolation is weakest

Engineering Contradiction:
Improvehardware resourcesVSAvoiddata isolation
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent segments the database into multiple schemas, where each schema contains tenant-specific tables and views. This logical segmentation ensures that even though all data resides in the same physical database, tenants cannot access each other's data through the shared table structure, maintaining strong data isolation with minimal hardware resources.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9251183B2Managing tenant-specific data sets in a multi-tenant environment
Publication Date: 2016.02.02 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9251183B2 patent drawing
  • US9251183B2 patent drawing
  • US9251183B2 patent drawing

AI summary

A method, computer program product and system for managing tenant-specific data sets in a multi-tenant system, by receiving a request to convert a data set in a physical data store from a first type of multi-tenant deployment to a second type of multi-tenant deployment, retrieving tenant identification metadata identifying a tenant making the request, modifying the data set in the physical data store based on the second type of multi-tenant deployment, and modifying metadata associated with an abstraction layer to allow the modified data set to be accessed.