Tenant Cache Segmentation in ERP Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multiple tenant Enterprise Resource Planning (ERP) systems, managing cache resources efficiently to balance performance and data separation across tenants is challenging, particularly in maintaining effective cache sizes and updating cached items to reflect database changes, while ensuring responsive systems for all tenants.
Innovation Solution
A cache manager application implements a caching policy that optimizes system performance by managing multiple tenant caches in a single process, applying policies like Least Recently Used (LRU) to ensure data separation and efficient resource allocation, dynamically determining cache sizes based on tenant needs, and removing least accessed items to maintain memory limits.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a cache is implemented to improve read performance, then system performance is improved, but cache size must be limited which reduces caching effectiveness
Solution Approach 1:
The patent segments the cache into multiple tenant-specific cache instances, each managing its own data separately. This allows the system to provide targeted caching for each tenant while maintaining overall system performance, resolving the contradiction between limited total cache size and the need for effective caching by distributing cache resources across multiple specialized segments.
2Speed
If data is cached to improve read speed, then read operations are faster, but cached items must be updated when database changes occur which adds complexity
Solution Approach 1:
The patent implements a feedback mechanism where write operations to the database trigger notifications to the cache manager, which then invalidates or updates the corresponding cached items. This automated feedback loop ensures cache consistency with database changes without requiring complex manual update logic, resolving the contradiction between fast reads and update complexity.
3Productivity
If computing resources are shared across multiple tenants to achieve economy of scale, then resource efficiency is improved, but data separation between tenants must be maintained which increases system complexity
Solution Approach 1:
The patent segments the cache into multiple isolated tenant-specific instances, each with its own data space. This segmentation approach allows the system to share the overall caching infrastructure and achieve economy of scale while maintaining strict data separation between tenants through the modular instance structure, resolving the contradiction between resource efficiency and data separation complexity.
4Ease of operation
If a single cache is used for all tenants to simplify management, then cache management is easier, but tenants with high cache consumption cannot receive adequate resources which reduces fairness
Solution Approach 1:
The patent segments the cache into multiple tenant-specific instances that can be independently managed and allocated. This allows the system to provide adequate resources to tenants with high cache consumption needs while maintaining simplified management through a standardized instance template, resolving the contradiction between management ease and allocation fairness.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A cache manager application provides a data caching policy in a multiple tenant enterprise resource planning (ERP) system. The cache manager application manages multiple tenant caches in a single process. The application applies the caching policy. The caching policy optimizes system performance compared to local cache optimization. As a result, tenants with high cache consumption receive a larger portion of caching resources.