区块链与数据库到底有何不同?只是名字不一样吗?

更新日期: 2020-01-04 阅读: 2.7k 标签: 区块链

区块链被诟病的一大原因,就是区块链分布式账本技术(DLT)已经被吹捧成了一剂包治百病的良药,从支付处理和供应链跟踪到数字身份,再到版权保护,似乎当今世界几乎所有的交易问题都可以从中找到答案。

但这也导致了一个问题,许多上链行为是为了用区块链而用区块链。或者换句话说,就算不用区块链,用户的应用问题也能解决。用户就会反问,我为什么要用区块链。

与之相反,数据库已在相同的领域应用了数十年。它们记录一个银行账户中的财产,当货物到达目的地并存储业务用户的身份时,可以访问业务应用程序和敏感数据。

那么,区块链与数据库最大的不同是什么呢?区块链本身又是不是一个缓慢而昂贵的数据库呢?

争论来自于区块链的许多所谓的专有属性,完全可以通过传统的、已印证过的真实技术来实现。例如,已有哈希算法、数字签名和公钥基础设施(PKI)可供使用。如果您需要一个可跟踪的、经过验证的审计跟踪,您可以将您的交易数据保存到数据库中,然后对数据进行数字签名、散列并存储该散列。

事实上,这二者的区别在于:区块链在一个地方具有所有这些功能,并且它与其他系统能够非常好地配合在一起。


区块链与数据库的异同

从更高的标准来看,传统的数据库和区块链都是数据存储和数据管理的基础架构。

传统的数据库可以实现区块链技术上的功能,并且区块链可以访问数据库。然而,如果存在多个业务方需要执行交易,这些业务方可能不会信任个体数据库的拥有者。而这些个体数据管的拥有者却可以创建、升级和保存各种记录的数据。

二者最大的差异在于分布式账本。我们确实已经研发出了分布式数据库,但大多数分布式数据库却由一个个企业单独拥有,这些企业采用分布式数据库的原因也各有不同。”

区块链技术是一项非常棒的技术,它允许在分布式账本上创建和保存不可变的交易记录,上了链的各机构有一个相同的备份并可以访问它。同时,它可以实现恒定、安全、私密和审计链上各方的能力。

不同于只有一个管理员为分类账设置规则的数据库,一条区块链有多个管理员,每一个管理员都有一个精准的分类账本副本。在一个数据库中,管理员控制着数据可以按什么权限分享给不同的用户,当事务被提交时,它们会立即提交到该分类帐中。

区块链的分布式账本技术基于点对点(P2P)的分散架构,多个管理员作为其共识协议的一部分。换句话说,区块链网络上的交易首先被提议,然后被社区同意。只要有51%的人同意交易,交易就可以被接受,然后交易就被添加到分类帐中。

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


公有链与私有链的不同特质

区块链并不是只有一种。例如,某些区块链属于公链,象比特币;同时,另一些区块链属于私链或混合链,象超级账本、R3 Corda和瑞波。在公链上,任何人都可以注册并且成为网络节点,或者提交事务处理。此外,任何人都有权查看这些交易记录(就象比特币的交易)。

在私链上,分类总账的发起人有权决定谁可以加入、查看交易信息,并且提交新的区块。然而,链中的每个授权节点仍然对哪些数据被批准用于记录有发言权。网络成员由分散的证书颁发机构颁发的成员身份PKI密钥识别。

在许可的区块链交易基础之上达成的分散共识,最终可能使不存在定相互信任的各方以可信任的方式开展业务。

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

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

特许区块链通过智能合约提供业务自动化工具。智能合约执行透明的、预先确定的规则,并使区块链避开中央权威。智能合约在“如果发生这种情况,那么就执行”的前提下运行。

一种极端的情况,就是智能合约一旦被写就,一个错误就不能被修正,或者改变就不能发生。换句话说,你被错误的代码困住了。


区块链什么时候能替代数据库

治理模型允许区块链临时或永久地拆分或“分叉”,从而创建新的区块分支。硬分叉是与以前的区块链的永久差异;软分叉是向后兼容的临时变化。想象一列火车通过一个开关改变轨道;在区块链中,开关将由大多数人控制,并拥有铁路服务的权力。

公司还不应当采用区块链,除非目前的应用场景真地需要这种类型的架构。原因在于分布式系统总是会增加开销,而且许多算法和技术还处于初级阶段。

这里有两个公司考虑采用区块链与否的关键问题:

生态系统(或分布式账本网络的发起人)是否有充分的理由不希望通过单一的中央控制系统共享数据?公司是否希望处理涉及跨公司边界运行的自动化流程的用例和/或利用通证化技术的潜力?(通证化技术是可将商品资产转化为数字资产)

区块链的用处在于,当两个组织对于世界拥有相同的视角时,可以把数据存在他们自己的数据库中。但如果想要共享这些数据,来确保每家公司看到的数据是相同的,或者或者确保双方实际拥有他们希望交换的资产,都需要付出一定的成本采用区块链。

例如,如果不是使用托管服务或遵循昂贵、缓慢的协议,而是所有方使用相同的数据,那么规范化数据和信任的成本将最小化。试图用数据库做到这一点需要一家公司拥有所有的数据,并为参与转换的每个人提供真实数据的来源。

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

虽然很多公司还是会对区块链与传统数据库的区别感到混淆,但随着各类公司不断试点项目,分布式账本技术似乎将在未来几年快速增长。相信随着分布式账本技术的不断被应用,区块链的春天也就随之而来了。

原文 https://news.huoxing24.com/20200204080440643706.html

本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://fly63.com/article/detial/7404

相关推荐

以太坊发展简史

在 以太坊在Serenity (ETH 2.0) 阶段来临之前经历的升级和硬分叉。通过本文将了解到升级或分叉发生的时间,加入那哪些特性。时至今日当我们鸟瞰区块链技术的发展,它仍旧算得上是一个新事物。

区块链开发中使用的最流行的编程语言

我们目前正处于一个新兴的区块链开发行业中。区块链技术处于初期阶段,然而这种颠覆性技术已经成功地风靡全球,并且最近经历了一场与众不同的繁荣。由于许多资金充足的项目现在急于建立区块链网络并在其上部署分散的应用程序

200行JS代码实现超级简单的区块链,带你入门区块链

本文通过JavaScript源码实现一个简单的区块链框架,带你入门区块链的相关知识。区块链的基本概念非常简单:一个分布式数据库维持不断增长的有序记录列表。

从概念到底层技术,一文看懂区块链架构设计(附知识图谱)

区块链作为一种架构设计的实现,与基础语言或平台等差别较大。区块链是加密货币背后的技术,是当下与VR虚拟现实等比肩的热门技术之一,本身不是新技术,类似Ajax,可以说它是一种技术架构,所以我们从架构设计的角度谈谈区块链的技术实现。

区块链开发的11种顶级编程语言

区块链是一种去中心化,安全且非常快速的技术,已经在商业世界引起轰动。随着大量的区块链项目正在开发和部署在互联网上,区块链开始走向世界。已经有一些公司试图在其他人的基础上发展。

区块链的六大层级结构

众所周知, 区块链 是 比特币 的底层技术,那么这个底层技术又是怎么分层级结构的呢?在前面我们介绍了区块链的四大核心技术是其独特的数据结构、分布式存储、密码学和共识机制。今天我们就来聊聊区块链结构的六个层级结构

DAG:区块链行业下一个引爆点?

DAG是Directed Acyclic Graph的缩写,是一种运用拓扑排序的直接图像数据结构。这种数据结构能够在数据压缩中找到最优解,因此在实际中被广泛地运用于数据处理等领域

用JavaScript写一个区块链

几乎每个人都听说过像比特币和以太币这样的加密货币,但是只有极少数人懂得隐藏在它们背后的技术。在这篇博客中,我将会用JavaScript来创建一个简单的区块链来演示它们的内部究竟是如何工作的

使用javascript实现小型区块链

区块链概念狭义:区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码方式保证的不可篡改和不可伪造的分布式账本。

什么是挖矿?

区块链中经常会听到挖矿这个名词,因为它和现实中的挖矿不一样,所以很多人对这个词很费解。为什么那么多人去挖矿呢?因为挖矿成功后会有奖励。为什么挖矿需要大量的矿机呢?因为有大量的哈希计算。这个计算的过程就被称为挖矿

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!