Client-Account Database Routing for Scalable Multi-Deployment Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional database management systems face scalability limitations due to bottlenecks in shared-disk architectures and are costly and susceptible to data loss, while existing data replication strategies like snapshot and logging are impractical for large databases.
Innovation Solution
A hybrid replication strategy combining snapshots with transaction logs to ensure consistent and up-to-date data replication across multiple deployments, using micro-partitions and metadata for efficient change tracking, and leveraging cloud-based storage for redundancy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional shared-disk database architecture is used, then data storage and access is provided, but scalability is limited due to bottlenecks
Solution Approach 1:
The patent segments the monolithic database architecture into multiple independent database instances distributed across different servers. Each database instance operates autonomously, eliminating the shared-disk bottleneck by removing the centralizing component and allowing parallel processing across multiple nodes in the network.
2Reliability
If traditional database management is implemented, then data storage is achieved, but cost is high and data loss susceptibility increases
Solution Approach 1:
The patent implements automatic data replication by creating and maintaining copies of database data across multiple distributed instances. When data is written to one database, it is automatically replicated to other databases in the network, ensuring redundancy and preventing data loss without requiring expensive specialized hardware.
3Loss of information
If snapshot replication is used for data replication, then data consistency is achieved, but it is impractical for large databases
Solution Approach 1:
The patent extracts only the essential data change information (inserts, updates, deletes) from the source database and transmits only these incremental changes to replicated databases. This differential replication approach avoids the overhead of complete snapshot transfers while maintaining data consistency, making it feasible for large databases.
4Loss of information
If logging-based replication is used, then data consistency is maintained, but the strategy is impractical for large databases
Solution Approach 1:
The patent extracts and transmits only the minimal necessary data change information rather than maintaining complete transaction logs. By identifying and replicating only the essential change elements (new rows, modified values, deletions), the system achieves data consistency with significantly reduced replication overhead for large databases.
5Loss of time
If geographically distributed database access is implemented, then latency is reduced through location optimization, but system complexity increases
Solution Approach 1:
The patent implements automatic failover and load balancing mechanisms that operate autonomously without manual intervention. When a database instance becomes unavailable or overloaded, the system automatically redirects requests to alternative instances, reducing access latency and distributing load across the network while managing complexity through automation rather than manual configuration.
Data Source
AI summary
Systems of methods of directing requests to databases based on client account association is disclosed. A method includes determining a first client account associated with a first request to perform a first transaction. The method includes determining a second client account associated with a second request to perform a second transaction. The method includes selecting, for the first request, a primary deployment that stores a first dataset responsive to determining the first client account associated with the first request. The method includes selecting, for the second request, a secondary deployment that stores a second dataset that includes the first dataset responsive to determining the second client account associated with the second request. The method includes executing, while the primary deployment and the secondary deployment are both available, the first transaction on the first dataset at the primary deployment and the second transaction on the second dataset at the secondary deployment.


