建议和反馈

请填写你的反馈内容

问答 > 链客Talk > 问答详情
已解决

能否进一步解释一下,数据同步与存储技术是如何支持“手机即节点”这个目标的?10LK

能否进一步解释一下,数据同步与存储技术是如何支持“手机即节点”这个目标的?


2020-04-09
0
请先登陆或注册

YOUChain有链2020-05-27

手机即节点”是我们努力的方向,手机这种设备,可以对应于技术白皮书中的“轻节点”的概念。关于轻节点,我们基于一些基本的约束条件以及功能要求来考虑数据同步与存储技术对轻节点的支持,即:1. 轻节点的存储资源比较受限,无法提供大容量存储;2. 轻节点加入和离开网络可能比较频繁,在其加入网络的时候,应该要能快速跟上当前的区块高度;3. 轻节点可以参与共识投票。

 

基于上述考虑,我们从一开始就考虑了快速同步的问题。

 

首先,在区块数据结构以及共识机制上,就为快速同步的实现打下了基础,即通过CHT的概念,将已共识完成的区块的区块号与区块哈希组织起来,形成一棵树,然后按固定的区块间隔,将CHT树根存储在特定的区块头上,然后通过额外的一轮共识投票对其附加了见证。从而新的节点通过跨越式的方式,通过验证附加见证,就可以验证CHT树根是否可信,进而通过该树根就能形成对一大批历史区块的背书。

 

其次,对于较近的一些区块,可能还没有CHT对其进行背书,但是基于caravel共识的特性,我们在快速同步区块时也可以跳跃式的对区块的合法性进行验证。上述两种机制加以结合,就是我们快速同步技术的核心,其技术细节以及安全性和性能论证,感兴趣的可以进一步查阅技术白皮书 2.4、2.5、2.6等章节。

 

然后,在上述快速同步的基础上,就能让轻节点较好地实现轻量级数据存储。

 

首先,对一个新加入网络的轻节点来说,我们还提供了轻同步的模式,轻同步跟快速同步原理上一样,不同点在于对较旧的大量历史区块,可以不同步其数据以及世界态,而只在同步到最新的若干区块的时候,才会同步相关的数据。这就极大地减轻了轻节点对历史数据的存储负担。

 

其次,在轻节点参与共识之后,是需要持续存储数据的,但是随着区块的增长,我们也有定期删除一些对轻节点来说不必要继续存储的旧数据,从而轻节点的数据存储量是远小于全节点的。


投一票
评论(0)
赞赏(0)

求助中

解决了这个问题,预计可以帮助到

  • 0
  • 3
  • 1
  • 3
  • 5
邀请

感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励