要了解區(qū)塊鏈和傳統(tǒng)數(shù)據(jù)庫之間的區(qū)別,值得考慮如何設(shè)計和維護它們。那么區(qū)塊鏈與傳統(tǒng)數(shù)據(jù)庫有什么區(qū)別?其實想知道這個問題的 批評者認(rèn)為區(qū)塊鏈其實是一種更復(fù)雜、更昂貴的數(shù)據(jù)庫。雖然區(qū)塊鏈與數(shù)據(jù)庫這兩種技術(shù)都提供數(shù)據(jù)存儲和管理等功能,但區(qū)塊鏈有一個獨特的特性,即數(shù)據(jù)庫永遠(yuǎn)不會復(fù)制。
傳統(tǒng)數(shù)據(jù)庫
傳統(tǒng)數(shù)據(jù)庫使用客戶端-服務(wù)器網(wǎng)絡(luò)體系結(jié)構(gòu)。在這里,用戶可以修改存儲在集中式服務(wù)器上的數(shù)據(jù)。數(shù)據(jù)庫的控制權(quán)仍由指定的機構(gòu)負(fù)責(zé),該機構(gòu)在提供對數(shù)據(jù)庫的訪問權(quán)限之前會對客戶端的憑據(jù)進行身份驗證。由于該權(quán)限負(fù)責(zé)數(shù)據(jù)庫的管理,因此,如果該權(quán)限的安全性受到損害,則可以更改甚至刪除數(shù)據(jù)。
區(qū)塊鏈數(shù)據(jù)庫
區(qū)塊鏈數(shù)據(jù)庫由幾個分散的節(jié)點組成。每個節(jié)點都參與管理:所有節(jié)點都會驗證對區(qū)塊鏈的新添加,并能夠?qū)⑿聰?shù)據(jù)輸入數(shù)據(jù)庫。為了添加到區(qū)塊鏈,大多數(shù)節(jié)點必須達成共識。這種共識機制保證了網(wǎng)絡(luò)的安全性,使其難以被篡改。
在比特幣中,共識是通過挖掘達成的,而以太坊則試圖使用股權(quán)證明作為其共識機制。
誠信透明
區(qū)塊鏈技術(shù)與傳統(tǒng)數(shù)據(jù)庫技術(shù)不同的一個關(guān)鍵屬性是公共可驗證性,其完整性和透明性使其成為可能。
· 完整性:每位用戶都可以確保自記錄之日起,他們所檢索的數(shù)據(jù)就沒有損壞和更改。
· 透明度:每個用戶都可以驗證隨著時間的推移如何追加區(qū)塊鏈。
CRUD與讀寫操作
在傳統(tǒng)數(shù)據(jù)庫中,客戶端可以對數(shù)據(jù)執(zhí)行四個功能:創(chuàng)建,讀取,更新和刪除。區(qū)塊鏈被設(shè)計為僅附加結(jié)構(gòu)。用戶只能以其他塊的形式添加更多數(shù)據(jù)。以前的所有數(shù)據(jù)均已永久存儲,無法更改。因此,與區(qū)塊鏈相關(guān)的唯一操作是:
· 讀取操作:這些查詢和從區(qū)塊鏈中檢索數(shù)據(jù)。
· 寫操作:這些將更多數(shù)據(jù)添加到區(qū)塊鏈上。
驗證與寫作
區(qū)塊鏈具有兩個功能:驗證交易和編寫新交易。交易是一種更改存在于區(qū)塊鏈上的數(shù)據(jù)狀態(tài)的操作。雖然區(qū)塊鏈上的過去條目必須始終保持不變,但是新條目可以更改過去條目中的數(shù)據(jù)狀態(tài)。例如,如果區(qū)塊鏈記錄我的比特幣錢包有100萬個BTC,則該數(shù)字將永久存儲在區(qū)塊鏈中。當(dāng)我花費200000BTC時,該交易記錄在區(qū)塊鏈上,使我的余額達到800000BTC。但是,由于只能追加區(qū)塊鏈,對于那些關(guān)心的人,我的交易前余額100萬比特幣也永久保留在區(qū)塊鏈上。這就是為什么區(qū)塊鏈通常被稱為不可變和分布式賬本的原因。
簡而言之,就是分散控制
分散控制消除了集中控制的風(fēng)險。任何對集中式數(shù)據(jù)庫有足夠訪問權(quán)限的人都可以破壞或破壞其中的數(shù)據(jù)。因此,用戶依賴數(shù)據(jù)庫管理員的安全基礎(chǔ)結(jié)構(gòu)。
區(qū)塊鏈技術(shù)使用分散式數(shù)據(jù)存儲來避免此問題,從而將安全性構(gòu)建到其結(jié)構(gòu)中。
盡管區(qū)塊鏈技術(shù)非常適合記錄某些種類的信息,但是傳統(tǒng)數(shù)據(jù)庫更適合于其他種類的信息。對于每個組織來說,至關(guān)重要的是要了解它想要從數(shù)據(jù)庫中獲取什么,并在選擇一個數(shù)據(jù)庫之前對照每種數(shù)據(jù)庫的優(yōu)勢和漏洞進行評估。想了解更多關(guān)于數(shù)據(jù)庫的信息,請繼續(xù)關(guān)注中培偉業(yè)。