Blob Storage with Distributed Cache for Multi-Tenant Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-tenant SQL-based systems face scalability and performance issues due to the 'noisy neighbor' problem, where resource-intensive customers impact others, and struggle with complex data retrieval and storage needs, especially with variable tenancy and customizable data schemas, which traditional data sharding techniques cannot effectively address.

Innovation Solution

A large-scale, low-latency data retrieval and storage system utilizing blob storage with a persistent distributed cache that allows parallel reads and writes, and employs queryable data structures like sorted sets and hash sets to manage complex queries efficiently, isolating tenant data and using predictive algorithms for optimal query processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multi-tenant SQL database systems are used to store customer data, then data storage and retrieval can be performed, but the system experiences the 'noisy neighbor' problem where resource-intensive customers negatively impact other customers' performance

Engineering Contradiction:
Improveperformance consistencyVSAvoidnoisy neighbor problem
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent segments customer data into separate data structures (sorted sets and hash sets) organized by customer ID and query parameters. Each customer's data is isolated in its own data structures, preventing resource-intensive operations by one customer from affecting others. This segmentation is implemented through creating customer-specific sorted sets for queryable fields and hash sets for record IDs, ensuring performance isolation.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If traditional data sharding techniques are used to solve scaling problems, then system scale can be increased to some extent, but system complexity and maintenance costs increase significantly

Engineering Contradiction:
Improvesystem scaleVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements a universal data structure design that handles multiple functions within a single architecture. The sorted sets and hash sets serve both as storage mechanisms and as query optimization structures simultaneously. This multi-functional approach eliminates the need for separate sharding infrastructure, reducing system complexity while enabling linear scaling with customer count and data volume.

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

3Reliability

If SQL systems with single write node architecture are used, then data consistency can be maintained, but the ability to write at massive scale is limited

Engineering Contradiction:
Improvedata consistencyVSAvoidwrite scale
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces the traditional mechanical single-write-node database architecture with a distributed write architecture using sorted sets and hash sets. Multiple write nodes can simultaneously update customer data by modifying the appropriate data structures, enabling massive scale writes while maintaining consistency through the structured organization of data by customer ID and query parameters.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

4Quantity of substance

If vertical scaling by increasing hardware is used to handle growing data, then system capacity increases, but scaling is limited by maximum hardware support and has serious cost implications

Engineering Contradiction:
Improvedata capacityVSAvoidscaling limitations
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent transitions from vertical scaling (adding more power to single nodes) to horizontal scaling by distributing data across multiple nodes in the network. The distributed sorted sets and hash sets can be partitioned across multiple servers, allowing the system to scale horizontally by adding nodes rather than upgrading individual hardware, thereby overcoming maximum hardware limitations and reducing cost implications.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11720563B1Data storage and retrieval system for a cloud-based, multi-tenant application
Publication Date: 2023.08.08 CONGA CORPORATION
  • US11720563B1 patent drawing
  • US11720563B1 patent drawing
  • US11720563B1 patent drawing

AI summary

The present disclosure relates to a large-scale and low-latency data retrieval and storage system for a multi-tenant, cloud-based application, such as a Quote-to-Cash application. Conventionally, such applications rely heavily on SQL databases, which have difficultly providing service and performance at scale. The system of the present disclosure uses a distributed blob storage for data records, wherein each tenant has their own partition within the blob storage. Blob storage is able to provide service and performance at scale. Blob storage alone, however, cannot solve the needs of a multi-tenant, cloud-based application in which customer inputs complex data queries to retrieve data records. The present disclosure describes a system that converts basic blob storage into a data store can manage complex data queries in an efficient and scalable way for multiple tenants. This includes storing queryable data in data structures in a persistent distributed cache and executing queries on the data structures to identify the record IDs that satisfy the query. The records are then retrieved from blob storage using parallel fetch operations.