主页 > imtoken客户端 > 【深入】王涛:区块链+数据库,底层技术的融合会不会带来更大的爆发?

【深入】王涛:区块链+数据库,底层技术的融合会不会带来更大的爆发?

imtoken客户端 2023-08-21 05:09:27

莱特币和比特币是通用货币吗_比特币底层技术是什么_比特币是金莱特币是银

火球财经

懂区块链更懂你

莱特币和比特币是通用货币吗_比特币底层技术是什么_比特币是金莱特币是银

莱特币和比特币是通用货币吗_比特币底层技术是什么_比特币是金莱特币是银

比特币是金莱特币是银_比特币底层技术是什么_莱特币和比特币是通用货币吗

全文:6584字

预计阅读时间 6 分钟

王涛认为,区块链的未来是去中心化协作,而不仅仅是一组交易。

近日,在掘金技术社区主办的沙龙上,王涛分享了《区块链技术VS数据库技术:颠覆还是融合》的话题。 曾就职于IBM DB2数据库北美实验室,作为IBM DB2全球顶级技术专家组成员,参与IBM下一代大数据平台的架构规划。 精通数据库内核和架构,是数据库领域的国际顶级专家。

以下为王涛演讲稿汇编。

区块链所说的“3.0阶段”,其实更偏向于业务。 从数据库的角度来看,现在区块链的底层技术还有很大的提升空间。 一开始,我们只是做了一个数字货币。 通过增加合规性,我们可以在其上运行一些业务。

然而,区块链的底层链,包括性能、处理能力和通用功能,距离商业化还有很长的路要走。 如果把区块链技术的未来想象成一个10分的东西,我们认为目前的区块链功能仅仅停留在1-2分的水平,还有很长的路要走。

从技术角度看,区块链技术实际上是一种特殊的分布式多活数据库。

区块链技术的具体演进方向是什么?

方向一:从专业化到泛化的演进。

现在玩以太坊和比特币是一套专为特殊用途而设计的软件。 比特币是专门为转账设计的,以太坊是转账+智能合约。 一般来说,你可以用JAVA和C++程序来写任何逻辑。 现在区块链基本上是一套专为专有系统定制的软件,而不是通用软件。

莱特币和比特币是通用货币吗_比特币是金莱特币是银_比特币底层技术是什么

方向二:从碎片化到标准化。

区块链最重要的是协议,而不是软件。 只要知道比特币之间的交互协议比特币底层技术是什么,就可以使用专门为比特币设计的矿机,也可以自己写一套东西,只要有协议就行。 现在很多人都在做公链,每条公链都是独立的通信协议,会影响链与链之间的通信。 跨链机制和侧链机制可以用来打破这些壁垒。 相信未来整个协议层可能会有更多的通用化和标准化。

方向三:产品化、模块化不断加强。

现在基本上大部分数据库都模块化得很好。 比如你要使用特殊的加密算法,把原来的库换成这个加密后的库就可以了。 这就是未来区块链需要改进的地方,就是框架可以做到更好的模块化。

方向4,性能和可扩展性。

针对分片、内存计算、磁盘结构等进行优化,从单点磁盘结构到多分片点对点多活架构,让性能发挥到极致。 这一块需要在技术上不断突破,才能实现性能的提升。

区块链技术行业现状:

1、区块链架构尚未统一。

2、区块链开发语言极其混乱。

3、需求多样,没有标准的使用范式。

大家在学习区块链技术的时候,成本是非常高的。 要构建一条链,您需要学习一种新的开发语言。 这个东西可能不流行,你需要换一种新的语言。 这会造成很大的问题。 传统的大型数据库,大家都用SQL,比较规范。

另外,现在区块链基本上没有真正的杀手级项目,也没有什么业务必须用区块链来完成,所以大家都想尝试一下,用区块链来玩玩。 玩,试医疗,试物流,试物联网,哪些行业真的可以被区块链颠覆,核心价值在哪里,如何用区块链来做到这一点? 这些问题都是未来行业需要解答的,这些点暂时是薄弱环节。

一、区块链与数据库的相似点

莱特币和比特币是通用货币吗_比特币底层技术是什么_比特币是金莱特币是银

特点:共识机制、存储机制、智能合约、分片、应用开发接口、安全。 这些其实都是区块链底层的一些通用模块,对应数据库,有对应点吗?

共识机制。 在以往的数据库架构中,所谓的一致性控制都是有一个master节点,所有的写操作都会被复制到另一个存储节点进行高可用配置。 在区块链上,这个系统可以扩展,假设主节点不是固定的,而是每 10 分钟更换一次。 在主节点MySQL中,主节点每10分钟更换一次,这在某种程度上是相似的。

比特币是金莱特币是银_莱特币和比特币是通用货币吗_比特币底层技术是什么

不管是所谓的POW和POS共识机制,其实质都是在一段时间内谁的信息占上风。 在这个数据库中,主节点就是主节点。 没关系,这只是执行的问题。

存储机制。 在区块链中,存储都是关于链本身的。 大家有兴趣可以看看比特币和以太坊。 除了链本身,还有类似的状态存储。 比如这个链很长,可能有100GB,而且涉及到一个账户被多次修改,而链本身其实就是一个事务日志,记录每条记录的修改方式,显示形式必须包含在一个数据库,并且必须嵌入一个小型数据库以将最终结果放入其中。 这个系统对应数据库,无非就是数据库存储+事务日志。

智能合约。 它是一个用户定义的托管程序。 数据库中的宿主程序称为存储过程。 在区块链中,本质是一样的。 最大的区别在于安全性。 调用数据库中的存储过程,记录最后的结果,但是在区块链中,因为不可信任,所以调用被记录下来。

碎片化。 大多数区块链项目不成熟且不稳定。 数据库分片是一个很成熟的东西。 在区块链行业比特币底层技术是什么,由于分片之间的交易难以保证,所以大部分区块链公链项目都是非常Sharding的,很难做好。

应用程序开发接口。 在MySQL或者Oracle中使用SQL,无非就是写一个应用程序,丢到系统里,让别人调用。 而区块链技术也需要统一的接入方式,才能更好的实现普适应用。

安全机制。 在数据库中,有一组定义谁可以读写表单,但在区块链中,安全是行级安全。 比如在比特币中,相当于全局可读,只有输入才能写入安全配置。

从这些角度来看,区块链和数据库世界有很多共同点。

比特币是金莱特币是银_莱特币和比特币是通用货币吗_比特币底层技术是什么

数据库共识方法。

所有的读写操作都是主节点,主节点会将信息传递给两个从节点。 在区块链中,它的主节点会随时发生变化。 例如,比特币每 10 分钟出一个块。 这就是 POW 自我验证。 谁先计算出这个数字,谁就广播。 我算数。 我不相上下。 这就是大家争夺主节点的过程。

在区块链的世界里,主节点随时跳转。 当每个节点认为自己成为主节点时,会在一段时间内接收到新的信息,并通过区块的形式传递给其他节点。 这个传输过程和我们之前从主节点发送到从节点的方式基本类似。 说到P2P的东西,核心本质都是一样的。

事务日志。

数据库中的交易日志和区块链本身的链是一回事。 在区块链中,每一个区块都对应着数据库,可以认为是一个日志文件。 最本质的区别是区块链同步标准是基于区块的。 主节点每次将交易信息打包成区块,这个区块作为交易日志。 当有任何信息时,可以立即将数据同步到其他节点。

共识机制。

POW的本质是一种自我证明的方式,即每个节点都希望别人与自己同步,想成为主节点,如何成为主节点? POW法是大家自己计算难题。 计算完成后,告诉大家计算已经完成,让大家验证一下。 如果验证无误,请关注我。 好处是大家将大部分时间花在计算过程中,对网络没有太大压力。

POS恰恰相反。 POS没有过多的自算过程。 它相当于一个大房间,每个人都想成为主节点。 每个人都以某种方式投票。 这种机制不需要自己做,但是对网络压力很大,因为每次投票都设计了数万个节点选举,网络压力非常大,所以为什么POS不能完全解决高性能问题,因为当节点太多时,POS 的效率很低。

比特币底层技术是什么_比特币是金莱特币是银_莱特币和比特币是通用货币吗

DPOS是从一个房间里选出几个代表,每个人都和几个代表平起平坐,一定程度上减轻了网络的压力。 但是如何信任这个代表,这个代表是否代表广大人民群众的利益,是否可靠,这是另外一个问题。

DAG,这就是和我们一直说的POW和POS的本质区别。 不管是POS还是POW,他们都在做和我一样的事情。 本质是当某个人在一段时间内成为标杆后,所有人都以标杆Dots为标准。

但是DAG的想法是一群菜市场大妈造谣。 没有参考点。 在 DAG 网络中,所有传输都是异步的。 好处是不需要任何人成为这个参考块的节点。 缺点是没办法做时序控制,因为每个人讨论事情的顺序都不一样。

DAG 唯一能做的就是转账。 后面涉及的运算无非是加减法。 如果菜市场的阿姨互相传道,做一些高级运算,A和B会先做加法再乘法,C和D如果两个人先做乘法再加法,两个结果就会不同。 暂时很难突破DAG算法中的排序问题。 传统区块链的链式结构不存在这个问题。 这个节点先做加法和乘法。 区块链方法的最大区别。

什么是区块链链结构和数据库日志结构?

比特币是金莱特币是银_比特币底层技术是什么_莱特币和比特币是通用货币吗

数据库日志结构。

在事务中,先进行加法运算,再进行乘法运算。 两个操作之间还有一组指针或链接。 数据库的日志结构和区块链结构有很多共同点。

区块链以 UTXO 的形式存在。 这还不是最关键的一点。 UTXO只是一种协议的表示,可以用底层的数据库来表示。 对于数据库中的结构和区块链的结构,两者有很多相似之处,完全可以互换。

比特币底层技术是什么_比特币是金莱特币是银_莱特币和比特币是通用货币吗

典型的区块链账本结构。

区块链涉及交易活动日志、数据状态数据库,在状态数据库的基础上增加索引。 对应的数据库也是完全一样的,包括数据库Ctransaction,数据管理部分,以及索引。 从结构上看,区块链的底层结构和上层的数据库结构非常相似。

区块链与数据库功能模块的对应关系。

比特币是金莱特币是银_比特币底层技术是什么_莱特币和比特币是通用货币吗

区块链是数据库事务日志,区块链State Store对应数据库的数据存储,区块链共识算法对应数据库一致性算法,区块链智能合约对应数据库存储过程等等。

2. 区块链与数据库的区别

比特币是金莱特币是银_比特币底层技术是什么_莱特币和比特币是通用货币吗

莱特币和比特币是通用货币吗_比特币底层技术是什么_比特币是金莱特币是银

最大的区别是一致性。

对于数据库来说,一般是强一致性。 比如Oracle,写入一条记录后,保证数据必须存在,并且这条数据在数据库日志中一定不能被改变。 在分布式数据库中,它是最终一致性。 写入一条记录后,你可能不能立即看到它,但它可以确保该记录在未来存在。 无论是强一致性还是最终一致性,都要求写入成功的数据在某个时间点必须存在于数据库中。

但是区块链就不一定了。 区块链可能会分叉,分叉后,必须合并。 比如个人账户里有10个比特币,同时在中国和美国两个不同的账户进行交易,因为中国和美国的服务器不一样,一个服务器接受我去为A做一笔交易,交易成功。 在第二个美国服务器上收到了同样的消息,转给B也成功了,但是两个人不能同时成功。

区块链中肯定有交易成功的确认过程,但是数据库中没有交易确认,只要写入数据库的东西就可以成功。 如果10个比特币转给中国的A,10个比特币转给美国的B,假设由于中美战争,中美之间的网络突然中断,这可能坏了三天。 三天之内,中国大陆的所有比特币交易都没有办法畅通无阻,会超过6个比特币的问题。 当两个网络合并时,就会出现分叉。 如果以后做合并,在中国做交易,给10个比特币。 卖给我一堆东西,在美国也是这样,让你线下收到20个比特币,最后在合并比特币的时候,其中一个肯定会输。 在极端情况下,比特币系统无法真正保证强一致性。 去中心化存储和中心化存储最大的区别就是一致性。

为了保证一致性,在数据库中使用了锁,因为所有的操作都是在master节点上进行的。 在几个并行操作中,结构在未提交时会被锁定。 其他操作过来后,需要保证事务成功后才能释放锁。 保证继续。

区块链没有锁定机制。 例如,在中国进行交易后,不可能在毫秒或微秒内将交易信息传输到美国。 如果美国按照同样的记录操作,就会面临这样的局面。 问题是两者之间存在冲突。 在去中心化或多主多主节点写入时,无法保证全局锁。 这个时候怎么保证呢? 当Oracle最后确认的时候,谁先提交成功,后来发现记录变了。 ,做一个新的。

与区块链相比,以太坊使用NAS来保证每个账户的顺序性更高。 这时候从某个策略中选出一个正确的。 如果顺序错误,错误将继续。

在安全层面上,区块链有很多保障安全的机制。 大家对数据库的看法就是这个东西跑在数据中心里面。 基本上区块链一个笔记本就够用了,所以除了保证本地安全外,更重要的是保证协议层面的其他对等节点和相邻节点没有作恶的坏人。

安全性在三个层面上得到保证。 对于记录级安全,属于交易数字签名和智能合约数字签名。 在进行交易时,必须通过数字签名验证账户是否有权修改这组记录。 通过加密,从记录层面保证修改这条记录的人一定是他自己。

区块级的安全机制,收到区块后如何保证区块是正确的,这个区块包括默克尔树,挖矿验证,这是区块安全性的保证。 对于链级安全机制,如何保证链的可靠,利用前一个区块生成验证码,分叉解决方案。

比特币底层技术是什么_莱特币和比特币是通用货币吗_比特币是金莱特币是银

分片机制。

传统的数据库分片很容易,都在一个数据中心。 如果你想在两个分片之间做一个操作,首先询问所有参与交易的人是否准备提交,并确保每个人都处于相同的状态。 但是有个问题,多个分片之间没有办法控制。 除非区块链中有某种机制保证不会出现分叉,否则无法保证其中一个操作以后不会在另一条链上返回。 没有技术保证,因为链上没有这个功能。

不是技术上做不到,而是理论上行不通。 如果我们这样做,就会有一些方法。 有可能找第三方中介做这个,有可能他背锅,或者用侧链机制或者跨链机制。

三、区块链技术与数据库技术的融合形式

比特币底层技术是什么_比特币是金莱特币是银_莱特币和比特币是通用货币吗

莱特币和比特币是通用货币吗_比特币是金莱特币是银_比特币底层技术是什么

至于底层技术,我认为通过两种技术的融合,可能会出现“去中心化数据库”这样的产品形态。

对于去中心化数据库,主要技术点如下:

1. 100%去中心化,是区块链数据库。

2.没有全局锁。

3、非固定节点产生日志,每个节点都可能成为出块节点。

4.异步交易确认。

5.一次性策略调整。

6. 行级安全和触发器。

应用场景,包括电子商务、金融、信用、物联网,都是可以的,这种形式很好。 现在的商业模式是中介整合所有资源,利用整个资源提供便利,赚取中间差价。 如果广泛应用区块链机制,或者去中心化的数据库机制,从整个商业模式来说,一般来说,对资源密集型中间商的需求会比较少,可能会解耦这些行业现有的商业模式。

对于未来的区块链商业模式,区块链的未来不仅仅局限于交易这样简单的操作。 我们相信未来将是一个去中心化的协作组织。

举个例子,携程是一个集中的旅游网站,里面有各种资源,包括酒店、机票、景点资源,都会打包卖给所有想去旅游的人。 未来会不会有区块链携程或者携程区块链? 它的做法是统一一套系统,让希尔顿和长城酒店直接上链。 另外,你可以找某个人或者某个组织专门做一个网站,把这个链条上的所有资源都整合起来,做成一个网站去逛逛,相当于脱媒。 不需要像携程这样的组织来统一所有资源,卖差价,而是让大家自发地参与到去中心化的组织中来实现商业目标。

我们相信区块链的未来是去中心化协作,而不仅仅是一组交易。

结尾

往期精彩文章

火球财经(ihuoqiu.com)专注于区块链和数字资产行业,集最新资讯、实时行情、技术探索、数据分析、行业科普、社区交流等一站式、全方位、综合性行业服务平台。

欢迎大家积极投稿,有区块链项目和相关消息也可以联系我们。

投稿邮箱:article@ihuoqiu.com