区块链和分布式数据库有什么区别?

栏目: 数据库 · 发布时间: 7年前

内容简介:本文来源于“Ultrain联合创始人&CTO 李宁"什么是区块链?什么是分布式数据库?相信很多人容易混淆这两个概念。表面上看,区块链和分布式数据库在基础技术方面有很多相似的地方,但也仅仅只是相似而已,接下来,我们将从本质区别、核心价值和存储技术三个方面来探讨二者的不同。一致性的核心共识算法和冗余的数据存储是二者最为相似的一点,即便如此,二者在技术目的上仍存在本质区别。其中,区块链使用这些技术的核心目的在于构建一个尽可能去中心的、数据资产所有权永久保护和自由转让的世界;而分布式数据库核心目的则是尽可能构建一

本文来源于“Ultrain联合创始人&CTO 李宁"

什么是区块链?什么是分布式数据库?相信很多人容易混淆这两个概念。表面上看,区块链和分布式数据库在基础技术方面有很多相似的地方,但也仅仅只是相似而已,接下来,我们将从本质区别、核心价值和存储技术三个方面来探讨二者的不同。

一、区块链和分布式数据库的本质区别

1、一致性的核心共识算法和冗余的数据存储:

一致性的核心共识算法和冗余的数据存储是二者最为相似的一点,即便如此,二者在技术目的上仍存在本质区别。其中,区块链使用这些技术的核心目的在于构建一个尽可能去中心的、数据资产所有权永久保护和自由转让的世界;而分布式数据库核心目的则是尽可能构建一个逻辑中心,这个中心能对外提供高性能、低成本以及扩展性好的服务。

2、不可能三角:

二者都需要面对不可能三角的挑战,但二者所需要面对的具体挑战有本质的区别:其中区块链面对的是安全、去中心化和可扩展性;而分布式数据库面对的是对业务的支持度、工程实现复杂度和硬件要求。

3、一致性:

一致性在区块链和分布式数据库上对应的意义也不同:区块链系统中的一致性指的是多节点对数据状态的共同维护能力;而分布式数据库系统中的一致性指的是多个副本对外呈现的状态。

4、共识算法安全级别的不同

区块链系统解决的是拜占庭错误,主流算法有POW/POS(概率算法)和PBFT(确定性算法)。其中,POW/POS概率类算法的共识结果则是临时的,随着时间推移或某种强化,共识结果被推翻的概率越来越小,最终成为事实上结果。拜占庭类容错算法往往性能较差,无法容忍超过 1/3 的故障节点;而PBFT确定性算法一旦达成共识就不可逆转,即共识是最终结果。分布式数据库系统解决的是非拜占庭错误或故障错误,主流算法有Paxos和Raft,这类容错算法往往性能比较好,处理较快,容忍不超过1/2的故障节点。

二、从核心价值探究区块链和分布式数据库

1,区块链的核心价值

区块链的核心价值不是对外提供服务而是构建自己的数据资产世界,区块链世界更新的是状态,存储的是可追溯日志,主要数据结构分为两类:交易和区块。具体体现如下:

交易用于外部世界驱动区块链世界状态的更新,它又包含两类数据:交易输入和交易输出,交易输入指明了交易的数据资产来源,交易输出指明了数据资产的去向。

区块用于存储交易数据,主要由区块头和区块体两部分组成,区块头中记录了版本号、上一个区块的Hash地址、merkle根、区块创建时间戳、区块的工作量难度目标以及用于计算目标的参数值,区块体包含交易数量和完整的交易数据。

2,分布式数据库核心价值

分布式数据库核心价值是对业务系统提供数据存取服务,其中业务数据库是面向操作的,主要服务于业务产品和开发;而数据仓库是面向分析的,主要服务于分析人员。

三、从存储技术的角度解开区块链和分布式数据库的面纱

1,区块链

2008比特币到区块链3.0,区块链最基础的存储技术没太多的变化,下面我就举个比特币的存储原理的例子。

Bitcoin/blocks/文件夹下形如图1中的blk00000.dat的文件为区块数据存储的文件,每个文件128M左右,此文件夹下存储了所有的区块数据。

区块链和分布式数据库有什么区别?

图1

Bitcoin/blocks/index/文件夹下存储了所有区块的索引数据,采用的leveldb格式的键/值对数据库。

区块链和分布式数据库有什么区别?

图2

每个区块最大是2M,区块数据存储在区块文件中(如图1中blk00000. dat),区块与区块之间利用“魔术数”分隔(如图3中的0xF9BEB4D9),一个文件可以存储多个区块数据,文件也有最大限制,大于128M左右就会重新创建一个文件(如blk00001.dat)。

区块链和分布式数据库有什么区别?

图3

2,分布式数据库

分布式数据库从2005年左右开始,首先是NoSQL这波浪潮。这些数据库解决的首要问题是单机上无法保存全部数据,如HBase/Cassadra/MongoDB等。紧接着是RDMS的救赎,除了NoSQL之外,RDMS系统也做了不少努力来适应业务的变化,也就是关系型数据库的中间件和 分库分表 方案。然后是NewSQL的发展,2012~2013年Google 相继发表了Spanner和F1两套系统的论文,让业界第一次看到了关系模型和NoSQL的扩展性在一个大规模生产系统上融合的可能性。

接上一篇区块链技术进化论,本篇从区块链和分布式本质区别,来进步剖析出区块链网络独特的核心价值,接下来将讲述为什么智能合约是构建区块链世界的核能,而不是对外提供服务的接口层,以及前面提到一系列区块链技术类和价值应用场景,希望让更多真正了解区块链并参与到区块链中,让区块链技术早日大规模赋能实体经济。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Design and Analysis of Distributed Algorithms (Wiley Series on P

Design and Analysis of Distributed Algorithms (Wiley Series on P

Nicola Santoro / Wiley-Interscience / 2006-10-27 / USD 140.95

This text is based on a simple and fully reactive computational model that allows for intuitive comprehension and logical designs. The principles and techniques presented can be applied to any distrib......一起来看看 《Design and Analysis of Distributed Algorithms (Wiley Series on P》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具