
Sui ,一個 Layer 1 區塊鏈網絡,推出了 Tidehunter,這是一款全新的儲存引擎,旨在滿足當代區塊鏈基礎設施中常見的性能需求、數據存取特性和操作限制。
該系統定位為驗證節點和全節點使用的現有資料庫層的潛在繼任者,這反映了為應對生產區塊鏈環境不斷變化的規模和工作負載特徵而對核心基礎設施進行現代化改造的更廣泛努力。
Sui最初依賴 RocksDB 作為其主要鍵值儲存層,RocksDB 是一種被廣泛採用且成熟的解決方案,能夠實現快速的協定開發。隨著平台擴展和維運需求增加,通用 LSM 樹資料庫的根本限制在類似生產環境中日益凸顯。
大量的調優和深厚的內部專業知識也無法完全解決與區塊鏈系統典型存取模式相衝突的結構性效率低下問題。這促使我們進行策略調整,轉而設計一款專門針對區塊鏈工作負載優化的儲存引擎,最終開發了 Tidehunter。
這項決定的核心因素是持續的寫放大。在實際的Sui工作負載下進行的測量顯示,寫入放大倍率約為10到12倍,這意味著相對較小的應用程式資料量會產生不成比例的大量磁碟流量。雖然這種現像在基於LSM的系統中很常見,但它會降低有效儲存頻寬,並加劇後台壓縮和讀取操作之間的爭用。在寫密集型或讀寫均衡的環境中,隨著吞吐量的增加,這種開銷會變得越來越棘手。
在高效能叢集上進行的負載測試證實了這種影響,儘管應用程式寫入速率適中,但磁碟利用率接近飽和,這凸顯了傳統儲存架構與現代區塊鏈效能要求之間日益增長的不匹配。
我們從零開始建立了一個資料庫,因為現有的資料庫無法跟上區塊鏈的大規模發展。
— Sui (@SuiNetwork) 2026年2月3日
結果如何?磁碟寫入次數減少 10 倍,延遲更低,並且在持續負載下效能穩定。
儲存一度成為瓶頸。現在這種情況已經改變了。
隆重推出 Tidehunter… pic.twitter.com/v4MTKzzfGk
Tidehunter架構:針對區塊鏈存取模式和持續高吞吐量工作負載優化的儲存引擎
Sui和類似的區塊鏈平台的儲存行為主要由少數幾種重複出現的資料存取模式主導,而 Tidehunter 的架構正是圍繞這些特性而設計的。大部分狀態都使用均勻分佈的加密雜湊金鑰進行尋址,這些金鑰通常會對應到相對較大的記錄,雖然消除了局部性,但簡化了一致性和正確性。
同時,區塊鏈嚴重依賴追加式結構,例如共識日誌和檢查點,其中資料按順序寫入,之後使用單調遞增的標識符進行檢索。這些環境本身也是寫入密集型的,同時仍需要在對延遲要求極高的讀取路徑上實現快速訪問,因此過度的寫入放大會直接威脅吞吐量和響應速度。
Tidehunter 的核心是一個高並發寫入管線,旨在充分利用現代固態儲存的平行效能。傳入的寫入操作會透過一個無鎖的預寫日誌進行處理,該日誌能夠支援極高的操作速率,並將爭用限制在最小的分配步驟內。
資料複製並行進行,系統透過使用可寫入的記憶體映射檔案避免了每次操作的系統調用,而持久性則由後台服務非同步處理。這種設計產生了一條可預測且高度並行的寫入路徑,能夠充分利用磁碟頻寬而不會受到 CPU 開銷的限制。
減少寫入放大被視為一項主要架構目標,而非最佳化步驟。 Tidehunter 不會將日誌用作暫存區,而是將資料永久儲存在日誌段中,並建立直接引用偏移量的索引,從而避免重複重寫值。
索引採用高度分片的方式,以降低寫入放大並提高並行性,從而無需傳統的 LSM 樹結構。對於以追加為主的資料集(例如檢查點和共識記錄),專門的分片策略可將近期資料緊密分組,從而即使歷史資料不斷增長,也能保持寫入開銷的穩定。
對於使用均勻分佈雜湊鍵尋址的表,Tidehunter 引入了可預測、低延遲存取最佳化的均勻查找索引。此索引不會發出多個小的隨機讀取請求,而是讀取一個統計上包含所需條目的稍大的連續區域,從而使大多數查找操作能夠在一次磁碟往返中完成。
這種方法有意犧牲部分讀取吞吐量,換取更低、更穩定的延遲。這種權衡之所以可行,是因為減少寫入放大可以釋放大量磁碟頻寬用於讀取流量。結果是,在交易執行和狀態驗證等對延遲敏感的操作上,效能更加穩定。
為了進一步控制大規模下的尾延遲,Tidehunter 將直接 I/O 與應用程式管理的快取結合。大型歷史讀取操作會繞過作業系統頁面緩存,從而避免快取污染;而最近和頻繁存取的資料則會根據應用程式層級的存取模式保留在使用者空間快取中。結合其索引佈局,這可以減少不必要的磁碟往返次數,並在持續負載下提高效能可預測性。
資料生命週期管理也得到了簡化。由於記錄直接儲存在日誌段中,因此一旦過期的日誌檔案超出保留期限,即可透過刪除整個日誌檔案來清除過時的歷史資料。這避免了基於 LSM 的資料庫所需的複雜且 I/O 密集的壓縮機制,即使資料集不斷擴展,也能實現更快、更可預測的修剪。
在模擬真實Sui使用量的工作負載下,Tidehunter 的吞吐量和延遲均高於 RocksDB,同時磁碟寫入頻寬消耗也顯著降低。最顯著的改進在於幾乎完全消除了寫入放大,這使得磁碟活動能夠更緊密地匹配應用程式層級的寫入操作,從而為讀取操作保留了 I/O 容量。這些優勢在受控基準測試和完整的驗證器部署中均得到驗證,表明其優勢不僅限於合成測試。
評估採用與資料庫無關的基準測試框架,該框架模擬了插入、刪除、點查找和迭代工作負載等實際混合場景。測試參數化以反映類似 Sui 的鍵分佈、值大小和讀寫比率,並在符合建議驗證器規範的硬體上執行。在這些條件下,Tidehunter 始終保持比 RocksDB 更高的吞吐量和更低的延遲,尤其在寫入密集型和均衡場景下優勢最為顯著。
驗證器層級的基準測試進一步證實了上述結果。當直接整合到Sui中並承受持續的事務負載時,使用 Tidehunter 的系統在 RocksDB 支援的部署開始出現磁碟利用率上升和效能下降的運行點上,仍能保持穩定的吞吐量和更低的延遲。測量結果顯示,磁碟壓力降低、CPU 使用率更穩定、最終延遲降低,凸顯了在類似負載下兩者行為的明顯差異。
Tidehunter 旨在切實滿足長時間運作、高吞吐量區塊鏈系統的運維需求。隨著區塊鏈從突發式工作負載轉向持續性工作負載,儲存效率已成為協定效能的基礎要求。 Tidehunter 的設計體現了基礎設施向下一階段規模化發展方向的轉變,更多技術細節和部署計劃預計將隨後公佈。
… 



