技术视野 | 维基链扫链服务如何解决区块链存储的弊端
维基链WICC 2019-08-19 16:30:48发布
36859
摘要:如我们所知,区块链相当于一本“全球账簿”,那这个账簿是如何存储的?或者换句话说,这个账要记在哪里呢?  

“ 

区块链的数据存储机制及结构是关系到区块链数据分布、记录、读取等操作行为的基本环境,区块链技术重构了数据世界的律法,而它的底层数据存储机制则是关系到区块链运作的稳定性、安全性和可扩展性“不可能三角”的实现途径。

如我们所知,区块链相当于一本“全球账簿”,那这个账簿是如何存储的?或者换句话说,这个账要记在哪里呢?

Storage

存储模式

区块链包含N个随时间排序的块,每个块都有一个指向前一区块的指针,所有块通过这个指针形成一个链,所以称为区块链。第一个块称为创世区块,如图:

从上图可见,区块链由多个区块组成,每个区块由区块头和区块体组成,每个区块头包含区块元信息,同时包含一个指向前一个区块头哈希值的指针,这个指针是防止区块链被篡改的关键信息。

区块体包含了比特币的交易信息,第一个交易是特殊交易,是奖励给挖矿节点的酬劳,这是唯一一种可以产生比特币的方式,也是比特币的发行方式,其余的交易都是转账交易,即比特币从一个地址支付给另外一个地址,这也是实现比特币价值转移的唯一方式。因此,比特币只有发行和转账两种交易,比特币产生以后只能从一个人转账到另外一个人,而不能凭空消失。

所有交易记录都存在区块里,每一区块包含了前一区块所有交易的Hash值,依次按照此方法记账,则最新的区块总是间接包含了所有之前的账单信息。

所有这些区块组合起来就形成了区块链,这样的区块链构成了一个容易验证(只要验证最后一个区块的Hash值就相当于验证了整个账本)、不可更改(任何一个交易信息的更改,会让所有之后的区块Hash值发生变化,这样在验证时就无法通过)的总账本。

Defect

模式弊端

区块链这种存储模式的弊端主要有以下几点:

1. 无法快速拿到某个地址的交易存在哪些区块和交易的详情;

2. 无法对交易都区块的存储无法进行快速的对地址的统计和分析;

3. 无法自动获取每个地址在链上有交易信息;

4. 无法对外部的大量请求进行处理。

Solution

扫链服务

由于现有的存储模式存在前述弊端,所以维基链采取“扫链服务”来解决此类区块链存储的问题,我们把区块链中的数据进行分析和处理存储到关系型数据库中,进行结构化处理:

区块信息

交易信息

这样的设计能够快速地获取某个地址的区块和交易详情,能够处理中心化高并发获取链上的数据,获取某个地址是否有新交易。

目前,维基链已经把整个扫链项目开源:

https://github.com/WaykiChain/wicc-wallet-svcs

(请将网址复制至浏览器进行访问)

点击进入招聘详情>
微信扫一扫
关注区块链新金融
扫一扫
下载数链APP
内容合作/商务合作:
gxcj@gongxiangcj.com
联系电话:
021-31128751