Flexible Routing of Database Operations for Distributed Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed database systems face challenges in maintaining ACID principles, particularly with write operations, as they require complex coordination to ensure transaction atomicity, consistency, isolation, and durability, limiting the offloading of operations to non-anchor nodes and impacting query execution speed and workload management.

Innovation Solution

The system assigns database operations to either an anchor node or a non-anchor node based on the type of operation, with read or write operations being treated independently, allowing non-anchor nodes to execute operations that do not include inserts, deletes, or updates, and routing subsequent operations for a remote data object to the anchor node once a write operation is received.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If database operations are centralized on anchor nodes to maintain ACID principles, then transaction consistency is ensured, but query execution speed and workload distribution deteriorate

Engineering Contradiction:
ImproveACID principle complianceVSAvoidquery execution speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent segments database operations into two categories: read operations (SELECT) that can be executed on non-anchor nodes, and write operations (INSERT, DELETE, UPDATE) that must be executed on anchor nodes. This segmentation allows read operations to be distributed across multiple nodes, improving query execution speed while maintaining ACID compliance for write operations through centralized anchor node execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by allowing different types of nodes (anchor and non-anchor) to handle different types of operations based on their capabilities. Non-anchor nodes are optimized for read operations, while anchor nodes handle write operations and maintain ACID properties. This localized specialization improves overall system performance while maintaining reliability.

Inventive Principle:
Principle #3Local quality

2Reliability

If all database operations are routed to anchor nodes, then ACID principles are maintained, but workload distribution and node utilization deteriorate

Engineering Contradiction:
Improvetransaction atomicityVSAvoidworkload distribution
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the workload by operation type, routing SELECT operations to non-anchor nodes and INSERT/DELETE/UPDATE operations to anchor nodes. This segmentation enables better workload distribution across the distributed system, improving productivity while maintaining transaction atomicity through proper routing of write operations to anchor nodes that enforce ACID principles.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by allowing non-anchor nodes to handle a subset of operations (read operations) independently, while anchor nodes handle the critical write operations. This partial decentralization improves workload distribution and node utilization without compromising transaction atomicity, as the essential write operations remain centralized on anchor nodes.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If read operations are offloaded to non-anchor nodes, then query execution speed improves, but system complexity increases

Engineering Contradiction:
Improvequery execution speedVSAvoidoperation routing complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent segments operations based on their type (read vs. write), which provides a clear and simple routing rule: SELECT operations go to non-anchor nodes, while INSERT/DELETE/UPDATE operations go to anchor nodes. This segmentation approach improves query execution speed by distributing read operations while keeping the routing logic relatively simple and easy to implement.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the routing parameter from a single centralized anchor node for all operations to operation-type-based routing. By using the operation type (SELECT vs. INSERT/DELETE/UPDATE) as the routing parameter, the system achieves faster query execution through non-anchor nodes while maintaining manageable system complexity through clear, rule-based routing decisions.

Inventive Principle:
Principle #35Parameter changes

4Reliability

If write operations are centralized on anchor nodes, then data consistency is maintained, but node utilization and scalability deteriorate

Engineering Contradiction:
Improvedata consistencyVSAvoidscalability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the system into anchor nodes that maintain data consistency through write operations and non-anchor nodes that handle read operations. This segmentation allows the system to scale by adding more non-anchor nodes for read-heavy workloads while maintaining data consistency through centralized write operation handling on anchor nodes, thereby improving scalability without sacrificing reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by assigning different roles to different nodes based on their capabilities. Anchor nodes maintain data consistency through write operations, while non-anchor nodes provide scalable read operation handling. This localized specialization enables the system to scale out by adding non-anchor nodes without compromising data consistency, thereby improving adaptability and versatility.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS12189603B2Flexible routing of database operations accessing remote tables
Publication Date: 2025.01.07 SAP SE
  • US12189603B2 patent drawing
  • US12189603B2 patent drawing
  • US12189603B2 patent drawing

AI summary

The present disclosure provides techniques and solutions for executing requests for database operations involving a remote data source in a system that includes an anchor node and one or more non-anchor nodes. A first request for one or more database operations is received, where at least a first database operation includes a data request for a remote data object. It is determined that the first database operation is not an insert, delete, or update operation, and therefore is assignable to the anchor node or one of the non-anchor nodes. The first database operation is assigned to a non-anchor node for execution. In a particular implementation, for a particular set of requests for a database operation, once an insert, delete, or update operation is received for the remote data object, subsequent operations for the remote data object in the set of requests are assigned to the anchor node for execution.