Assistant Nodes in Director-Based Database for Transactional Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud-based database systems face challenges in maintaining transactional consistency and performance due to the use of cheaper, less reliable hardware, which can lead to server slowdowns and transactional inconsistencies as the number of database nodes increases.

Innovation Solution

Implementing a system with worker nodes that interact with director nodes to ensure transactional consistency, where worker nodes send requests to a majority of director nodes for approval before proceeding with transactions, and using assistant nodes to mitigate the effects of slowdowns by providing responses on behalf of slow worker nodes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cheaper hardware is used in cloud infrastructure, then cost is reduced, but system reliability and performance consistency deteriorate due to random slowdowns

Engineering Contradiction:
Improvesystem reliabilityVSAvoidtransaction processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments director nodes into multiple independent instances (first director node, second director node, third director node) that can operate autonomously. This segmentation allows the system to continue processing transactions even when individual director nodes experience slowdowns, as other segments can compensate and maintain overall system reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the operational parameter of director node participation by allowing transactions to proceed with approval from a majority subset rather than requiring all director nodes. This parameter change enables the system to maintain productivity even when some director nodes are slow, as long as the required majority can be reached from the remaining responsive nodes.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If more director nodes are added to ensure transactional consistency, then consistency is improved, but system complexity and overhead increase

Engineering Contradiction:
Improvetransactional consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system applies partial action by requiring approval from a majority subset of director nodes rather than all nodes for each transaction. This partial requirement maintains transactional consistency through majority consensus while reducing the complexity and overhead associated with coordinating every single director node for every transaction decision.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If worker nodes wait for approval from all director nodes before proceeding, then consistency is ensured, but system performance deteriorates due to slow nodes blocking transactions

Engineering Contradiction:
Improvetransactional consistencyVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system requires approval from a majority subset of director nodes rather than all nodes to proceed with a transaction. This partial requirement ensures transactional consistency through majority consensus while preventing slow or unresponsive director nodes from blocking the entire system, thereby maintaining higher transaction throughput.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary validation by having worker nodes send requests to multiple director nodes in advance and proceed once a majority approves. This preliminary action from a majority subset ensures consistency is established before transaction completion while avoiding the performance penalty of waiting for all director nodes.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12153563B2Assistant nodes in director-based database system for transactional consistency
Publication Date: 2024.11.26 SALESFORCE INC
  • US12153563B2 patent drawing
  • US12153563B2 patent drawing
  • US12153563B2 patent drawing

AI summary

Techniques are disclosed relating to a database system includes worker nodes operable to perform transactions and director nodes operable to ensure transactional consistency for the transactions. A worker node may receive a request to perform a transaction involving writing a record. The worker node may then issue, to director nodes of the database system, a request for information that facilitates performance of an operation for the transaction. A director node may determine whether to approve the request based on whether the operation could cause transactional inconsistency in the database system. The worker node may proceed to perform the operation for the transaction in response to receiving approval responses from a majority of the director nodes, with none of the received responses indicating a disapproval of the transaction.