Infrastructure·7 dk okuma

Archive node'lar netleşiyor: aslında ne için ödeme yapıyorsunuz

"Archive" sözcüğü RPC sağlayıcıları arasında gevşek bir şekilde kullanılıyor ve gerçek bir archive node ile onun kılığına girmiş bir full node arasındaki fark, dönen bir sorgu ile 404 veren bir sorgu arasındaki farktır. İşte archive'ın depolama katmanında gerçekte ne anlama geldiği ve çalıştırdığınız sorgular için neden önemli olduğu.

Full node ile archive node karşılaştırması

Bir full node her block'u doğrular ve güncel state trie'yi artı geçmiş state'in kabaca son 128 block'unu tutar. Bir hesabın bakiyesini şimdi söyleyebilir, ancak 10,000,000 numaralı block'taki bakiyesini sorun — hiçbir şey yeniden hesaplamaz, çünkü ara state prune edilmiştir. Bir archive node her geçmiş state root'u tutar, böylece geçmişteki herhangi bir block'ta state sorgularını doğrudan yanıtlayabilir. Bu bütünlük, değer önerisinin tamamı ve maliyetin tamamıdır.

Disk faturası neden baskın

Ethereum archive state birden fazla terabayttır ve sürekli büyür; BNB Smart Chain ve Polygon gibi yüksek verimli zincirler için de aynısı orantılı olarak geçerlidir. Archive node'lar NVMe üzerinde yaşar çünkü çok terabaytlık bir trie'ye rastgele okuma gecikmesi, dönen disklerde verimi mahveder. İşte bu NVMe ayak izi — CPU değil, bant genişliği değil — archive erişiminin neredeyse her yerde sıradan RPC'nin üzerinde fiyatlandırılmasının sebebidir.

Onu gerektiren sorgular

Geçmiş bir block etiketiyle herhangi bir eth_call veya eth_getBalance, eski işlemler üzerinde trace_block ve debug_traceTransaction, muhasebe için token bakiyesi yeniden yapılandırması ve çoğu analitik geriye doldurması — hepsi archive state'e ihtiyaç duyar. Ürününüz geçmiş pozisyonları hesaplıyor, defterleri mutabık kılıyor veya işlemleri yeniden oynatıyorsa, bir full node tam da önemli olan isteklerde sessizce başarısız olacaktır.

Bir sağlayıcının bunu gerçekten sunduğunu nasıl doğrularsınız

Etikete güvenmeyin — test edin. Bir contract call seçin, birkaç milyon block geçmişte bir block etiketiyle çalıştırın ve bir "missing trie node" veya "state not available" hatası yerine bir sonuç aldığınızı doğrulayın. Eski bir hash'e karşı debug_traceTransaction çalıştırın. İkisinden biri başarısız olursa, fiyatlandırma sayfası ne derse desin bir full node üzerindesiniz.

1st Node Engineering

Sıkça sorulanlar

Her zaman bir archive node'a ihtiyacım var mı?

Hayır. Yalnızca güncel state'i ve son block'ları okuyorsanız, bir full node daha ucuz ve yeterlidir. Geçmiş state'i sorguladığınız, eski işlemleri trace ettiğiniz veya analitik geriye doldurması yaptığınız an archive'a ihtiyacınız olur.

Archive verisi ile indekslenmiş veri farklı mı?

Evet. Archive node'lar ham geçmiş state'i RPC üzerinden sunar; indeksleyiciler bunun üzerinde daha üst düzey veri kümeleri (zaman içinde bakiyeler, token transferleri) türetir. Güvenilir indeksleme, altta yatan bir archive kaynağına bağlıdır.

İlgili

Bakiye yükle, anahtarını al, yayına çık.

Self servis. Kripto ya da kartla öde. Krediyle ölçümlenir — ağır ilkel yapılar daha pahalı, basitler ucuz.

API anahtarı al