區(qū)塊鏈與數(shù)據(jù)庫(kù)如何結(jié)合?
一、區(qū)塊鏈介紹
區(qū)塊鏈中的數(shù)據(jù)以區(qū)塊為單位產(chǎn)生和存儲(chǔ),按時(shí)間順序連成鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)。所有節(jié)點(diǎn)共同參與區(qū)塊鏈系統(tǒng)的數(shù)據(jù)驗(yàn)證、存儲(chǔ)和維護(hù),新區(qū)塊的創(chuàng)建需得到共識(shí)確認(rèn),通過(guò)廣播實(shí)現(xiàn)全網(wǎng)同步,之后就不能更改或刪除。中本聰2009年發(fā)明的比特幣是區(qū)塊鏈的第一個(gè)應(yīng)用。
區(qū)塊鏈沒(méi)有理論創(chuàng)新,是多種已有技術(shù)的集成創(chuàng)新,主要解決多方信任與高效協(xié)同問(wèn)題。從技術(shù)角度包括哈希運(yùn)算、數(shù)字簽名、P2P網(wǎng)絡(luò)和共識(shí)算法四部分內(nèi)容。區(qū)塊鏈所記錄的數(shù)據(jù)不變(immutable),區(qū)塊鏈通過(guò)密碼學(xué)和時(shí)間戳保障區(qū)塊鏈數(shù)據(jù)不被惡意篡改。
根據(jù)參與區(qū)塊鏈的個(gè)體是否受限,區(qū)塊鏈又分為公有鏈、聯(lián)盟鏈和私有鏈。例如比特幣就是典型的公有鏈,任何人都可以加入。因?yàn)闆](méi)有準(zhǔn)入限制,比特幣設(shè)計(jì)了算力非常昂貴的挖礦算法,消耗了大量資源,效率也比較慢。因此,對(duì)于企業(yè)應(yīng)用來(lái)說(shuō),首選聯(lián)盟鏈和私有鏈。
共識(shí)協(xié)議是區(qū)塊鏈重要概念。比特幣采用PoW的形式,即算力挖礦,利用哈希算法不停運(yùn)算直到找到小于某個(gè)值的數(shù)值即可。還可以選擇拜占庭容錯(cuò)式協(xié)議,如bigchainDB的共識(shí)采用的就是tendermint共識(shí)。此外,常見(jiàn)的共識(shí)方法還包括Proof of Stake,Delegated Proof of stake、Raft等。
除比特幣外,區(qū)塊鏈的典型應(yīng)用包括Hyperledger Fabric,Ethereum,R3 Corda、Quorum、Fisco。主流的國(guó)際區(qū)塊鏈聯(lián)盟組織包括Libra(Facebook、mastercard、visa、paypal參與,支付領(lǐng)域)、B3i(安聯(lián)、蘇黎世保險(xiǎn)、太平洋保險(xiǎn)等,保險(xiǎn)領(lǐng)域)、fnality(瑞銀、巴克萊,證券、跨境支付領(lǐng)域),MOBI(寶馬、福特等,汽車領(lǐng)域),mediledger(基因泰克、輝瑞、醫(yī)藥領(lǐng)域),Tradelents(航運(yùn)領(lǐng)域),tradeix marcopolo(供應(yīng)鏈領(lǐng)域)??梢灶A(yù)見(jiàn),未來(lái)在這些領(lǐng)域,區(qū)塊鏈都將帶來(lái)改變和變革。
二、區(qū)塊鏈主流應(yīng)用
區(qū)塊鏈的應(yīng)用最早來(lái)自金融行業(yè),后面慢慢擴(kuò)展到很多傳統(tǒng)行業(yè),如供應(yīng)鏈、物聯(lián)網(wǎng)等。2019年11月,華為的政府區(qū)塊鏈目錄在北京上線,鏈接了50多個(gè)北京市機(jī)構(gòu),提供了更有效的數(shù)據(jù)查詢、數(shù)據(jù)共享和權(quán)限管理。螞蟻區(qū)塊鏈提供電子票據(jù)應(yīng)用,招商銀行使用區(qū)塊鏈實(shí)現(xiàn)跨境支付等。
如何判斷你的業(yè)務(wù)是否適合區(qū)塊鏈?可參考如下圖。
三、區(qū)塊鏈政策解讀
1. 1025講話:2019?年?10?月?25?日,***的講話稱,我們要把區(qū)塊鏈作為核心技術(shù)自主創(chuàng)新的重要突破口,明確主攻方向,加大投入力度。
2.? 密碼法發(fā)布:10月26日下午,十三屆全國(guó)人大常委會(huì)第十四次會(huì)議表決通過(guò)密碼法,并表示該法將自2020年1月1日起施行
四、區(qū)塊鏈與數(shù)據(jù)庫(kù)的對(duì)比
NUS的Ooi教授認(rèn)為,區(qū)塊鏈和數(shù)據(jù)庫(kù)的主要區(qū)別在于,區(qū)塊鏈的設(shè)計(jì)首要目的是安全,數(shù)據(jù)庫(kù)的首要目的是效率,因此,有如下詳細(xì)對(duì)比分析:
對(duì)比點(diǎn)
設(shè)計(jì)選擇
原因
共識(shí)協(xié)議
區(qū)塊鏈
拜占庭故障容忍
互不信任的運(yùn)行環(huán)境
數(shù)據(jù)庫(kù)
宕機(jī)故障容忍
高可用的運(yùn)行要求
共識(shí)層位置
區(qū)塊鏈
頂層
去中心化,防單點(diǎn)
數(shù)據(jù)庫(kù)
存儲(chǔ)層之上
數(shù)據(jù)完備性
事務(wù)層
區(qū)塊鏈
順序執(zhí)行
易于理解、易用
數(shù)據(jù)庫(kù)
并發(fā)執(zhí)行
高吞吐
存儲(chǔ)
區(qū)塊鏈
歷史(賬本)+狀態(tài)
溯源,解決爭(zhēng)議
數(shù)據(jù)庫(kù)
狀態(tài)
節(jié)約存儲(chǔ)
索引
區(qū)塊鏈
Merkle Tree等
篡改可見(jiàn)性
數(shù)據(jù)庫(kù)
B樹(shù)
硬件友好
Sharding
區(qū)塊鏈
基于節(jié)點(diǎn)的分片
防止惡意分區(qū)
數(shù)據(jù)庫(kù)
基于服務(wù)的分片
負(fù)載均衡
五、區(qū)塊鏈與數(shù)據(jù)庫(kù)如何結(jié)合
我認(rèn)為,區(qū)塊鏈不可能替代數(shù)據(jù)庫(kù),區(qū)塊鏈和數(shù)據(jù)庫(kù)的結(jié)合有兩種思路:
1)??應(yīng)用數(shù)據(jù)庫(kù)的技術(shù)改進(jìn)區(qū)塊鏈的性能、可用性。例如,BigchainDB就是這一方向的典型應(yīng)用,數(shù)據(jù)庫(kù)學(xué)術(shù)界的研究大多基于這個(gè)方向。
2)??利用區(qū)塊鏈的不可變特性開(kāi)發(fā)不可變數(shù)據(jù)庫(kù)。例如,AWS的QLDB。
六、Bengchin Ooi在區(qū)塊鏈方面研究成果簡(jiǎn)介
1.???????Blockbench:發(fā)表在2017年SIGMOD,業(yè)界首個(gè)評(píng)估私鏈性能的標(biāo)準(zhǔn)化測(cè)試套件,由新加坡國(guó)立大學(xué)和浙江大學(xué)聯(lián)合開(kāi)源發(fā)布。
2.???????ForkBase,發(fā)表在2018年VLDB,是業(yè)界首個(gè)針對(duì)區(qū)塊鏈設(shè)計(jì)的原生存儲(chǔ)系統(tǒng)
3.???????Improving performance bottleneck with trusted h/w and sharding (SIGMOD 2019)
GaussDB
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。