Multi-tenant Database Table Set Segmentation for Resource Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current multi-tenancy data storage solutions face challenges in maintaining stable data access performance and low management costs as the number of tenants increases, with existing modes either leading to resource inefficiencies or complex cross-tenant management operations.
Innovation Solution
The solution involves creating multiple table sets in databases, where each set stores data for a group of tenants, and recording relationships between tenants and table sets in a metadata repository, allowing for efficient data access by querying the repository and modifying SQL statements to access tenant data within the appropriate table set.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If separate database mode is used for each tenant, then data isolation and security are improved, but resource consumption and system complexity increase dramatically with the number of tenants
Solution Approach 1:
The patent segments the database structure by creating separate table sets for different groups of tenants while sharing a common database. This allows data isolation at the table set level rather than requiring complete database separation, reducing overall system complexity while maintaining security and isolation requirements.
Solution Approach 2:
The patent implements a universal database structure where a single database serves multiple tenants through shared table sets. The database system is designed to handle multiple tenant groups simultaneously, providing multi-functionality that reduces the need for separate database instances for each tenant.
2Loss of energy
If shared database and shared table mode is used, then resource utilization is improved, but data access performance deteriorates dramatically when the number of tenants exceeds a break point
Solution Approach 1:
The patent segments tenants into different groups, with each group having its own dedicated table set within the shared database. This segmentation prevents data access performance deterioration by isolating query workloads to specific table sets, avoiding the break point phenomenon where all tenant data interferes with each other.
Solution Approach 2:
The patent applies local quality by providing dedicated table sets for specific tenant groups while maintaining shared database resources. Each table set is optimized for its specific tenant group's access patterns, allowing local performance optimization without sacrificing overall resource utilization.
3Productivity
If shared database and separate table mode is used, then data access performance is maintained with large number of tenants, but cross-tenant management operations become extremely complex
Solution Approach 1:
The patent implements a universal management approach where a single database management system handles multiple tenant groups through table sets. Management operations such as tenant registration and cross-tenant queries are simplified by working with table set-level abstractions rather than individual table operations, reducing operational complexity while maintaining performance.
4Reliability
If separate database mode is used, then data security is improved, but resource consumption increases significantly with the number of tenants
Solution Approach 1:
The patent segments data storage by creating separate table sets for different tenant groups within a shared database. This provides data security through logical isolation at the table set level while avoiding the resource consumption of complete database separation, as the underlying database infrastructure and resources are shared among all tenant groups.
Data Source
AI summary
A method, apparatus, and a computer program product for storing and accessing multi-tenancy data. The method includes the steps of: creating a plurality of table sets in one or more databases, wherein each table set is used to store data of a group of tenants selected from a plurality of tenants; accessing data of a tenant in a table set in response to receiving a data access request from the tenant; and recording relationships between the tenants and the table sets in a multi-tenancy metadata repository, wherein the step of accessing the data of the tenant comprises the steps of finding the table set by querying the metadata repository and accessing the data of the tenant in the table set based on the result received from the query of the metadata repository.


