區塊鏈和資料庫
本文由幣乎社群(bihu.com)內容支援計劃獎勵。
這是「區塊鏈技術指北」的第 15 篇文章。
如果對我感興趣,想和我交流,我的微訊號:Wentasy,加我時簡單介紹下自己,並註明來自「區塊鏈技術指北」。同時我會把你拉入微信群「區塊鏈技術指北」。BTW,李笑來老師也加入了我的知識星球,文末有加入方式。
個人認為區塊鏈只能借鑑傳統的資料庫技術,而無法將資料庫改造成區塊鏈。
首先我們簡單理解下區塊鏈和傳統資料庫。
區塊鏈技術是一種不依賴第三方、通過自身分散式節點進行網路資料的儲存、驗證、傳遞和交流的一種技術方案。因此,有人從金融會計的角度,把區塊鏈技術看成是一種分散式開放性去中心化的大型網路記賬薄,任何人任何時間都可以採用相同的技術標準加入自己的資訊,延伸區塊鏈,持續滿足各種需求帶來的資料錄入需要。
通俗一點說,區塊鏈技術就指一種全民參與記賬的方式。所有的系統背後都有一個資料庫,你可以把資料庫看成是就是一個大賬本。那麼誰來記這個賬本就變得很重要。目前就是誰的系統誰來記賬,微信的賬本就是騰訊在記,淘寶的賬本就是阿裡在記。但現在區塊鏈系統中,系統中的每個人都可以有機會參與記賬。在一定時間段內如果有任何資料變化,系統中每個人都可以來進行記賬,系統會評判這段時間內記賬最快最好的人,把他記錄的內容寫到賬本,並將這段時間內賬本內容發給系統內所有的其他人進行備份。這樣系統中的每個人都了一本完整的賬本。這種方式,我們就稱它為區塊鏈技術。
區塊鏈技術被認為是網際網路發明以來最具顛覆性的技術創新,它依靠密碼學和數學巧妙的分散式演演算法,在無法建立信任關係的網際網路上,無需藉助任何第三方中心的介入就可以使參與者達成共識,以極低的成本解決了信任與價值的可靠傳遞難題。
公有區塊鏈的所有資料都是公開的,任何人都可以查詢或者拿到交易記錄進行分析。
區塊鏈主要包含有五大類的技術:P2P 網路技術,共識演算法技術,塊鏈結構技術,智慧合約和密碼學。
而我們再來看資料庫。
資料庫,簡而言之可視為電子化的檔案櫃——儲存電子檔案的處所,使用者可以對檔案中的資料執行新增、擷取、更新、刪除等操作。所謂 “資料庫” 系以一定方式儲存在一起、能予多個使用者共享、具有儘可能小的冗餘度、與應用程式彼此獨立的資料集合。
第一,不管是 RDBMS、NoSQL 還是 NewSQL,都會提供一個 介面,供使用者進行資料的存取。也就是說資料是可以篡改的,這跟區塊鏈不可篡改的思想相悖。
第二,傳統企業或者網際網路企業之所以選擇資料庫,因為這些 資料是私有的,資料就是價值,資料就是競爭力。 企業資料庫儲存的資料是絕不會公開的,跟區塊鏈所倡導的公開思想完全背離。比如你在知乎提問、答題,這些資料都會給知乎帶來最大的價值,而不是給你帶來最大價值。因為這些資料是存在知乎的資料庫裡,只有具有相關許可權的人才會接觸到。他們會拿這些資料做什麼呢?出電子書、出實體書、出周邊、大資料分析等等,而這幾乎與你無關。也就是說,傳統資料庫是為企業最大化服務的,而不是使用者。
第三,傳統資料庫都是應用在 中心化 的公司或者機構,與區塊鏈去中心化的思想相悖。中心化意味著作惡的概率、被攻擊的可能性極高。
第四,部分傳統資料庫開源,還有相當大比例的資料庫都是閉源的。沒有開源的資料庫是由中心化的組織來維護程式碼,安全性和穩定性也是中心化組織來維護。這跟區塊鏈所倡導的開源思想相悖。一個開源的系統自然會存在問題,但是社群會以最快的速度進行修復。
第五,除了分散式資料庫有共識機制,其他的資料庫沒有完整的分散式協議應用,而分散式協議可以理解成區塊鏈裡的共識機制。大多數資料庫不具備共識機制。
第六,區塊鏈目前暫時沒有達到大規模應用的要求,目前也是區塊鏈技術的瓶頸,而資料庫目前完全可以支撐大規模高併發的場景。區塊鏈由於是一個分散式系統,想要實現高併發,關鍵點在於共識機制。
所以,傳統資料庫無法改造成區塊鏈。
區塊鏈可以借鑑傳統的資料庫技術有:
- 分散式領域的 Paxos、Raft、Zab 共識協議
- 傳統資料庫 Shard 方案與實現
- 傳統資料庫資料組織演算法
- 分散式事務模型
另外,關於分散式資料庫,可以看下 PingCAP 創始人劉奇作品 怎樣打造一個分散式資料庫。
原文釋出時間為:2018-01-04
本文作者:區塊鏈技術指北
本文來源:騰訊雲 雲+社群,如需轉載請聯絡原作者。
相關文章
- 區塊鏈代表的資料庫和傳統資料庫有何區別區塊鏈資料庫
- 圖資料庫並非要取代區塊鏈,而是讓區塊鏈如虎添翼資料庫區塊鏈
- 區塊鏈和大資料的關係區塊鏈大資料
- 區塊鏈系列6-區塊鏈安全與大資料區塊鏈大資料
- 區塊鏈與分散式資料庫的比較區塊鏈分散式資料庫
- MT和MPT—區塊鏈的資料結構區塊鏈資料結構
- 區塊鏈資料總結區塊鏈
- 區塊鏈學習資料區塊鏈
- “區塊”和“鏈”的火花,區塊鏈到底為何物區塊鏈
- 傳統資料庫也能實現區塊鏈儲存資料庫區塊鏈
- 區塊鏈雲盤的資料安全區塊鏈
- 塔說|區塊鏈遇到資料庫:相愛還是相殺?區塊鏈資料庫
- 區塊鏈百寶庫【必備資源集合】區塊鏈
- SAP HANA和區塊鏈區塊鏈
- 小企業如何利用區塊鏈和大資料獲利?區塊鏈大資料
- 區塊鏈資料管理平臺開發,多節點聯盟區塊鏈搭建區塊鏈
- 區塊鏈社交直播app開發,區塊鏈技術應用資料上鍊區塊鏈APP
- 區塊鏈如何提高資料安全性?區塊鏈
- 區塊鏈資料隱私保護分析區塊鏈
- 區塊鏈資料管理必讀文獻區塊鏈
- 區塊鏈100講:區塊鏈為什麼叫“區塊”“鏈”?區塊鏈
- 區塊鏈技術物流應用場景開發方案,區塊鏈資料上鍊區塊鏈
- 區塊鏈技術實體應用落地開發方案,區塊鏈資料上鍊區塊鏈
- 零壹智庫:全球區塊鏈投融資圖譜區塊鏈
- 資料如何在一個區塊鏈中儲存和保護?區塊鏈
- 區塊鏈:《區塊鏈 技術驅動金融》筆記和總結區塊鏈筆記
- 區塊鏈101:區塊鏈的應用和用例是什麼?區塊鏈
- 比特幣和區塊鏈(2):比特幣中區塊鏈的實現比特幣區塊鏈
- 區塊鏈vs傳統資料庫:分散式執行有何優勢?區塊鏈資料庫分散式
- 區塊鏈構建資料可信流通體系區塊鏈
- 用資料視角看看區塊鏈是啥?區塊鏈
- 區塊鏈應用技術資料上鍊聯盟鏈區塊鏈
- 區塊鏈 2.0:房地產區塊鏈(四)區塊鏈
- 區塊鏈知識,區塊鏈簡史區塊鏈
- 區塊鏈系列1-區塊鏈概述區塊鏈
- 區塊鏈技術的領先的區塊鏈數字資產區塊鏈
- 區塊鏈區塊鏈
- IPFS和區塊鏈有什麼區別區塊鏈