Composite Transaction Validation in Distributed Databases
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed sequential transactional databases, validating and committing groups of related transactions is resource-intensive, and when one transaction fails, the entire group may fail, leading to wastage of computing and communication resources.
Innovation Solution
A method involving the generation of a composite transaction as a data structure referencing each request transaction, stored in a distributed hash table, where submission to the database only occurs upon receipt of acceptance indications from all target transacting entities, thereby avoiding unnecessary resource consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If groups of related transactions are submitted for validation and committing to the database, then transactional outcome can be achieved, but resource consumption increases significantly
Solution Approach 1:
The system performs preliminary actions by notifying target transacting entities of requested transactions before actual submission to the database. This allows early detection of potential failures and avoids wasting resources on transactions that would inevitably fail, thus resolving the contradiction between achieving reliable transactional outcomes and reducing resource consumption
2Productivity
If all transactions in a group are submitted for validation, then complete transactional processing is achieved, but resource wastage occurs when transactions fail
Solution Approach 1:
The system performs preliminary validation by notifying target entities before formal submission. This preliminary action filters out transactions that would fail, allowing only viable transactions to proceed to full processing and database commitment, thereby maintaining productivity while eliminating resource wastage from failed transactions
Solution Approach 2:
The system extracts and processes only the necessary subset of transactions that have received acceptance indications from target entities. By taking out the failed or rejected transactions from the processing pipeline before database submission, the system avoids wasting resources on unnecessary validation and committing operations
3Reliability
If transactions are communicated to multiple miner components for validation, then distributed validation is achieved, but communication overhead increases
Solution Approach 1:
The system performs a preliminary notification step to target transacting entities before initiating full distributed validation by miner components. This preliminary action filters out transactions that would be rejected, reducing the number of transactions that need to be communicated to multiple miners, thus maintaining distributed validation reliability while reducing communication overhead
Data Source
Figure 1~2
Figure 3
AI summary
A computer implemented method of transaction validation of a plurality of request transactions for submission to a distributed sequential transactional database, each request involving a target transacting entity, the method comprising: generating a composite transaction as a data structure including a reference to each request transaction, the composite transaction having an identifier; storing the composite transaction in a distributed hash table based on a hash for the composite transaction; submitting the plurality of request transactions to the database in dependence on receipt of a response indication from each of the target transacting entities indicating that the target transacting entity accepts the transaction.