首先我们必须了解清楚两个概念:
而无论是区块数据还是状态数据都是由我们的区块链节点使用和储存的,区块链节点是一个程序,允许在我们的电脑,虚拟机等上,而多个节点通过网络的方式进行链接最终形成了完整的区块链网络。
而这其中区块链节点的数据存储最普遍的方式就是存入我们的磁盘中间,而我们的区块链不会直接的访问我们的磁盘,而是通过特定的数据库如LevelIDB,RocksDB,MySQL等独立和分布式的数据库来操作我们的数据(目前最重要的另外一个技术就是加入缓存区域,减少磁盘的寻道时间,加快区块链对磁盘数据的使用和存储),而相比于直接访问磁盘,用数据库作为中间媒介的特定数据访问模型对区块链节点更加的友好。
所以数据存储的过程可以解释为
解释:链上数据是直接或者间接由区块链共识产生的数据;
1.而回到我们的问题,我们会发现区块链中间的区块数据和状态数据并不是凭空的产生的,区块中间的数据是因为不同节点之间的交易数据存储然后被广播到所有区块链节点的共识状态,所以区块数据也是因为共识而产生的数据之一;
2.而反观状态数据,由于交易的产生,共识的一致,最终会引起状态的改变,所以在此角度中间,状态数据也一样可以被认为是链上数据;
总结:所以回到最初的问题,区块链数据可以看成为共识交易产生的数据,是链上数据的一部分!
联系客服