上一講中,我們簡單提到了什么是分片。今天的文章我們會詳細介紹以太坊的分片技術。
什么是分片?
分片是數據庫系統中抽離而來的一個詞。我們先來介紹下數據庫中分片的概念。假設你的網站上有大量的數據庫存儲,這不僅會導致數據搜索速度減慢,還會影響可擴展性。這種情況下我們可以做些什么呢?
能不能把數據橫向切分成小的數據表格,并把他們存儲在不同的數據庫服務器中?
你或許會問為什么要進行橫向切分而不是垂直切分呢?這是由于數據表格本身的設計導致的。
我們現在進行垂直切分。
注意到了嗎?垂直切分后會把整個數據庫表切割成兩個完全不相干的數據表格。
但是橫向切分的話,還是同一個由A,B,AB,A-B構成的數據庫,只不過每個數據庫中的數據存量減少了。這些小的數據庫就是大的數據庫的分片。每一個分片的表格結構都相同。
科幻電影《第九區》導演推出基于Avalanche的Web3游戲Off the Grid:4月5日消息,視頻游戲開發商Gunzilla Games今天宣布,推出基于Avalanche的Web3大逃殺射擊游戲Off the Grid (OTG) ,將于今年某個時間正式上線。科幻電影《第九區》導演尼爾·布洛姆坎普是該公司的管理者之一,其構想了整個OTG世界觀。[2023/4/5 13:46:36]
區塊鏈中的分片
上一講中,我們提到過以太坊共識的問題在于所有的節點都必須對同一筆交易進行計算和確認。整個計算過程又慢又繁瑣。分片技術可以如何改善這個問題呢?
現在我們來設想一下:整個以太坊區塊鏈就是一個“萬國領土”,可以分割給所有人。這個萬國領土的默克爾樹根會切分成大大小小不同的分片根,每一個分片根都擁有自己的國度。讓我們以默克爾樹的形式把這些國度表現出來:
Coinbase:不再使用Silvergate作為Prime客戶的美元銀行合作伙伴:金色財經報道,Coinbase宣布,為其 Prime 客戶將美元銀行業務從 Silvergate Bank 替換為 Signature Bank,此更改特定于美元銀行業務,不影響英鎊或歐元的付款指令,并立即生效。此外,Coinbase表示對Silvergate的企業風險敞口微乎其微。
此前消息,Silvergate 推遲公布年報,或面臨美司法部、銀行監管機構等調查。[2023/3/2 12:39:15]
這就是整個萬國領土切分成多個小國的簡單結構圖。現在讓我們來看一下內部機制。
分片啟動后會發生什么呢?
*萬國領土被分割成多個分片*每一個獨特的賬戶都代表著一個分片*只有同一個分片里的賬戶能相互轉賬。
Animoca Brands公布支持Binance行業復蘇基金的錢包地址:金色財經報道,Animoca Brands 在社交媒體發文表示,為幫助 Web3 建設者度過困難時期,此前已承諾對 Binance 行業復蘇基金的支持,特公開支持該基金的公共錢包地址:0xE6e3e3526336Ba2DAF0B37B9C516f52E4Af2ef1a。[2022/12/1 21:14:39]
在以太坊的開發者大會中,Vitalik是這樣解釋分片的:
假設以太坊被分割成成千上萬個小的島嶼。每個島嶼都是自治的。每個島嶼都有自己的特色,島嶼上的每個人都可以跟其他島民互動,并且隨意享用這個島嶼的特色。如果你想跟其他島嶼互動,就必須使用某種特定的協議。
那么問題來了,這種分片技術對區塊鏈有什么影響呢?我們先來看一下比特幣和以太坊中一個正常的區塊長什么樣子?
數字銀行Chime宣布裁員12%:金色財經報道,數字銀行Chime今天證實,它正在裁員12%的員工,即約160人。Chime聯合創始人Chris Britt表示,此舉是“無論市場狀況如何”都能幫助公司蓬勃發展的眾多舉措之一。并表示和聯合創始人Ryan King正在重新調整營銷支出、減少承包商數量、調整工作空間需求并重新談判供應商承包商。
金色財經此前報道,數字銀行Chime已聘請高盛幫助其安排在美國進行首次公開發行(IPO)的相關工作。Chime在去年8月由紅杉資本領投的融資中估值達250億美元,預計IPO估值可能達到400億美元。[2022/11/3 12:12:57]
一個區塊中由區塊頭和包含所有交易的區塊主體構成。所有交易的默克爾根都存在在區塊頭中。
現在讓我們來自問一下:比特幣真的需要區塊嗎?真的需要區塊鏈嗎?中本聰本可以把上一筆交易的哈希記錄在一筆新的交易之中,用這種簡單的方式就可以構成一條交易鏈。
匿名用戶以125 ETH購買73個Otherdeed虛擬地塊:9月17日消息,一名來自OKX交易平臺的匿名用戶以125.1176 ETH購買了73個Otherdeed虛擬地塊,價值接近20萬美元,交易錢包地址為0xAE0cc3ef506dd89658A6e0d034E7719709de38F8。(CryptoTimes)[2022/9/17 7:03:26]
把交易都記錄在區塊中的目的是為了創造一層交互,讓整個過程更加可擴展。以太坊想做的是實現兩層交互。
第一層
第一層是交易組。每一個分片都有自己的交易群。交易群包括交易群頭和交易群主體。
交易群頭包括左右兩個部分。左側包含的信息如下:
*分片ID:交易組所屬的分片ID*前狀態根:這是交易執行前分片43的根狀態。*后狀態根:交易執行后分片43的根狀態。
右側信息如下:
*右側是隨機選取的需要在分片內確認交易的確認者。*交易組主體*包含了分片中所有交易的ID。
第一層的特征
*每一筆交易對應著它所屬分片的ID。*某特定分片中的一筆交易表明這筆交易的發起和接收賬戶都在這個特定的分片中。*交易群組中的交易只存在于分片ID之中,具有特定的前后狀態根。
現在我們來看一下第二層交互
別跑!其實非常簡單。
這就是一般的區塊鏈結構,只不過現在包括兩個主要的根:
*狀態根(stateroot)*交易群根
狀態根代表了整個以太系統的根。我們之前提到過,這個系統被切分成大大小小的分片,對應著它們各自的分國度。
交易群根包含了某特定區塊里所有的交易群。
第二層的特征
第二層是一個簡單的區塊鏈,記錄交易群而不是交易本身。交易群合法的唯一條件是:
*前狀態根與整個系統的分片根相符。*交易群組中的所有簽名都已經得到了確認。
交易群進入區塊后,整個系統的根就變成了特定分片ID的后狀態根。
那么跨分片通信是怎么實現的呢?還記得之前的島嶼比喻嗎?
分片就相當于島嶼。它們如何互相聯系呢?記住,分片的目的是讓很多平行交易同時發生來提高性能。如果以太坊允許任意的跨分片交流,那么整個分片就毫無意義了。
因此以太坊協議要如何設計來允許跨分片通信呢?以太坊使用收據實現跨分片通信。
如你所見,每筆交易的收據只需通過這個交易群的多個默克爾根就可以輕松訪問。分片中的每一筆交易都會做兩件事情:
*改變所屬分片的狀態*產生收據
數據存儲在分布式共享內存中,其他分片可以看到,但是無法修改。通過數據跨分片交流如下:
實行分片技術的挑戰有哪些?
*我們需要一種機制來知道每個節點執行了哪個分片,這種機制還要能保證系統安全又高效。*根據以太坊研究員VladZamfir的說法,在實現分片之前需要以太坊需要先轉到POS算法。節點之間可以互不信任,但是也需要能夠達成共識。如果某筆交易分割成多個分片,并分配給節點A和節點B,節點A和B需要利用某種機制來證明自己完成了分片中各自對應的工作量。
總結
隨著以太坊的進一步崛起,大都會和寧靜階段的到來,分片對以太坊越來越重要。如果以太坊想要演化成新一代的互聯網,必須要解決可拓展性問題。采用分片后的以太坊會如何發展,讓我們拭目以待。
來源鏈接:None
免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。
本文來源于非小號媒體平臺:
行走的翻譯C
現已在非小號資訊平臺發布19篇作品,
非小號開放平臺歡迎幣圈作者入駐
入駐指南:
/apply_guide/
本文網址:
/news/9602874.html
免責聲明:
1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場
上一篇:
幣安為何推出第三條鏈?這對BNB意味著什么?
近期無必要不出駐馬店,確需離開的駐馬店的,要做好個人防護,不到疫情嚴重的國家和地區去,不到國內中高風險地區去.
1900/1/1 0:00:00今日早盤比特幣跌破30000美元/枚,為1月5日以來首次,24小時內跌超16%。據比特幣平臺數據顯示,比特幣跌破30000美元關口.
1900/1/1 0:00:00親愛的用戶: 為了提供更好的合約交易體驗,DigiFinex已對合約體驗金使用規則進行調整,調整后合約體驗金使用規則如下:合約體驗金使用規則:體驗金可作為合約資產進行交易.
1900/1/1 0:00:00非必要不要前往有疫情風險的地區,如必須外出旅行,要認真做好自我和同行人員健康狀況評估,及時了解旅途及目的地疫情防控政策.
1900/1/1 0:00:00親愛的用戶: BigONE將于2021年1月23日7:00進行現貨交易系統升級維護,預計維護時間為2小時。此次維護范圍涉及:資金賬戶-杠桿賬戶劃轉、資金賬戶-現貨賬戶劃轉、充值、提現等系統服務.
1900/1/1 0:00:00Bitcoinwin數字貨幣平臺行情顯示,BTC連續多日維持33000-38000一帶進行高位震蕩,方向局勢不明,BTC顯然沒了當初那份上漲的強勁動力,K線形態上似乎也有了到頂之勢.
1900/1/1 0:00:00