Database Change Record Stream Buffering for Multi-Tenant Query Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-tenant databases, managing change event records across numerous tenants is inefficient due to the large volume of data and the complexity of filtering records for individual tenants, leading to delays and dissatisfaction.
Innovation Solution
A system that receives a stream of change event records, stores them in buffers, and tracks information using a separate data structure that includes the order of reception and the associated tenant, allowing for efficient querying and retrieval of records specific to each tenant.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If change event records are organized and maintained across all tenants in a multi-tenant database, then storage efficiency is improved, but query efficiency for individual tenants deteriorates
Solution Approach 1:
The patent segments the change event record stream by creating separate buffered streams for each tenant. The stream manager divides the global change event records into tenant-specific portions using identifiers embedded in the records, allowing each tenant to access only their relevant records. This segmentation resolves the contradiction by maintaining efficient storage in a shared buffer while enabling fast tenant-specific queries without scanning all records.
2Device complexity
If all change event records are maintained in a single stream, then system complexity is reduced, but filtering time for individual tenants increases
Solution Approach 1:
The system performs preliminary action by pre-filtering and organizing change event records into tenant-specific buffered streams as they are generated. The stream manager proactively identifies tenant identifiers in incoming records and routes them to the appropriate tenant-specific buffer before any query occurs. This preliminary organization eliminates the need for time-consuming filtering during query operations while maintaining a relatively simple single-stream ingestion architecture.
3Reliability
If change records are kept private for each tenant, then data security is improved, but system-wide change management complexity increases
Solution Approach 1:
The patent introduces an intermediary stream manager that sits between the global change event record generation and individual tenant access. This intermediary component handles the complexity of tenant-specific record routing, buffering, and retrieval, while presenting a simplified interface to both the database system and individual tenants. The stream manager acts as a mediator that ensures data security by isolating tenant records while managing system-wide change events through centralized coordination.
Data Source
AI summary
Techniques are disclosed relating to methods that include receiving, by a computer system in a multi-tenant database service, a stream of change event records for a database on a server. A given change event record may be indicative of a modification made to the database by one of a plurality of tenants. The methods may further include storing the received change event records in one or more buffers, and tracking, in a data structure separate from the one or more buffers. Information for ones of the stored change event records may include a corresponding order of reception and a particular tenant associated with a respective change event record. In response to receiving a query from a given tenant, the methods may include processing the query using the data structure to identify change event records associated with the given tenant.


