区块链与数据库有什么区别?

批评者认为区块链其实是一种更复杂、更昂贵的数据库。虽然区块链与数据库这两种技术都提供数据存储和管理等功能,但区块链有一个独特的特性,即数据库永远不会复制。

由于更多的宣传和炒作,人们似乎认为区块链分布式分类账技术(DLT)能够解决当今世界面临的每个交易问题,从支付处理和供应链跟踪到数字身份和版权保护。

然而数十年来,数据库一直在为这些用例提供服务。它们记录了银行账户中的金额,以及当货物到达目的地并存储商业用户的身份时,能够访问业务应用程序和敏感数据。

由于存在这些相似之处,有些激进者(有些甚至可能称之为实用主义者)相信,一旦消除了与区块链及其加密货币起源相关的宣传炒作,留下的只不过是一个缓慢而昂贵的数据库。

区块链与数据库有什么区别?

该论点认为,区块链的许多属性都可以通过传统的、经过验证的技术来实现。例如,已经有可用的哈希算法、数字签名和公钥基础设施(PKI)。如果需要可跟踪、经过验证的审计跟踪,则可以将事务保存到数据库,然后对数据进行数字签名、散列并存储该散列。其不同之处在于:区块链在一个地方拥有这些功能,并且与其他功能一起发挥更好的作用。

调研机构Gartner公司研究副总裁Avivah Litan说:“区块链本身就具有价值,它是一个分布式、独立可验证的单一真实版本,可以在多个实体之间共享,而没有一个实体处于控制之中,所有实体都有平等的访问权和控制权。”

“同样,你也可以让非区块链技术支持基本相同的东西——在多个实体之间共享的分布式独立可验证的单一真相版本。但是,这些功能并不像区块链分布式分类账技术(DLT)那样内置在技术中。”Litan补充道。

区块链和数据库之间的区别

甲骨文(Oracle)集团负责区块链产品开发的副总裁Frank Xiong解释说,传统数据库和区块链都是高级别的数据存储和数据管理基础设施。

Xiong表示,统一的数据库可以实现区块链在技术上可以由拥有和访问该数据库的一方实现的功能。但是,如果多个业务方需要执行事务,它们可能不一定信任数据库的单个所有者,该数据库创建、更新和保存所有记录。

“最大的区别是分布式分类账。我们确实有分布式数据库,但大多数都是由个别企业拥有的,并且他们的数据库分布在不同的地方。”他说。

“区块链技术是创建不可变交易记录,并将其保存在分布式分类账中的首选技术,其中区块链上的每一方都有相同的副本,并且可以访问到它。”他继续说,“与此同时,它为区块链中的每一方实现了不可变、安全、隐私和审计功能。”

IBM公司区块链技术副总裁Jerry Cuomo说,区块链与数据库可以视为一类,因为它具有相同的“DNA”(IBM公司是众多软件和服务供应商之一,其中包括为客户提供区块链即服务的微软、Oracle、SAP、AWS等公司)。

Cuomo在上个月在旧金山召开的IBM Think会议上发言时称,区块链分布式分类账技术(DLT)与数据库类似,但具有其他类型的数据库无法展示的独特功能。例如,与数据库不同,区块链具有共享分类账、共识算法、智能合约和本地数据不可变性——它们是一次写入,并附加许多电子分类账。不同于数据库管理员,他们可以访问诸如“更新”和“删除”之类的命令,这些命令可以更改分类账中的记录,一旦交易被提交到区块链网络。其管理员就无法对其进行更改。每个块(或记录)以加密方式固定到分类账上的前一个块,从而创建完美的审计跟踪。

“与拥有单一管理员设置分类账规则的数据库不同,区块链拥有多个管理员,每个管理员都有分类账的精确副本。”Cuomo说。

在数据库中,管理员控制用户之间共享的数据,并且在提交事务时,它立即提交到该分类账。

区块链分布式分类账技术(DLT)基于点对点(P2P)分散式架构,多个管理员作为其共识协议的一部分。换句话说,首先提出区块链网络上的交易,然后由管理员小组同意。只有当该组一半以上的管理员同意该交易是可接受的时,才将其添加到分类账中。

区块链的共识协议也意味着它具有容错能力,并且即使在有不良行为者的情况下也可以继续运行,因为大多数用户将保持交易的真实性。

许可与公共区块链

并非所有区块链都相似。例如,一些区块链是公共的(比如比特币),而其他区块链是私有的或许可的,例如Hyperledger Fabric、R3 Corda和Ripple。在公共区块链中,任何人都可以注册成为网络中的另一个节点,并向其提交交易。并且任何人都可以看到这些记录(例如比特币交易)。

在许可的区块链中,分类账的发起者确定谁可以加入,查看交易并提交新的区块。然而,区块链中的每个授权节点仍然可以说明哪些数据被批准用于记录。网络成员是已知的,并由分散的证书颁发机构颁发的成员PKI密钥标识。

此外,根据Litan的说法,在许可的区块链交易之上实现分散共识的承诺最终可能使任何不一定相互信任的人能够以可信赖的方式开展业务。

与数据库不同,理论上,参与许可的区块链网络的每个实体都可以运行共识/验证节点。实际上,它们没有,因为没有相应的技能或带宽。Litan表示,与其相反,他们通常将其转给项目发起人或供应商。

Litan说,“人们普遍认为,一旦这些公司熟悉并获得区块链方面的专业知识,他们将与项目发起人或供应商一起参与交易验证和共识。然而,这种情况不会在近期发生,直到公共区块链成熟和规模扩大。”

许可的区块链通过智能合约提供业务自动化工具。智能合约执行透明的预先确定的规则,并使区块链能够避免核心处理。智能合约以“如果发生这种情况,然后执行”为前提。例如,当运输公司收到交货付款时,供应链区块链中的智能合约可以促使供应商生产另一种产品以填充下一个订单。

而存在的一个误区是,一旦签订了智能合约,就无法修复错误或无法进行更改。换句话说就是遇到了糟糕的代码。但并不是这样。

调研机构Forrester公司首席分析师Martha Bennett表示,“在许可的环境中,更新智能合约的能力是既定的,而且是在框架中设计的。当然,需要一个强大的治理模型,但是对于公共区块链,也需要这种模型。而从技术上来说,并不需要太多分叉链。”

治理模型允许区块链临时或永久地拆分或“分叉”,从而创建新的区块分支。硬分叉是与以前的区块链的永久差异;软分叉是向后兼容的临时变化。可以想象一下,一列火车通过采用一个分叉口改变行进轨道。而在区块链中,这个分叉将受到大多数服务的控制。

例如,LINUX基金会的Hyperledger Fabric是一个经过许可的区块链平台。这意味着,在某种程度上,所有参与者都是被识别出来的,并且区块链通过有适当的治理来解决可能出现的问题。

何时使用区块链而不是数据库

Forrester公司的Bennett表示,企业不会真正使用区块链,除非用例确实需要这种类型的架构,因为分布式系统总是会增加开销,而且许多算法和技术仍然处于起步阶段。

考虑区块链的公司有两个关键问题:

(1)生态系统(或分布式分类账网络的发起者)是否有充分理由不希望通过单一的集中控制系统共享数据?

(2)企业是否希望解决涉及跨越公司边界运行的自动化流程和/或利用标记化潜力的用例?(标记化是商品的数字表示,例如货币或实物。)

Medici Ventures公司首席运营官Joel Weight表示,区块链技术的亮点在于涉及多个组织。例如,Overstock.com的风险投资部门Medici Ventures公司一直在大量投资区块链技术,其中包括几十家初创企业。五年前,Overstock.com开始接受比特币作为支付方式。

Weight说,“银行不需要采用区块链来跟踪我们公司支票账户的余额,或者将资金从支票账户转移到储蓄账户。在这种情况下,银行只是将资金从一个口袋转移到另一个口袋,这是一个非常适合的快速安全的数据库。”

Weight解释说,“区块链的用处在于,当两个组织拥有世界的专有视图时,每一个都存储在各自的数据库中。为了共享这些数据,要确保每家公司对数据的看法相同,或者确保双方实际拥有他们希望交换的资产,都需要付出一定的成本。”

例如,如果不是使用托管服务或遵循昂贵、缓慢的协议,所有各方都使用相同的数据工作,那么可以最小化数据和信任规范化的成本。试图采用数据库做到这一点,需要企业成为所有数据的所有者,并为参与转换的每个人提供“真相”的来源。

Weight说,“许可的区块链只需要机构之间具有足够的信任来决定谁将参与网络,然后区块链就会在参与者加入网络后保证参与者诚实可靠。经过许可的区块链网络将允许机构之间的价值转移,在这种情况下,双方可以在交易发生之前和之后立即就分类账的状态达成一致。”

用于区块链的最佳用例

尽管许多公司仍然混淆区块链和传统数据库之间的差异,但随着一些公司超越试点计划,区块链分布式分类账技术(DLT)将在未来几年得到迅速增长。

根据IDC公司最新的全球半年度区块链支出指南,预计今年全球区块链解决方案支出将接近29亿美元,与2018年的15亿美元相比增长88.7%。

IDC公司研究主管James Wester说,“区块链正在迅速成熟,我们已经达到了一个转折点,其实施正在迅速超越试验和概念验证阶段。”

转自:51CTO

相关推荐