Dolos Porta un Nodo Dati Leggero Basato su Rust agli Sviluppatori di Cardano
TxPipe ha presentato Dolos durante le Cardano Developers Office Hours, descrivendo un nodo dati Cardano leggero basato su Rust progettato per ridurre il carico dell'infrastruttura e fornire agli sviluppatori un accesso flessibile ai dati blockchain.
By SongMarketCap
Le Cardano Developers Office Hours hanno ospitato Santiago Carmuega, CEO e fondatore di TxPipe, per una presentazione tecnica su Dolos, un nodo dati Cardano leggero scritto in Rust. La sessione si è concentrata sulla diversità dell'infrastruttura, la modularità e l'accesso semplificato ai dati della blockchain di Cardano per applicazioni, portafogli e servizi backend.
Dolos è stato presentato come uno strumento complementare, non un sostituto del nodo Cardano esistente. Il suo scopo è più ristretto, fornendo uno strato di query flessibile per i team che necessitano di dati affidabili della catena senza dover gestire un'intera infrastruttura.
Dolos Si Rivolge all'Esperienza degli Sviluppatori di Cardano e all'Accesso ai Dati
TxPipe costruisce strumenti open source per gli sviluppatori Cardano, e Dolos si inserisce in questo più ampio obiettivo di migliorare l'esperienza degli sviluppatori. Carmuega ha detto che uno dei primi punti critici che ha incontrato nell'ecosistema Cardano è stata la difficoltà di ottenere dati dal nodo.
In alcuni ecosistemi blockchain, gli sviluppatori possono interrogare un endpoint e ricevere informazioni sull'ultimo blocco, una transazione o lo stato di un indirizzo. In Cardano, questo processo è più tecnicamente impegnativo perché coinvolge protocolli mini Ouroboros, formati binari e un modello di rete personalizzato.
Secondo la presentazione, Dolos è stato creato come un nodo alternativo e complementare per un caso d'uso specifico, offrendo agli sviluppatori un modo più ricco e flessibile di interrogare i dati dalla catena Cardano. Ciò lo rende rilevante per i team che sviluppano applicazioni, portafogli e servizi dati che non necessitano di partecipare al consenso o produrre blocchi, ma hanno comunque bisogno di un backend stabile per leggere i dati della catena.
Carmuega ha anche confrontato Dolos con DB Sync. DB Sync rimane uno strumento comune per un accesso SQL approfondito ai dati di Cardano, ma richiede un nodo Cardano, PostgreSQL e un lavoratore di sincronizzazione. Dolos si rivolge a casi d'uso in cui le applicazioni conoscono già i dati specifici di cui hanno bisogno e possono utilizzare API più efficienti invece di gestire un intero backend SQL dinamico.
Nodo Cardano Basato su Rust Supporta Blockfrost, Kupo e UTXRPC
Dolos espone diverse superfici API per applicazioni esterne. Una di queste è un'interfaccia gRPC che utilizza la specifica UTXRPC, progettata per casi d'uso in cui una comunicazione binaria compatta e query a bassa latenza sono importanti. Dolos include anche un'API modellata su Blockfrost, permettendo ai team che già utilizzano endpoint in stile Blockfrost di puntare applicazioni esistenti verso Dolos con meno cambiamenti di integrazione.
TxPipe ha dichiarato di aver lavorato a stretto contatto con il team di Blockfrost e di aver utilizzato test di conformità Blockfrost per verificare la compatibilità degli endpoint. Secondo Carmuega, Dolos supera più di 900 test di conformità, anche se non supporta ogni endpoint di Blockfrost perché alcuni sono stati esclusi dopo una revisione costi-benefici.
Dolos fornisce anche una mini API Kupo focalizzata sul set UTXO, datums e script, utilizzando modelli di query familiari agli utenti di Kupo. Inoltre, espone mini protocolli nodo-a-cliente di Cardano, inclusi query di stato locale e sincronizzazione della catena. Ciò permette ad alcuni strumenti che si aspettano interazione con un nodo Haskell di connettersi a Dolos e utilizzare parte della stessa superficie API.
Questo design posiziona Dolos come un adattatore di infrastruttura per applicazioni Cardano. Portafogli, costruttori di transazioni, esploratori e strumenti di middleware possono utilizzare diversi modelli di accesso a seconda che necessitino di compatibilità Blockfrost, query UTXO in stile Kupo, prestazioni UTXRPC o un'interfaccia socket più vicina a un ambiente standard del nodo Cardano.
Archiviazione a Finestra Scorrevole e Assunzioni di Fiducia del Nodo Relay
Dolos include compromessi chiari. Carmuega ha detto che Dolos non esegue pieno consenso o validazione completa dei blocchi durante il recupero dei dati. Invece, si connette attraverso protocolli nodo-a-nodo a un nodo relay, locale o pubblico, selezionato dall'operatore come fonte dei dati. Ciò crea un'assunzione di fiducia tra Dolos e il nodo relay utilizzato.
Per gli sviluppatori di applicazioni, questo modello può adattarsi a casi d'uso di accesso ai dati in cui un team non necessita di eseguire un intero stack di nodi locali. Il confronto fatto durante la sessione è stato che anche DB Sync dipende da un nodo in background come fonte dei suoi dati, mentre Dolos può connettersi a un nodo relay senza richiedere un socket locale del nodo Haskell.
Una caratteristica tecnica evidenziata nella presentazione è il modello di archiviazione a finestra scorrevole di Dolos. Gli operatori possono mantenere la cronologia completa della catena, ma possono anche scegliere una finestra temporale limitata. In questa configurazione, Dolos conserva blocchi, transazioni, script, datums e dati UTXO rilevanti per il periodo selezionato mentre i dati più vecchi vengono rimossi dall'archiviazione locale. Ciò può ridurre i requisiti di spazio su disco per le applicazioni che necessitano solo di attività recente della catena piuttosto che della cronologia completa dall'era Byron.
TxPipe ha inoltre mostrato dati sulle prestazioni di istanze Dolos sulla mainnet. Secondo la dashboard mostrata durante la sessione, un'istanza stava gestendo circa 180 richieste al secondo, con la latenza al 99º percentile per lo più inferiore agli 800 millisecondi e il 50º percentile intorno a 4-5 millisecondi. Carmuega ha collegato questi risultati al fatto che Dolos è un componente Rust compatto a processo singolo, combinato con archiviazione locale a valori chiave, alberi LSM, filtri bloom e strategie di indicizzazione specifiche.
La presentazione includeva esempi pratici di utilizzo di Dolos, tra cui Lace Anatomy, un esploratore di catena incentrato sugli sviluppatori che utilizza Dolos come backend senza DB Sync. Carmuega ha anche menzionato gli endpoint della piattaforma Demeter e altri team dell'ecosistema Cardano che utilizzano Dolos sotto il cofano per l'accesso ai dati.
Dolos offre alle applicazioni Cardano un'opzione di backend che può servire modelli di accesso in stile Blockfrost, Kupo e UTXRPC senza richiedere DB Sync per ogni caso d'uso. Per portafogli, esploratori e servizi dati, la differenza operativa è un percorso più leggero ai dati della catena Cardano quando la piena partecipazione al consenso non fa parte dei requisiti infrastrutturali.