您的位置:首页 > 其它

从数据记录发展看区块链(从零开始学区块 197)

2017-09-08 00:00 429 查看
区块链的发展实际上是数据记录发展历史的必然,今天我们来聊聊在数据记录发展的历史,一窥这种螺旋式上升的趋势

重发此文,昨天编号搞错了

数据(data)是对客观事物的符号表示,是用于表示客观事物的未经加工的原始素材,如图形符号、数字、字母等。或者说,数据是通过物理观察得来的事实和概念,是关于现实世界中的地方、事件、其他对象或概念的描述。数据记录是指对应于数据源中信息的一组完整的相关信息。

在计算机发明以前,人类就一直在探索和发展数据记录的各种方式,从最早的结绳、壁刻到后来的竹简、纸质印刷,可见数据记录对于人类的重要性。数据记录一直在追求便捷性、可传播性、可鉴权性,造纸、印刷、印章这些古老的发明分别对应了以上三种数据记录上的追求。

到了计算机时代,数据记录在便捷性和可传播性上产生了质的飞跃,特别是PC普及之后,人们可以很轻易的记录各种数据和传播数据,各种数字采集设备和网络普及后数据记录更是上了一个新的台阶,在这个过程中数据记录可鉴权性一直困扰着人们,为了保障便捷性、传播性、可鉴权三者的统一人们想出了各种办法,主要分为三个阶段

程序与数据一体阶段

在磁带和穿孔卡片作为数据存储的年代,那时为了保障程序运行和操作方便,程序(代码)与数据是一体的,完整的程序包含代码段和数据段,这种设计影响到后来的各种可执行程序结构,每段程序都有自己专属的代码段和数据段,通过代码实现对数据的控制和管理,程序本身既是代码也是数据。

这种设计的好处是数据专属使用,拷贝程序即可传播,程序的作者就意味着对数据的所有权,在数字世界里初步实现了可鉴权性,你可以通过编程记录、管理、运算各种数据,并将其传播出去,通过程序运行其他人可以获取数据记录和运算后的结果。

当然这种设计的弊端也很明显,程序与数据一体造成数据使用的不便,任何的数据修改都需要修改程序,重新加载磁带和穿孔卡片,所以这个阶段存在的时间很短,也催生了数字世界上一次伟大的变革,程序与数据分离,并一直沿用至今。

程序与数据分离

程序与数据分离后,逻辑更加清晰,程序可以加载不同的数据形成不同的计算结果,对于同样的数据也可以采用不同的程序进行处理,提升了数据的易用性,修改程序不再需要重新打包数据,两者也可以分开来进行传播。但是程序与数据的分离也意味着两则所有权的分离,程序和数据分别有自己的鉴权方式。

为了方便数据的管理,人们发明文件系统以及后来的数据库系统,这些都是为了更好的管理数据记录的方式。通过文件系统,人们可以统一管理各种代码和数据,方便了数据的使用和传播,通过数据库以及后来的关系型数据库,人们对数据进行结构化的管理,提升了数据搜索和利用效率。

随着管理的数据越来越多、越来越重要,人们发现了数据记录上可复制性与可鉴权性上的矛盾,有些数据不能随意传播,他们的使用必须在可鉴权的范围内,由于那时网络并不普及,数据的鉴权主要依赖硬件设备的绑定,就是数据被限制在某一台具体的物理设备上,相信年龄大的朋友都有过办理某个具体业务要去某台具体机器上的经验。

期间还经历了主机阶段,那时代码与数据存在于一台大型设备中,这台设备统一管理数据与代码,通过用户系统,对不同用户进行不同的数据鉴权。

虽然程序与数据分离了,但是对于某些需要鉴权的敏感数据,数据与物理设备却没有分离,直到网络发展后,这个矛盾日益突出,为了解决这些矛盾,人们自然想到类似主机的中心化的数据记录与处理方式。

中心化阶段

中心化概念其实并不是最早网络发展的目标,在网络发展之初,Netware网络操作系统和UINX等诞生之初都是基于对等网进行的设计的,所谓对等网就是每个节点在网络结构上是平等,可以相互提供数据,这种结构有利于分布处理和分布控制的实现,最早互联网的设计之初也是朝着这个方向努力的,中心化并不是网络发展的初衷。

但是,由于对等网的方式不利于数据的管理,业务实现难度大,所以人们设计出客户/服务模型,于是统一管理数据的节点就成服务器,使用数据的节点成了客户端,这种完全参照人类社会的组织方式解决了数据记录上传播性、可复制性、可鉴权性的矛盾。

数据的鉴权转化为对客户的鉴权,通过中心化的服务器可以有效控制数据记录的复制和传播,同时对数据进行鉴权,通过中心化的方式数据可以按需在不同的物理设备上流动,解决了数据被限制在某一台物理上的问题。

由于这种基于客户服务的中心化方式,可以很好解决以前遇到的各种问题,事实也证明这种方式的结构简单易于业务实现,于是我们看到各种以数据服务呈现的方式,中心化渗透到我们生活和业务的个个方面,通过中心化我们可以方便的获取时间、获取地图数据,实现交易等,但很少有人去思考其中的问题。

虽然我们目前正处于中心化数据记录发展阶段,但是有识之士已经发现中心化数据记录方式的弊端,中心化意味着有一台设备或一组设备具有所有数据记录的全集,而客户端永远获取的是数据子集,这不符合网络设计之初的对等概念,包括现在也有前瞻的观点认为互联网越来越中心化不利于互联的发展等等。

所有事物都是螺旋式上升的,中心化的确解决了很多问题,但这绝不是数据记录发展的最终形态,p2p网络的发展、密码学的进步、去中心化的展望使我们看到了一个既符合网络设计初衷,又符合数据记录便捷性、可复制性、可鉴权性三者统一的全新发展方向,这个方向就是,区块链!

关于本文区块链可以让网络恢复其本来的设计目标,虽然这很难,但是容易的事有啥意思呢。您也可以将本文分享出去让更多人关注,您的支持和鼓励是我最大的动力


客观、公正、专业、理性

相关内容来看一看PB级分布式存储Ceph(从零开始学区块链 154)
一种改进的拜占庭容错算法(从零开始学区块链 45)
分布式系统φ累计失败检测算法介绍(从零开始学区块链 99)
Paxos分布一致性算法简介(从零开始学区块链 39)
图解Raft算法原理(从零开始学区块链 46)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: