# Comprehensive Review of Storage Optimization Techniques in Blockchain Systems
## 3 Background
### Blockchain Storage Architecture Model  
In a blockchain storage system, each node maintains a complete copy of the blockchain data, which plays a crucial role in ensuring data security and integrity across the network [51]. However, the inherent redundancy of blockchain storage introduces a number of challenges related to storage efficiency. The structure of the blockchain storage model is depicted in Figure 3. This model can be conceptualized as consisting of two layers: the network consensus layer and the data layer [52]. The blockchain network operates on a peer-to-peer (P2P) network architecture for data transmission [53], where each node is considered equal. When a miner node computes the correct nonce value (a unique random number used to ensure secure communication and data integrity), it creates a new block and broadcasts it to the network. Upon receiving the block, other nodes verify its validity. If the block passes the verification process, these nodes append it to their local copies of the blockchain. Figure 3: Blockchain storage structure model. The network consensus layer is the core of blockchain technology, achieving consensus on the blockchain state across all nodes through the P2P network architecture, message propagation mechanisms, data validation, and consensus mechanisms [54]. The P2P network ensures equality and decentralization among nodes, while the message propagation mechanism enables new blocks to be rapidly broadcasted to all network nodes for verification after creation. The data validation mechanism allows any node to monitor and verify broadcasted transactions and new blocks at any time, ensuring legitimacy and maintaining the transaction pool. The consensus mechanism enables nodes to solve complex mathematical problems by competing for computational resources; the node that solves the problem first gains the right to record the block and receives an economic reward, thus preventing data tampering and double-spending and securing the blockchain system's consistency and security. The data layer in blockchain consists of several key components and technologies that ensure data integrity, security, and verifiability [55; 56; 57; 58; 59]. First, data blocks store transaction records, and each block includes a timestamp to record the exact time of its creation. The hash function generates a unique hash value for each block, which helps verify data integrity and enhances data immutability under the blockchain's consensus mechanism. Blocks are linked in a chain structure, so altering any block affects the hash values of all subsequent blocks, thereby ensuring data security. The Merkle tree, an efficient data structure, is used to verify transaction data within blocks, allowing for quick verification of whether a specific transaction is included in a block. Cryptographic techniques, through public and private keys, safeguard data privacy and security. Together, these components form the data layer of the blockchain, supporting the decentralized characteristics of the system and providing a solid foundation for the stable operation of the blockchain network. Notably, the Merkle tree serves as a critical technology within the data layer, playing a pivotal role [60]. The Merkle tree organizes and verifies transaction data within a block using a tree structure. Its leaf nodes store the hash values of transactions, while parent nodes store the hash of their child nodes' hash values. This structure enables efficient and reliable verification of whether a specific transaction exists in the block without examining all transaction records. Figure 4 illustrates the block structure within a blockchain. The block header includes fields such as the version number, timestamp, difficulty target, nonce, previous block hash, and Merkle root. The block body organizes transaction data through a Merkle tree. In this structure, the leaf nodes of the Merkle tree (e.g., H1, H2, H3, and H4) store the hash values of individual transactions (e.g., TX1, TX2, TX3, and TX4).