99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>數(shù)值算法/人工智能>

區(qū)塊鏈數(shù)據(jù)庫說明分析

大?。?/span>0.3 MB 人氣: 2017-09-28 需要積分:1

  區(qū)塊鏈(Blockchain),或者說分布式賬本(DLT, Distributed Ledger Technology)最早是起源于比特幣的一個重要概念,其本質上是一個去中心化的數(shù)據(jù)庫。區(qū)塊鏈系統(tǒng)能夠大幅度降低成本,減少風險和管理成本,提升流動性,增加創(chuàng)新產(chǎn)品和服務的機會??梢哉f,和大數(shù)據(jù)、云計算、人工智能一樣,區(qū)塊鏈是未來十年中舉足輕重的技術。

  從筆者的角度來看,區(qū)塊鏈在未來最大的價值并不是在虛擬貨幣這個領域,而是用以取代原先需要中間人和第三方驗證的系統(tǒng)中,以對于數(shù)字系統(tǒng)的信任來取代對于人的信任的領域。

  《程序員》已經(jīng)多次講述過區(qū)塊鏈領域的概念,在此不復贅言。

  區(qū)塊鏈系統(tǒng)和CAP、ACID和BASE

  為什么我們說區(qū)塊鏈系統(tǒng)其實是一個分布式數(shù)據(jù)庫系統(tǒng)?

  ACID

  傳統(tǒng)的數(shù)據(jù)庫都滿足ACID原則。我們首先來看一個“事務”(transaction)的概念。事務是一個操作序列,是一個不可分割的基本工作單位。在一個傳統(tǒng)的數(shù)據(jù)庫管理系統(tǒng)(DBMS)中,事務應該具有四個特性:

  原子性(Atomicity)

  一致性(Consistency)

  隔離性(Isolation)

  持久性(Durability)

  取這四個英文單詞的首字母縮寫,我們得到的是ACID。

  原子性指事務是一個不可分割的最基本工作單位,事務中的操作要么都執(zhí)行,要么都不執(zhí)行;一致性是指數(shù)據(jù)庫的完整性約束不會被任何事務的發(fā)生破壞,也就是說數(shù)據(jù)庫的事務不能破壞數(shù)據(jù)的完整性;隔離性是說多個事務并發(fā)訪問時,事務之間是被隔離開的,一個事務不應該影響其他事務的運行效果;持久性則意味著在事務完成以后,該事務所對數(shù)據(jù)庫做的更改便被永久保存在數(shù)據(jù)庫之中,即使系統(tǒng)本身發(fā)生了事故也不會更改。

  從ACID的四個特性來看,我們發(fā)現(xiàn)其實比特幣區(qū)塊鏈系統(tǒng)幾乎具有這些特點:

  一個區(qū)塊要么被全部記錄進入?yún)^(qū)塊鏈,要么不被認可,不可能有中間狀態(tài);

  一個區(qū)塊在加入?yún)^(qū)塊鏈之后,原本區(qū)塊鏈的系統(tǒng)依然保持完整性;

  每次只有一個區(qū)塊可以被加入到區(qū)塊鏈中,所以隔離性是當然的;

  而在區(qū)塊被寫入鏈條之后,新的區(qū)塊鏈會被復制到所有的區(qū)塊鏈節(jié)點上,被永久保存。

  在區(qū)塊鏈系統(tǒng)上有一個特殊情況,如果兩個不同的節(jié)點差不多同時申請挖幣的獎勵,那么它們中會有一個節(jié)點計算出的區(qū)塊在最終會被拋棄,因而ACID特性中的D(持久性)其實是不滿足的。

  BASE

  因為區(qū)塊鏈節(jié)點處于地球各處,而這些節(jié)點又是由不同用戶維護的,所以其實我們并不能保證每次訪問區(qū)塊鏈的系統(tǒng)時都能獲取到數(shù)據(jù),而這恰恰又對應了互聯(lián)網(wǎng)時代分布式數(shù)據(jù)系統(tǒng)的一個特性,可以稱之為為BASE。BASE是一個很怪異的詞語的縮寫:Basically Available,Soft-state,Eventual Consistency(基本上是可訪問的、軟狀態(tài)、最終一致性)。

  在BASE理念中,基本可用是指系統(tǒng)在出現(xiàn)不可預知的故障時,允許損失部分可用性;軟狀態(tài)是指允許系統(tǒng)中的數(shù)據(jù)存在中間狀態(tài),不過該中間狀態(tài)的存在并不會影響系統(tǒng)的整體可用性;最終一致性指的是所有的數(shù)據(jù)副本,在經(jīng)過一段時間的同步之后,最終都能夠達到一致。

  和ACID概念的強一致性相比,BASE理念面向的是可擴展的分布式系統(tǒng),BASE通過犧牲強一致性來獲得可用性,并允許數(shù)據(jù)在一段時間內是不一致的。不過兩者的共同點是最終會達到一致狀態(tài)。我們可以認為區(qū)塊鏈系統(tǒng)符合分布式數(shù)據(jù)系統(tǒng)的BASE理念。

  CAP

  我們再來看區(qū)塊鏈系統(tǒng)和分布式數(shù)據(jù)系統(tǒng)上的CAP理論之間的關系。在分布式數(shù)據(jù)系統(tǒng)中,有三種重要的屬性,分別是:

  一致性(Consistency):數(shù)據(jù)一致性,任何一個讀操作總是能讀取到之前完成的寫操作結果,也就是在分布式環(huán)境中,多點的數(shù)據(jù)是一致的。

  可用性(Availability):好的響應性能,每一個操作總是能夠在確定的時間內返回,也就是系統(tǒng)隨時都是可用的。

  分區(qū)容忍性(Tolerance of network Partition):可靠性,在出現(xiàn)網(wǎng)絡分區(qū)(比如斷網(wǎng))的情況下,分離的系統(tǒng)也能正常運行。

  CAP原理解釋了關于這三種屬性的關系。CAP原理的意思是:一個分布式系統(tǒng)不能同時滿足一致性、可用性和分區(qū)容錯性這三個需求,最多只能同時滿足兩個。CAP原理是由美Berkerly的Brewer教授提出。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關規(guī)定!

      ?