首度解析曌鏈MIT商業應用落地技術之分片技術區塊鏈
分片技術應用在區塊鏈世界是一個令人興奮的創新,它讓我們看到區塊鏈技術在真實商業場景落地應用的希望,其也有效的幫助曌鏈MIT完美解決了多節點之間頻繁通信和隨機性的問題。
區塊鏈世界的三難問題
如曌鏈MIT白皮書所述,區塊鏈可擴展性問題與所謂三難(trilemma)問題有關,即區塊鏈最多擁有如下三點中的兩點:
l 完全去中心化
l 高處理速度——可擴展性(tps擴容)
l 高度安全
如果選擇擁有可擴展性和安全性(如同Visa卡后臺系統),這往往意味著具有較大吞吐量的中心化。而以太坊選擇的是去中心化和安全,舍棄了對處理速度的要求,這也是目前大多數公共區塊鏈平臺面臨的最大問題之一,隨著更多更復雜的DApps開始依賴于相同的一個公共區塊鏈網絡,遲緩的處理速度會使公共區塊鏈平臺缺失了大規模商業應用的基礎,所以幾乎所有的主流平臺都在努力提高每秒處理速度。為了獲得高處理速度,一種方式是增加區塊大小。另一種更為合適的方法是提高區塊鏈的延展性,分片技術,即把整個網絡劃分為多個片(shard),每個片具有獨立的狀態(當前的)和歷史(過去的)。
何為分片技術
在Devcon上,Vitalik Buterin通過小島的比喻來解釋分片:
想象把以太坊分裂成數千個島嶼。每個島嶼都處理自己的事務。島上每個人都有自己獨特的特點,每個人都屬于那個島。即可賬戶之間可以相互交流,他們可以盡情享受它的所有特征。如果他們想與其他島嶼聯系,他們將不得不使用某種協議。(Imagine that Ethereum has been split into thousands of islands. Each island can do its own thing. Each of the island has its own unique features and everyone belonging on that island i.e. the accounts, can interact with each other AND they can freely indulge in all its features. If they want to contact with other islands, they will have to use some sort of protocol.)
如何數據劃分
分片技術是一種基于數據庫分片傳統概念的擴容技術,它將數據庫分割成多個碎片并將這些碎片放置在不同的服務器上。在公共區塊鏈的情境中,網絡上的交易將被分成不同的碎片,其由網絡上的不同節點組成。因此,每個節點只需處理一小部分傳入的交易,并且通過與網絡上的其他節點并行處理就能完成大量的驗證工作。將網絡分割為碎片會使得更多的交易同時被處理和驗證。因此,隨著網絡的增長,區塊鏈處理越來越多的交易將成為可能。這種屬性也稱為水平擴容。假設你的網站擁有一個巨大的數據庫,這不只讓搜索速度下降,同時也影響到擴展性。對數據庫進行水平劃分(horizontal partition)并將其存放在不同的服務器上。數據庫的結構并沒有發生變化,但其內容減小了。
曌鏈MIT的解決方案
在控制所有的機器的情況下這種方式是很容易實現的,但在去中心化的情況下總會出現惡意節點,所以需要開發一套共識算法來處理這個問題。一個難點是分片基本上是隨機的,這意味著多數節點將頻繁地和對方進行通信,而且節點還分布在世界各個地方,所以當前分片技術必須在存儲數據量和節點間通信頻率達到平衡。
曌鏈MIT用其獨創的分片動態權重共識算法(SDWC)來證明相對應片間的通信,完美解決了多節點之間頻繁通信和隨機性的問題。
構架后成型的結構
曌鏈MIT把區塊鏈上某個時刻的狀態稱為全局狀態,這對所有人是可見的。為了分片,采用哈希樹(Hash tree/Merkle tree)對這個狀態進行樹狀的劃分,如下圖所示。
曌鏈MIT所采用的分片技術落地后會發生什么
l 區塊鏈的狀態將被分片
l 賬戶將處于某個分片中
l 賬戶只能與同個分片中的賬戶進行通信
l 賬戶與賬戶之間的通信將由分片動態權重共識算法(SDWC)來驗證
最后,分片技術應用在區塊鏈世界是一個令人興奮的創新,它讓我們看到區塊鏈技術在真實商業場景落地應用的希望,它可以在不影響去中心化和安全性的情況下解決擴容問題。
聯系方式:
網址: mit.club
曌鏈公眾號QR碼:
1.TMT觀察網遵循行業規范,任何轉載的稿件都會明確標注作者和來源;
2.TMT觀察網的原創文章,請轉載時務必注明文章作者和"來源:TMT觀察網",不尊重原創的行為TMT觀察網或將追究責任;
3.作者投稿可能會經TMT觀察網編輯修改或補充。