Translate

venerdì 9 settembre 2022

Takamaka "Caching server" abilita PostgreSQL sulla Blockchain

Takamaka introduce nell’architettura primaria una tipologia di nodo, chiamata Caching server. Si tratta di un client, ovvero un nodo semplificato, che prevede abbia al suo interno un sistema di gestione di database relazionali open source, con alta disponibilità, esempio Postgresql.


Caching server è un server di “frontiera”, che permette ai nodi di accelerare e prendere in carico tutte le richieste provenienti dal network, oltre alle transazioni, la lettura di chiavi, la creazione di query e molto altro ancora, producendo velocemente delle risposte.


Di fatto si potrà interrogare la Blockchain, ed ottenere risposte “ rapide ”, creare query SQL complesse direttamente sulla Blockchain e restituire dati esattamente come avviene su classico db relazionale; l’utente anche inesperto potrà costruire l’equivalente di un “Etherscan” semplicemente collegandosi al Caching server, ed estraendo i dati che servono.


Questa soluzione integra i punti dati e crea facilmente API rivolte ai clienti, ottenendo dal wallet efficienza e velocità, con una significativa riduzione dei tempi di attesa.


Potrai interrogare i dati in blockchain, come su un db SQL nativo, consentendo un rapido accesso alle informazioni e una comprensione più semplice dei concetti sottostanti.


SPECIFICHE 


Caching server sincronizza simultaneamente fino a 5 EPOCH giorno, legge almeno 1.38 blocchi in 1 solo sec. con una notevole riduzione dall’attuale lettura di Blocco ( attualmente pari a 30 sec.)


Pur mantenendo invariato tempo e durata di una EPOCH il nuovo client permette di sincronizzare più velocemente i nodi sulla blockchain.


Il nuovo client esegue operazioni parallele di un elevato numero di azioni ( almeno il 70% ) senza attendere lo stato della blockchain, sfruttando al 100% le capacità della CPU durante la fase di sincronizzazione.



Il parallelismo dei processi, capace di conferire al client una notevole velocità di azione e la capacità di processare un numero impressionante di dati dalla Blockchain, è stato possibile grazie alla integrazione di Webflux, un reactive-stack web framework, capace di supportare completamente lo sviluppo di Web Application di tipo non-blocking, vale a dire che ogni chiamata è un flusso non bloccante ed asincrono all’interno dell’applicazione.


Grazie a questa soluzione, l’upload di blocchi, non avviene più in modo sequenziale, che come attuale conseguenza crea tempi di attesa “lunghi”, ma al contrario Caching server permette l’insert anche di 50 blocchi in una unica soluzione, aggiornando contemporaneamente lo stato del DB e permettendo allo stesso tempo una valutazione lineare del valore raccolto dei dati.


L’ inserimento dati avviene in modo massivo e con un numero elevato di processi paralleli, senza la necessità di attendere lo stato della Blockchain e mentre da un lato tali operazioni valutano l'algoritmo, le firme, l’hash, le tx invalide, dall’altro si procede separatamente alla loro valutazione.


Questa soluzione permette che i nodi nuovi, non sincronizzati o in ritardo si possano inserire nel network ed arrivare ad una piena sincronizzazione in tempi molti ridotti, permettendo un miglioramento in termini generali delle performance dell'intera rete.


Con il nuovo client, la rete Takamaka è ora un network costantemente sincronizzato, più stabile e sicuro.


Attualmente la struttura espansa dei dati Blockchain, ha raggiunto e superato i 18 Tbyte di occupazione disco, la soluzione Caching server, promette di ottimizzare l’intera struttura dati e raggiungere una compressione a 400 Gbyte, ottimizzando lo spazio e mantenendo intatte le medesime potenzialità.

FORK


Quando e come avverrà l’inserimento del nuovo client sulla rete Takamaka ?


Caching server è un Nodo che andrà a sostituire tutti i Nodi della rete Takamaka, ma in prima fase sarà utilizzato come Server di supporto su cui si collegheranno gli exchange, in modo da consentire loro di dare risposte veloci.


Successivamente l’Explorer di Takamaka punterà a Caching server migliorando performance e servizio.


L’ upgrade della rete avverrà con la sostituzione degli attuali Nodi con i nuovi Client, che non appena sincronizzati li andranno a sostituire. 


Si tratta di un FORK che avverrà prossimamente e senza interruzioni del servizio.