Co-locating Microservice Persistence Containers in Tenant-Specific Database

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Microservice-oriented application platforms face challenges in dynamically managing service instances for multi-tenancy, as static binding is insufficient for creating additional instances at runtime and connecting to specific tenant instances, leading to inefficiencies in data management and security.

Innovation Solution

Implementing a central instance manager that co-locates persistence containers of different microservices within a tenant-specific database, using a two-dimensional mapping to allocate tenant-specific microservice data, allowing for dynamic instance management and enhanced security, backup, and access control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If static binding is used for service instances, then deployment time binding is simple, but runtime flexibility for multi-tenancy is insufficient

Engineering Contradiction:
Improveruntime flexibilityVSAvoidinstance management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic service instance management by allowing the system to create, bind, and manage multiple service instances at runtime based on tenant requirements. The instance manager dynamically provisions service instances and binds them to tenants, enabling flexible adaptation without static pre-binding configurations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces an instance manager as an intermediary component that mediates between the service broker and service instances. This intermediary handles the complexity of dynamic instance creation, binding, and management, shielding tenants from complexity while enabling runtime flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If each tenant has separate database schemas, then data isolation is achieved, but data management efficiency decreases

Engineering Contradiction:
Improvedata isolationVSAvoiddata management efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments tenant data into separate schemas within a unified database, providing data isolation for security and reliability while maintaining efficient centralized management. Each tenant's data is isolated in its own schema, yet the unified database structure enables streamlined backup, recovery, and access management operations.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If service instances are distributed across multiple databases, then service independence is maintained, but backup and recovery complexity increases

Engineering Contradiction:
Improveservice independenceVSAvoidbackup and recovery complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges multiple service instances and their associated data into a unified database structure with separate schemas. This consolidation enables centralized backup and recovery operations while maintaining service independence through schema-level isolation, reducing the complexity of managing distributed database backups.

Inventive Principle:
Principle #5Merging (Combining)

4Adaptability or versatility

If dynamic instance creation is implemented, then multi-tenancy flexibility is improved, but system complexity increases

Engineering Contradiction:
Improvemulti-tenancy flexibilityVSAvoidinstance management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The instance manager serves as an intermediary that abstracts and manages the complexity of dynamic service instance creation. It handles tenant authentication, service instance provisioning, binding, and unbinding operations, enabling multi-tenancy flexibility while shielding the system from management complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system implements self-service capabilities where tenants can dynamically create and manage their own service instances through the instance manager interface. This automated approach reduces manual configuration complexity while maintaining high multi-tenancy flexibility.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11409719B2Co-locating microservice persistence containers within tenant-specific database
Publication Date: 2022.08.09 SAP SE
  • US11409719B2 patent drawing
  • US11409719B2 patent drawing
  • US11409719B2 patent drawing

AI summary

A platform's central instance manager (IM) receives microservice requests issued to a common application shared between various tenants. Embodiments function to co-locate within a same database, the persistence containers of different microservice instances of a specific tenant. The central IM associates a corresponding tenant identifier with microservice request instances created. Referencing this assigned tenant identifier, the central IM maintains an external configuration file comprising a mapping of services (m) and tenants (n), to relevant persistence container service instances. Such mapping permits the allocation of tenant-specific microservice data for storage within persistence containers of a particular database. This co-location of data promotes flexibility, allowing tenants to furnish database structures tailored to their individual needs. Consolidating microservice persistence containers within a tenant-specific database may also facilitate: the efficient backup of data, the isolation of individual tenant data for security purposes, and/or the provision of access to individual tenant data by extension application(s).