Multi-tenant Redis Cluster via Envoy Proxy Key Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Redis instance provisioning and de-provisioning processes are time-consuming and costly, especially for enterprises with high customer turnover, and existing managed Redis services often require overprovisioning due to fixed tiers that do not match specific workload needs, leading to inefficient resource usage and increased costs.

Innovation Solution

A shared cluster platform that leverages protocol-aware proxies to provide a multi-tenant Redis instance, allowing multiple tenants to share a single large data store instance while maintaining data isolation through unique key elements, and dynamically provisions or de-provisions instances based on workload demands, optimizing resource usage and cost.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a dedicated Redis instance is provisioned for each tenant, then data isolation and security are improved, but provisioning time and cost increase significantly

Engineering Contradiction:
Improvedata isolationVSAvoidprovisioning time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the Redis instance at the logical level by introducing unique key elements (prefixes) for each tenant. While the physical Redis instance is shared, the key space is divided into tenant-specific segments using prefix-based routing. This allows data isolation without requiring separate physical instances, thus reducing provisioning time while maintaining security.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention introduces an intermediary layer (the key element/prefix mechanism) between the tenant and the shared Redis instance. This intermediary enables logical separation and data isolation by routing tenant-specific operations through unique key prefixes, eliminating the need for dedicated instances while preserving security boundaries.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If fixed-tier managed Redis services are used, then ease of operation is improved, but resource allocation efficiency deteriorates due to overprovisioning

Engineering Contradiction:
Improveease of operationVSAvoidresource allocation efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system implements dynamic resource allocation by allowing tenants to share a pooled Redis instance with flexible resource distribution. Instead of static fixed tiers, the shared instance can dynamically allocate memory and computational resources based on actual tenant workload demands, improving resource efficiency while maintaining ease of operation through automated management.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The shared Redis instance serves multiple tenants simultaneously with different workload requirements through the key element routing mechanism. This universal instance performs multiple functions for different tenants, eliminating the need for separate dedicated instances and improving overall resource allocation efficiency while maintaining operational simplicity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If multiple Redis instances are provisioned for high customer turnover, then adaptability is improved, but cost and complexity increase

Engineering Contradiction:
ImproveadaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The invention merges multiple tenant workloads into a single shared Redis instance, reducing the total number of instances required. By combining resources and using logical separation through key elements, the system achieves the adaptability needed for high customer turnover without the complexity and cost of provisioning multiple dedicated instances for each potential tenant.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12020081B2Method to implement multi-tenant/shared redis cluster using envoy
Publication Date: 2024.06.25 SAP SE
  • US12020081B2 patent drawing
  • US12020081B2 patent drawing
  • US12020081B2 patent drawing

AI summary

A system and method are disclosed associated with at least one physical data store instance adapted to contain electronic records; and a shared cluster platform, coupled to the data store, including: a computer processor, and a computer memory, coupled to the computer processor, storing instructions that, when executed by the computer processor cause the shared cluster platform to: receive an eviction policy for a first tenant for a data store; map a first container for the first tenant to a physical data store instance; generate a unique first key element for the first tenant, wherein the eviction policy for the first tenant is linked to the unique first key element; and transmit a first endpoint of the first container as a proxy for the selected physical data store instance Numerous other embodiments are provided.