Multitenant Metadata Bundles for Tenant Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multitenant application environments, managing applications and customizations across different tenants while maintaining separation and efficiency is challenging, as tenants may have varying needs and data models, and existing systems lack effective mechanisms for deploying and managing metadata.
Innovation Solution
An object metadata service is implemented in a multitenant platform, where metadata is stored in bundles and managed by an application manager, bundle manager, and deployment manager, allowing tenants to customize their data models and deploy applications or versions while ensuring isolation from other tenants.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If applications are customized for each tenant in a multitenant environment, then tenant-specific requirements and data models are met, but system complexity and management difficulty increase
Solution Approach 1:
The patent segments the application configuration into separate metadata bundles for each tenant. Each bundle contains tenant-specific customizations, data models, and settings, allowing independent management and deployment without affecting other tenants. This segmentation enables the system to handle multiple tenant customizations simultaneously while maintaining clear organizational boundaries.
Solution Approach 2:
The patent introduces a metadata management system as an intermediary layer between the core application and tenant-specific customizations. This metadata layer acts as a mediator that stores, manages, and applies tenant-specific configurations, thereby simplifying the overall system architecture by isolating customization logic from the core application code.
2Productivity
If tenant-specific data models and customizations are stored centrally, then deployment and updates are simplified, but isolation between tenants may be compromised
Solution Approach 1:
The patent segments tenant data into distinct metadata bundles that are stored centrally but logically separated by tenant identifier. Each bundle is self-contained and tagged with tenant-specific metadata, enabling the system to retrieve and apply only the relevant bundle for each tenant while maintaining physical centralization for efficient deployment and updates.
Solution Approach 2:
The patent implements local quality by ensuring that each tenant's metadata bundle contains only that tenant's specific customizations and data models. The system retrieves and applies the appropriate bundle based on tenant identity, thereby maintaining data isolation at the logical level while benefiting from centralized storage and management at the physical level.
3Adaptability or versatility
If entire table structures are created for on-premise applications, then complete customization is achieved, but resource consumption and deployment time increase
Solution Approach 1:
The patent extracts only the essential metadata and configuration data needed for tenant-specific customizations from the complete application table structure. Instead of deploying entire table structures, the system extracts and stores only the relevant metadata bundles in a centralized repository, significantly reducing deployment time while maintaining the ability to provide complete customization when needed.
Solution Approach 2:
The patent performs preliminary action by pre-processing and storing tenant-specific metadata bundles in a centralized repository before actual deployment. This allows the system to quickly retrieve and apply pre-packaged metadata configurations during deployment, avoiding the time-consuming process of creating entire table structures from scratch for each tenant.
Data Source
AI summary
Systems, methods and computer program products for providing a multi-tenant application execution environment that provides an object metadata service for managing application configuration in the multi-tenant environment. In one embodiment, a system has an application manager, a bundle manager, and a deployment manager. The application manager captures application metadata for a corresponding version of an application and defines a corresponding bundle which contains metadata that configures the version of the application. The bundle manager validates each bundle and stores the validated bundle in a bundle library in a data storage device. The deployment manager retrieves a master schema and one or more of the bundles from the bundle library and installs the retrieved master schema and the retrieved bundles, generating a tenant schema which is accessible by a corresponding tenant of the multi-tenant environment that has subscribed to the version of the application.


