Uniform Service Provider Interface for Multi-Tenant Data Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional multi-tenant computing systems face challenges in providing uniform access to disparate data sources, scaling effectively, and managing error recovery in data transmissions, particularly due to the complexity of maintaining multiple APIs and the inefficiency of restarting data streams from the beginning after errors occur.

Innovation Solution

A multi-tenant computing system is configured with a uniform service provider interface that allows minimal modification across services, enabling uniform access and data handling, and implements real-time pagination for error recovery by buffering and reinitiating data transmissions from the current page, reducing the need for extensive glue layers and improving scalability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple different APIs are provided for accessing disparate data sources, then each data source can be accessed with its native interface, but the system complexity increases and scalability deteriorates

Engineering Contradiction:
Improvedata source access compatibilityVSAvoidAPI layer complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the data access layer into standardized interface components and backend-specific implementation components. The data source interface is divided into a uniform access layer that handles common operations and source-specific layers that handle backend particularities, allowing each to be developed and maintained independently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A data source interface layer acts as an intermediary between the uniform data access layer and disparate backend data sources. This intermediary translates uniform access requests into backend-specific operations, isolating the uniform access layer from backend complexities and enabling easy addition of new data sources.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If a monolithic datastore is used, then simple query methods can be applied, but the system cannot effectively handle multiple datastores

Engineering Contradiction:
Improvequery simplicityVSAvoidmulti-datastore capability
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The data source interface is designed with universal functionality to work with multiple types of datastores including relational databases, NoSQL databases, and file-based storage systems. The same interface methods can access diverse data sources, eliminating the need for separate query mechanisms for each datastore type.

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

Solution Approach 2:

The system uses configuration parameters to adapt the same query interface to different datastore types. By changing parameters such as connection strings, query syntax variants, and data model mappings, the uniform interface can efficiently access various datastore backends without structural modifications.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If data streams are restarted from the beginning after transmission errors, then error recovery is simple to implement, but large amounts of data must be retransmitted

Engineering Contradiction:
Improveerror recovery capabilityVSAvoiddata retransmission time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by implementing checkpoint mechanisms during data stream transmission. Periodic acknowledgment points are established where transmitted data is confirmed and recorded, enabling the system to resume from the last confirmed checkpoint rather than restarting from the beginning when errors occur.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A feedback mechanism tracks transmission progress and error states in real-time. When transmission errors are detected, the feedback system provides information about the last successful checkpoint, allowing the data stream to be resumed efficiently from that point rather than requiring complete retransmission.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3804284B1Systems and methods for providing uniform access in a multi-tenant system
Publication Date: 2023.05.24 ZUORA INC
  • EP3804284B1 patent drawingFigure 1
  • EP3804284B1 patent drawingFigure 2
  • EP3804284B1 patent drawingFigure 3

AI summary

Receive, by a central controller engine, a user request to perform one or more operations associated with user data, wherein the user data includes first data and second data. Select, by the central controller engine based on the user request, a first service provider interface (SPI) integrated into a first service, the first SPI being configured to operate on the first data in a first datastore associated with the first service. The first SPI including a first service interface component configured based on a uniform access specification. Obtain, by the first SPI, the first data, the first data being formatted according to a first service data specification. Transform, by the first SPI based on the uniform access specification, the first data, thereby generating transformed first data formatted according to the uniform access specification. Provide, by the first SPI, the transformed first data to a target service.