购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

区块链是一个非常复杂且不完美的数据库

区块链是一个非常复杂的数据库,尽管现在它经常不只用来指数据库。为什么这些复杂的数据库引发了一场全球变革呢?为了理解这个问题,我们可以思考一个类似的例子。当然这个例子不完全恰当,因为它融合了许多不同类型的数据库,但它有助于阐明区块链的性质。

电子表格(spreadsheet)是一个典型的低级数据库。你可能已经在里面手动输入了数据,稍后会用Ctrl+F组合键检索。如果你想使用其他人制作的电子表格中的数据,事情就会变得更加复杂——这时就需要数据库出场了。一个典型的数据库看起来和你的电子表格没什么区别,它可能有100列、1000行,上面还堆栈了100个类似的电子表格。[技术小提示:除了使用Ctrl+F组合键从单个单元格中检索数据,还能用某一版本的结构化查询语言(Structure Query Language)删除单元格分组中的三维横截面数据。]

在过去20年里,数字数据在数量和价值上都发展迅猛,原因显而易见,本书中均有分析。但是在同一时期内,数据库的发展几乎原地踏步,我们在使用数据时仍然沿用20世纪90年代以来的编程逻辑。

数据库的问题源于数据输入的端点一般无法得到验证。一个职员可以把错别字输入电子表格,任何有电子表格访问权限的人都可以随意操纵数据。数据库的整体结构也趋于松散,因为它们必须包含丢失的数据和不兼容的数据点。这些错误的数据分散在使用数据的每个流程中。

由于我们的工资情况、财产所有权资料、医疗记录、犯罪记录以及整个网络生活都记录在数据库中,数据错误所引发的后果可能是毁灭性的。即使对于不那么重要的数据,数据库的局限性也容易产生严重的后果。要么机器学习算法无法运行(因为它们无法记录错别字),要么不准确的数据将会导致错误的分析。

为解决这些问题,我们倾向于投入更多的人力和资源(通常是重复的信息)。人们认为,如果一个数据源有泄露风险,那么要使用约5个不同的数据源来进行交叉验证。这就是为什么:①你必须经历重重关卡,才能验证身份,登录不同公司的网站;②银行和信用卡公司需要几天时间来核验你的交易信息;③供应链在装运一个集装箱的过程中,必须将一堆可变文档传输上百次。

区块链是一种完全不同的数据库,它避免了数据重复。区块链类似于电子表格堆栈形成的数据库,不同的是,它的区块就像是更大堆栈中的单个电子表格,而每个区块之间都由一条“链”相连。一条条链可以看作是一个个加密锁,将这些数据块永远地保存在恰当的位置上。

把电子表格堆栈视作一个数据库,当你运行它时,可以说你就在为区块链(而不是一个传统的数据库)做贡献。在区块链中,当你在自己的电子表格中录入新的数据时,你也在请求将该数据添加到人人共享的电子表格总表中。因此,参与制作电子表格的每一个人都会检查你录入的数据。当所有人都对该电子表格的准确性达成共识时,该电子表格就能添加到堆栈中,而整个过程会继续重复。

在现实的区块链中,电子表格就是区块:数据由网络和机器自动添加,而不是由人手动添加的。数据的准确性通过共识机制验证,而不是由公众舆论来验证的。

整个过程中有两点非同寻常。首先,这些电子表格或区块中的信息是准确的:没有打字错误、误差,也不存在主观性,有的只是原始的事实。其次,任何这种电子表格或区块数据都不能以任意方式被随意删除、复制或质疑。这两个特性是由区块链整体的透明度和去中心化所决定的。

而这也是区块链的精髓。当然,在这一点上我们忽略了许多技术细节,但中心概念是正确的。然而,即便上述两个特性极为重要,它们也无法解释为何技术专家声称区块链革命即将到来。 oyKVCaQFCGlz8kP9/ReQuOZkzsM84xW68ssmNVrlEOUMZDVJL2ksxjTJ+3Zlloer

点击中间区域
呼出菜单
上一章
目录
下一章
×