# Research on Blockchain Data Availability and Storage Scalability
## 4 Data Availability Measurement Model for Blockchain
### Dammb  
The performance of data availability varies with different node types, and so, there are also differences in the DAMMBs constructed. Below, the nodes are divided into full nodes and degraded nodes, and a DAMMB is constructed separately for each type. 1. Full nodes store complete block data, and only need to obtain the target data locally within a time limit. When the data acquisition time \(T\) is less than or equal to the time limit \(t\), a full node obtains all target data, making the data availability 100%; when the data acquisition time \(T\) is more than the time limit \(t\), the data availability is expressed as the ratio of the already retrieved target data volume to the expected target data volume. The expected target data volume is \(N\) and the local data retrieval speed is \(v\), and so, the target data volume retrieved within the time limit \(t\) is \(v\times t\), accounting for the expected target data volume, which is \(\frac{v\times t}{N}\times 100\%\). In summary, the data availability of full nodes \(A_{\textit{fnode}}\) is represented thus: \[A_{\textit{fnode}}=\left\{ \begin{array}{ll}100\%&T\leq t\\ \frac{v\times t}{N}\times 100\%&T>t\\ 0&\text{notobtained}\end{array} \right.\] (1) when the full node only obtains a single block, there are two kinds of acquisition cases: obtained (100%) and not obtained (0). 2. Degraded nodes store partial block data, and their data availabilities depend on other nodes. Therefore, a DAMMB for degraded nodes should not only consider the availability of target data, but also consider the impact of P2P network performance on the probability of obtaining target data. In P2P networks, the online behavior of nodes is independent. Assuming that a node is online with probability \(p\), the target data availability \(A_{\textit{files}}\) stored on it is denoted thus: \[A_{\textit{files}}=\sum_{i=m}^{n}C_{n}^{i}p^{i}(1-p)^{n-i}\] (2) where \(n\) is the number of nodes and \(m\) is generally taken as 1, meaning that at least one node storing the target data can be obtained when it is online. This formula assumes that nodes are online with probability \(p\) at any time [23]. A degraded node's acquisition of target data is mainly divided into three stages: (1) Requesting information to be transmitted in the network, (2) retrieving target data across full nodes, and (3) having data transmitted in the network. If the required times for these three stages are \(t1\), \(t2\), and \(t3\), then the data acquisition time \(T=t1+t2+t3\). When a degraded node requests data, the request information is broadcasted to the network, and other nodes receive the request information and search for the target data. If the node stores the target data, it returns the data; if not, it continues to send the request information to other nodes until the data is found or the request times out. The nodes that continue to send request information to other nodes are called routing nodes, and the number of routing nodes is called hops. During the data transmission process, when the data passes through a routing node and the routing node is online, the data transmission can be completed. If the onlineprobability density of a routing node \(r\) is \(f_{r}(t)\), then the online probability of routing node \(r\) during data transmission is:  
\[\int_{\alpha_{r}(t)}^{\alpha_{r}(t)+\Delta t_{r}}f_{r}(t) \tag{3}\]  
where \(\alpha_{r}(t)\) represents the time when the data arrives at the routing node \(r\) and \(\Delta t_{r}\) represents the time interval at the routing node \(r\) from the moment the data is received to the moment it is forwarded. The online probability of all routing nodes is:  
\[\prod\limits_{r=1}^{s}\int_{\alpha_{r}(t)}^{\alpha_{r}(t)+\Delta t_{r}}f_{r}(t) \tag{4}\]  
In addition to the online probabilities of routing nodes, network performance metrics also include reliability, network topology, and network security.