比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

一文了解Turbo-Geth客戶端最新改進_TUR

Author:

Time:1900/1/1 0:00:00

編者按:本文來自:以太坊愛好者,作者:GiulioRebuffo,翻譯:阿劍,Odaily星球日報經授權轉載。幾個月以前,我加入了Turbo-Geth團隊,開始主動給Trubo-Geth客戶端貢獻代碼。Turbo-Geth客戶端是Geth客戶端的一個另類版本,其目標是做得比原有的客戶端運行速度更快、更高效。那么Turbo-Geth實現這個目標的辦法包括下面幾項:進一步優化數據庫結構在需要與狀態數據交互的場合,減少對數據庫的讀、寫操作優化狀態樹操作的效率在本文中,我會著重指出Turbo-Geth和Geth在數據庫上的不同之處。主要的區別在于:不同的數據庫按桶來細分數據庫那么,本文的主要內容也就跟這兩點相關。什么是Bolt,它跟LevelDB的區別在哪里?

比特小鹿已有約2.3萬臺新礦機抵達不丹礦場:8月8日消息,據吳說區塊鏈報道,吳忌寒旗下比特小鹿(Bitdeer)已完成在不丹的挖礦設施建設,截至7月底已有約23,000臺新購買的礦機抵達不丹礦場,但尚未通電,正在進行通電測試,這些新機器預計將提供大約2.5EH/s的哈希率。[2023/8/8 21:31:08]

Bolt和LevelDB其實非常相似,兩者都是“鍵-值對”存儲,設計目標都是為不需要完整數據庫服務器的項目提供簡單、快捷且可靠的數據庫。Geth選用的數據庫是LevelDB,而Turbo-Geth選用的是Bolt。但兩者也有一個關鍵區別:組織數據的方式。LevelDB是一個LSM數據庫,而Bolt使用bucket,而且每一個bucket都包含著一個B+-Tree結構。我們可以把一個bucket當作“大數據庫里的一個小數據庫”。那么,兩者之間的主要區別在于:LSM數據庫是為重度添加操作和范圍掃描操作優化的,而不是為隨機讀取的性能優化的;為了提供一致性,它不允許同時對數據庫執行讀、寫操作。也是出于性能考慮,這種數據庫是沒有實現原子性的。Bolt則反之,插入操作速度較慢,但是隨機讀取速度較快,實現了原子性,而且可以同時對數據庫讀寫。我們再稍微解釋一下原子性:原子性:“原子”意味著不可分割。假設現在我們要給一個數據庫存儲多個哈希值,而其中一個在插入數據庫時失敗了,如果此時所有哈希值的操作都會同時撤銷,這就叫做原子性。Turbo-Geth就有這樣的特性,只有所有哈希值的插入操作都成功時,這個操作才能成功。而沒有實現原子性的數據庫則意味著,必須使用一個workaround以安全地將數據插入數據庫。換句話來說,在這個點上,我們覺得Bolt更好,因為他在給數據庫添加數據時更安全。數據庫的組織

NULS正式上線EVM Layer 2兼容網絡ENULS:2月15日消息,NULS宣布由其社區發起的EVM兼容網絡ENULS于今日上線。ENULS使用NULS作為主鏈資產,依托跨鏈生態Nerve Network完成鏈上資產與多鏈之間的交互。低成本、低門檻,以及全方位的社區、技術、資金等資源扶持將有助于EVM生態項目在ENULS網絡快速部署。

據悉,目前Mathwallet、Nabox、ONTO、Coinhub等錢包生態,NerveBridge、CUBISWAP、Wormhole 3、SwapBox、Bridge Oracle等項目已開始在ENULS主網部署。[2023/2/15 12:08:36]

如前所述,Turbo-Geth是切分成多個bucket的。每個bucket都是大數據庫中的一個小數據,各自包含了一個B+-Tree結構。下面便是Turbo-Geth數據庫在區塊高度9,346,492處的切分:

彭博億萬富翁指數:SBF的凈資產已降至1美元:11月11日消息,據FXHedge發推稱,彭博億萬富翁指數顯示,FTX創始人Sam Bankman-Fried(SBF)的凈資產已從160億美元降至1美元。

此前金色財經報道,SBF的凈資產估值于11月7日約為160億美元,在11月8日較前一天下跌93.8%至9.91億美元。[2022/11/11 12:49:41]

-Turbo-Geth的Archive節點的數據區分-Geth客戶端的Archive大小:3.7TBParity客戶端的Archive大小:3.6TBTurbo-Geth客戶端的Archive大小:652.62GB每一個部分都存儲在一個bucket里面。其中主要部分的簡要解釋如下:原象:哈希值與地址之間的管理,以及存儲位置哈希值與存儲位置之間的關聯收據:交易收據合約存儲內容的歷史:合約存儲內容的變更歷史賬戶歷史:賬戶的變更歷史區塊頭:每個區塊的區塊頭區塊體:每個區塊的區塊體合約存儲內容:就是合約存儲內容ChangeSet:數據庫變更歷史賬戶:賬戶使用這么多bucket,是為了讓構成大數據庫的各B+-Tree樹高不至于太高,這樣跟數據庫的交互就會比較容易。換句話說,這是在使用多個bucket來提高讀取數據庫的性能。另一種備選方案:BadgerDB

美聯儲:美國所有銀行在從事加密活動之前必須提前通知:金色財經報道,隨著銀行加速涉足加密資產領域,美聯儲向他們發出了警告。它發出一封信,要求所有銀行評估與其加密資產活動相關的合法性和風險,并提前通知他們在美聯儲的聯絡點。它還鼓勵國有銀行聯系其州監管機構。

該文件非常廣泛地將加密資產描述為使用加密技術的任何數字資產。與此同時,本周早些時候,美聯儲發布了關于如何評估哪些銀行可以訪問具有“新”章程的銀行的主賬戶的指南,其中包括加密行業的銀行。(ledgerinsights)[2022/8/17 12:31:43]

在切換到Bolt之后,Turbo-Geth在處理隨機鍵時遇到了一些問題,因為Bolt會在提交數據之前對這些鍵進行排序,又因為這些哈希值都是隨機的,而且數量很多,所以產生了大量的排序需求,然后導致大量的寫入放大現象。而BadgerDB使用log-structured-merge模式,似乎是一個更好的選擇。這個問題仍在研究當中,不過,我們已經實現了一個workaround來解決這個問題。這里有一個圖表,顯示了BadgerDB和BoltDB在整體性能上的對比:

結語

Turbo-Geth客戶端通過下列手段來優化以太坊的性能:使用多個bucket,以更迅速地檢索某些數據片使用B+-Tree而非LSM如果你想給我們捐贈,可以通過Gitcoin。

Tags:ETHGETGETHTURFomo EthGETC幣togetherbnb游戲官網Omniunit Cash Features

火幣交易所
一場收購引發的“宮斗劇”:Steemit團隊與社區宣戰_EMI

編者按:本文來自巴比特資訊,作者:YilunCheng,編譯:Wendy,星球日報經授權發布。去中心化內容平臺Steemit最近與波場基金會合作了.

1900/1/1 0:00:00
以太坊2.0:信標鏈驗證者的旅程_POC

編者按:本文來自藍狐筆記,作者AlexT,譯者SIEN,Odaily星球日報經授權轉載。 前言:以太坊phase0的核心是信標鏈,它負責協調以太坊網絡.

1900/1/1 0:00:00
讀懂以太坊的生命之樹_ABS

編者按:本文來自鏈聞,撰文:RyanSeanAdams,加密貨幣投資基金MythosCapital創始人、電子雜志Bankless主編,編譯:詹涓,Odaily星球日報經授權轉載.

1900/1/1 0:00:00
從山寨幣相關性看比特幣后市投資策略_Chain

編者按:本文來自中本小蔥,Odaily星球日報經授權發布。比特幣在2月13號突破10,497美元創下2020年的新高,自年初以來上漲了42%.

1900/1/1 0:00:00
央行數字貨幣最新動向:這8國央行誰都不敢掉隊_CBD

編者按:本文來自中本小蔥,Odaily星球日報經授權發布。各國對發行中央銀行數字貨幣的態度始終是加密貨幣行業值得關注的重要動向.

1900/1/1 0:00:00
海外周報 | Compound宣布推出治理代幣COMP;Cosmos ICF基金會分拆為獨立公司Informal(2.24—3.1)_TIK

Odaily星球日報出品作者|王也編輯|郝方舟 上周,海外項目進展進度減慢,明星項目表現較為平淡,多為周邊生態合作和代幣銷毀及技術升級的進展消息.

1900/1/1 0:00:00
ads