Blockchain Data Management via Merkle Tree Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In blockchain systems, adding a new server to handle transaction processing is slowed down by the time required to acquire large volumes of data, and existing methods for on-demand data acquisition are not applicable when different file systems are used, potentially impairing data consistency.
Innovation Solution
A data management method where a new server synchronizes and processes data with existing servers, using an on-demand data acquisition module to retrieve necessary data from other servers, ensuring consistency and compatibility across different file systems and databases.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a new server acquires all data in advance before joining the blockchain network, then data consistency is ensured, but the time required for server addition increases significantly
Solution Approach 1:
The system performs preliminary actions by pre-calculating and storing Merkle paths and transaction data in a compressed format before server joining. When a new server joins, it can quickly acquire only the necessary data (Merkle roots and specific transaction data) rather than all data, significantly reducing server addition time while maintaining data consistency through cryptographic verification.
Solution Approach 2:
The invention extracts only the essential data components needed for server joining (Merkle roots, Merkle paths, and specific transaction data) from the complete blockchain data set. This extraction allows new servers to acquire minimal necessary data while existing servers retain the complete data set, resolving the contradiction between quick server addition and data consistency.
2Loss of time
If on-demand data acquisition is performed in file unit in storage device, then restoration time is shortened, but data consistency may be impaired when different file systems are used
Solution Approach 1:
The system changes the parameter of data organization from file-based storage to a hierarchical structure based on Merkle trees and transaction data. By organizing data according to cryptographic relationships rather than file system boundaries, the system enables efficient on-demand acquisition while ensuring consistency across different file systems through Merkle path verification.
Solution Approach 2:
The Merkle path acts as an intermediary that connects the root hash to specific transaction data. This intermediary structure allows servers to verify data consistency without acquiring complete file sets, enabling fast restoration while maintaining reliability across different file systems through cryptographic proof.
3Loss of time
If a new server acquires only necessary data on-demand, then server addition time is reduced, but the complexity of data synchronization increases
Solution Approach 1:
The blockchain data is segmented into hierarchical components: Merkle roots, Merkle paths, and individual transaction data. This segmentation allows new servers to acquire data in discrete, manageable units rather than complete data sets, reducing server addition time while the structured segmentation actually simplifies synchronization complexity by providing clear acquisition targets.
Solution Approach 2:
The system uses Merkle root hashes as feedback mechanisms to verify data acquisition completeness. New servers can quickly verify they have acquired necessary data by checking Merkle paths against known roots, providing simple feedback that reduces synchronization complexity despite on-demand acquisition.
Data Source
AI summary
A storage unit stores first data including the processing target information and second data including processing history information obtained by processing the processing target information based on a processing request; the first data and the second data include a plurality of data associated with different transactions; servers include a first server and a plurality of second servers; the plurality of second servers synchronize and hold the first data and the second data; and the first server that has received the processing request reads the first data of a processing target from a second server, processes the processing request, stores the second data including the processing history information and the first data reflecting a processing result in an own server, and transmits the second data configured to reflect the processing in the first data of the second server to the second server.


