区块链代表的数据库和传统数据库有何区别

简介:

传统数据库和区块链之间的区别始于架构,或者说是如何来协调这些技术。运行在万维网上的数据库通常使用客户端服务器的网络体系结构。具有与其帐户关联权限的用户(客户端)可以更改存储在中央服务器上的条目。 通过更改“主副本”,在用户使用他们的计算机访问数据库时,他们将获得数据库条目的更新版本。 数据库的控制权仍在管理员身上。

  这与区块链并不完全相同。对于区块链数据库,每个参与者维护,计算并更新数据库中的新条目。 所有节点一起工作,以确保它们都得出相同的结论,为网络提供内置安全性。这种差异使得区块链非常适合作为某些功能的记录系统,而集中式数据库完全适用于其他功能。

  分散控制

  区块链允许不相互信任的各方在不需要中央管理员的情况下共享信息。交易由用户网络作为共识机制进行处理,以便每个人可以同时创建相同的记录共享系统。

  分散控制的价值在于消除了集中控制的风险。使用集中式数据库,任何有足够权限访问该系统的人都可以销毁或破坏其中的数据。这使用户依赖于管理员。大部分管理员已经赢得了他们的信任。例如,人们的钱不会被记录在私人数据库中的银行窃取。而且,为什么需要集中控制是有原因的。集中控制可以成为专业,这是它存在的理由。但是,这也意味着那些拥有控制权的人(如银行)需要花费数十亿美元让这些集中控制的数据库免受黑客或其他任何希望从他人的损失中获利的其他人的损失。

  本身的历史

  大多数集中式数据库都会在特定时刻保持最新信息。它们或多或少是瞬间的快照。区块链数据库能够保留现在相关的信息,但也包含以前的所有信息。区块链技术可以创建具有自己历史的数据库。他们不断壮大自己的历史档案,同时提供实时肖像。这是损害或改变这些数据库所需的开支,导致人们称其为不可变的区块链数据库。这也是我们可以开始看到数据库发展成为一个记录系统的地方。

  性能

  虽然区块链可以用于记录系统,并且作为交易平台,它是理想的,但与我们今天使用Visa和PayPal看到的数字交易技术相比,它们被认为是数据库中的缓慢数据库。

区块链代表的数据库和传统数据库有何区别

  虽然这种性能肯定会有所改进,但区块链技术的本质要求牺牲一些速度。区块链技术采用分布式网络的方式意味着它们不具有共享和混合的处理能力,它们各自独立服务于网络,然后将其工作结果与网络其余部分进行比较,直到出现某种共识为止。另一方面,集中的数据库已经存在了数十年,并且已经看到它们的表现随着公式定义的数字时代的增长而增长:摩尔定律。

  保密

  比特币是一个不受控制的数据库。这意味着任何人都可以在链中写入新的块,任何人都可以读取链中的块。像集中式数据库一样,经过许可的区块链可以进行写入控制和读取控制。这意味着可以设置网络或协议,只有经过许可的参与者才能写入数据库或读取数据库。

  但是,如果机密性是唯一的目标,并且信任不是问题,则区块链数据库对集中式数据库没有任何优势。在区块链中隐藏信息需要大量的加密和网络中节点的相关计算负担。没有办法做到这一点,比仅仅将数据隐藏在甚至不需要网络连接的专用数据库中更有效。


原文发布时间为:2018-05-29

本文来自云栖社区合作伙伴“IT168”,了解相关信息可以关注“IT168”。

相关文章
|
1月前
|
存储 关系型数据库 MySQL
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景
一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB——特点、性能、扩展性、安全性、适用场景比较
|
21天前
|
存储 SQL JSON
介绍一下RDBMS和NoSQL数据库之间的区别
【10月更文挑战第21天】介绍一下RDBMS和NoSQL数据库之间的区别
47 2
|
10天前
|
存储 安全 Java
springboot当中ConfigurationProperties注解作用跟数据库存入有啥区别
`@ConfigurationProperties`注解和数据库存储配置信息各有优劣,适用于不同的应用场景。`@ConfigurationProperties`提供了类型安全和模块化的配置管理方式,适合静态和简单配置。而数据库存储配置信息提供了动态更新和集中管理的能力,适合需要频繁变化和集中管理的配置需求。在实际项目中,可以根据具体需求选择合适的配置管理方式,或者结合使用这两种方式,实现灵活高效的配置管理。
10 0
|
2月前
|
SQL 关系型数据库 数据库连接
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
本文介绍了PHP中PDO(PHP Data Objects)扩展的基本概念和使用方法。内容包括PDO类和PDOStatement类的介绍,PDO的简单使用,预定义占位符的使用方法,以及PDOStatement对象的使用。文章还讨论了绑定预定义占位符参数的不同形式,即bindValue和bindParam的区别。通过具体示例,展示了如何使用PDO进行数据库连接、数据查询、数据插入等操作。
php连接数据库之PDO,PDO的简单使用和预定义占位符的使用以及PDOStatement对象的使用,占位符的不同形式,bindValue和bindParam绑定预定义占位符参数的区别
|
3月前
|
Oracle 关系型数据库 数据库
阿里云数据库 ACP 问题之阿里云数据库ACP认证与ACA认证有什么区别
阿里云数据库 ACP 问题之阿里云数据库ACP认证与ACA认证有什么区别
148 1
阿里云数据库 ACP 问题之阿里云数据库ACP认证与ACA认证有什么区别
|
3月前
|
存储 数据管理 数据库
|
3月前
|
存储 SQL 分布式计算
关系数据库和HDFS的基本区别是什么?
【8月更文挑战第31天】
77 0
|
3月前
|
存储 BI 数据库
|
3月前
|
存储 SQL 关系型数据库
关系型数据库和非关系型数据库的区别和选择方法?
【8月更文挑战第17天】关系型数据库和非关系型数据库的区别和选择方法?
205 0
|
5月前
|
关系型数据库 MySQL 数据库
【MySQL】MySQL数据库的delete from table和truncate table之间的区别
【MySQL】MySQL数据库的delete from table和truncate table之间的区别
605 1