曹锋博士:区块链是数据库的终结还是新生

Unknown view 35 2016-4-29 03:36
share to
Scan QR code with WeChat

区块链是数据库的终结还是新生

--- 区块链、数据库、虚拟现实和电影

4月19日,我以共同发起人的身份参加ChinaLedger中国分布式总账基础协议联盟的发布会。晚上,突然收到了我博士导师周教授的电话。原来他正在组织一个学术论坛,邀请国内外数据库学术界的专家和学者,希望引起学术界对区块链技术的关注,并对这样一个新技术从数据库研究的角度进行研讨,希望我能在此次会议上进行演讲。周教授堪称是国内外数据库研究的领军人物,一直以来持续保持着对数据库领域新技术、新方向的高度前瞻性。例如,他于2013年率先成立了国内第一个云计算与大数据研究中心,以及众多国际领先成果。

导师的邀请与我目前关注和研究的方向不谋而合,一直以来都想把我对区块链与数据库的思考整理成文章,由于工作的原因这篇文章直到今天才完成!也算是对导师组织的区块链与数据库学术研讨的一个暖场,同时向导师独到的学术洞察致敬。

IBM是最早介入区块链研发的国际大公司之一,例如去年大家熟知的IBM和三星的区块链合作项目以及Linux/IBM联合项目。作为IBM区块链技术中国区的负责人和专利评审委员会的联合主席,我和团队也在去年10月就提交并获得区块链的美国专利。这是中国人获取的第一个区块链国际专利。紧接着12月,我们组织了IBM全球Fintech峰会及内部闭门会议,邀请IBM全球13大研究院在区块链相关领域的院士, DE, VP和CTO齐聚上海进行为期2天的研讨。讨论的结果是公司在今年迅速将区块链上升为公司全球战略。而在这个峰会中,大家争论的核心问题之一就是,区块链与数据库到底是什么关系?区块链与分布式数据库的本质区别是什么?今年2月,我在旧金山湾区参加WSDM 2016和微软全球技术领袖峰会,已经有团队开始研究基于区块链的数据分析。最近Oracle也开始关注到区块链与数据库更进一步炒热这一话题。

10余年前,我从事的第一份工作就是在Sybase开发ASE数据库,负责SQL查询优化模块。ASE大家可能不太熟悉,其实它就是大名鼎鼎的微软SQLServer的前身。当时国内的数据库市场基本被外资垄断,国内仅有的几个数据库产品技术上都不够成熟。Sybase是当时国内为数不多能真正让中国员工有机会接触到国外一流数据库底层代码的公司之一。这段底层编码经历,为我后来在IBM负责互联网金融、人机大战等众多大型项目打下了坚实的基础,也让我有机会从更底层理解数据库和区块链的关系。

数据库在IT界,其实一个特别古老的研究领域。从最初的文件系统,到后来的ER实体关系模型。实体关系模型的提出催生了一系列伟大的数据库公司和软件,例如IBM的DB2, Sybase,Oracle,微软的SQLServer,MySQL等等。以及,由此引发了传统数据库的三大成就,关系模型、事务处理、查询优化。再到后来随着互联网的盛行,MangoDB为典型代表的NOSQL数据库崛起。数据库技术本身在不停的演进,且一直是热门的方向,也包括XML为代表的半结构化,基于文本、语音和图像的非结构化数据处理等。 比如大家最近几年常说的大数据,其实就是数据库研究的一个小分支。

讲数据库与区块链的关系,我个人认为这和虚拟现实与电影的关系有些类似。电影是一个更加古老的产业。从最开头的无声电影,到黑白电影,到彩色电影,再到现在大家经常看的3D电影、IMAX电影。如今的电影产业已发展的超乎了所有人的想象。特别是电视机的出现,大家以为是电影产业的终结。但事实上,电视机的发展跟电影走了完全两个不同的维度。电影产业不断地积极吸纳新的技术,给观众带来全新的观影体验。而下一个可能会被电影纳入的新技术也许就是虚拟现实。虚拟现实技术既是挑战又是机会,可以释放艺术家所有的想象力,允许他们创造出此前不可能存在的世界。就像电影《盗梦空间》一样,艺术家可以想象出一个反重力的世界,并把这个世界带到观众面前。也就是说电影可以依靠技术达到全新的视觉空间和享受。

区块链与数据库的关系看起来也是这样的一种关系。从数据库技术演进的过程可以发现,它有这样的一种源源不断的生命力去满足新的业务需求,创造出各种独到的数据处理技术。可以说,每一代的数据库技术革新都是由于现实的需求所造成的。比如从最开头的文件系统为什么会进化成ER实体关系模型,其实是由于金融银行的发展。大家对快速记账,支持高并发数据写入和访问有了非常现实的需求,从而导致了实际关系模型的产生以及快速的发展。再后来,NOSQL出现,实际上是由于互联网的快速发展对数据库提出了新的需求。互联网项目开发的时间非常紧张,项目需要快速迭代。完全没有办法忍受原来传统的基于SQL数据库的开发方式。因为在实体关系模型里,数据库表的设计需要根据业务逻辑定义得非常准确。而互联网项目的快速迭代特点注定了它的业务逻辑必须不断的快速调整。如果一切都从头再设计数据库表格,再写中间的访问层,就会造成中断,大家无法忍受,所以导致了NOSQL的出现。大家可以不需要懂SQL语句,就可以写出来特别好的这个数据库应用程序。当然NOSQL所支持的,还有更多更加丰富的内涵。比如,他是以快速的数据写入操作为主,而并不需要有太多的更改和删除操作等。本质上,我们可以认为整个互联网就是一个大的数据库。

问题在于事物是不断发展的,当我们通过NOSQL数据库、云存储等技术解决了互联网海量数据的处理问题后,下一个问题接踵而至。那就是如何以一种规模化的方式解决数据真实性和有效性的问题?其实这种真实有效的需求也非常容易理解。某种角度,好像我们人类对于食品的需求一样。最开始人多粮少,食品匮乏,首先要解决让所有人都有机会吃饱的问题,也就是食品规模化的问题。然后有一天,我们发现大家都可以吃饱了。因为食品的生产,尤其是肉类生产,已经是一种工业化运作的方式。这个时候大家反过来,去追求有机食品,追求这些回归自然,回归天然的食物。这个时候就产生了新的有机食品工业。数据库的发展也是一样。当我们通过ER实体关系模型、通过NOSQL,能很好的解决数据存储和数据访问的Scalability问题。接下来大家要解决和关心的问题,那一定是真实性、有效性的问题。就像我们现在对天然和有机食品的需求一样。

所以以区块链为代表的对数据真实、有效、不可伪造,无法篡改的数据组织需求,相对于现有的数据库来说,是一个新的起点和新的要求。我越来越清晰的感受到,数据库与区块链融合的趋势几乎无法阻挡。就像电影的发展已无法阻挡的向着虚拟现实技术发展一样。

从数据库的角度,区块链其实是一种新型的数据组织方式。与历史发展惊人的一致,金融业再一次成为这种新型技术的最初倡导者和使用者。大家对于数据的真实性、不可伪造和篡改的需求,很有可能引发和造就若干个区块链数据库公司。由于数据库在IT产业的基石地位,可以推断区块链对IT界的影响可能会非常深远。

未来已来,区块链的金融应用仅仅只是开始。

后记:由于很多非计算机专业的朋友指出我上一篇《区块链重构大数据改变一切》太学术,无法看懂和理解,所以这篇并没有从纯技术的角度来阐述区块链与数据库的关系。而是更多地采用类比,希望能在区块链方面做一些推广和普及的工作。如有不当之处,敬请批评指正。

btcfans公众号

Scan QR code with WeChat

From the Internet
Disclaimer:

Previous: 基于区块链的收益平台Stem宣布他们获得了450万美元的融资 Next: 简讯:Steam开始接受比特币

Related