Dolos traz nó de dados leve baseado em Rust para desenvolvedores Cardano

TxPipe apresentou o Dolos durante o Cardano Developers Office Hours, descrevendo um nó de dados leve baseado em Rust, construído para reduzir a carga de infraestrutura e oferecer aos desenvolvedores acesso flexível aos dados da blockchain.

By SongMarketCap

Cardano News - Dolos traz nó de dados leve baseado em Rust para desenvolvedores Cardano

O Cardano Developers Office Hours recebeu Santiago Carmuega, CEO e fundador da TxPipe, para uma apresentação técnica sobre o Dolos, um nó de dados leve para Cardano escrito em Rust. A sessão focou na diversidade de infraestrutura, modularidade e no acesso mais fácil aos dados da blockchain Cardano para aplicativos, carteiras e serviços de backend.

Dolos foi apresentado como uma ferramenta complementar, e não como um substituto do nó existente do Cardano. Seu propósito é mais específico, fornecendo uma camada de consulta flexível para equipes que precisam de dados confiáveis da blockchain sem operar uma infraestrutura completa.

Dolos visa melhorar a experiência de desenvolvedores e o acesso a dados em Cardano

A TxPipe desenvolve ferramentas open source para os desenvolvedores de Cardano, e o Dolos se encaixa nessa abordagem mais ampla de melhorar a experiência de desenvolvimento. Carmuega afirmou que uma das primeiras dificuldades que encontrou no ecossistema Cardano foi a complexidade para acessar os dados do nó.

Em alguns ecossistemas blockchain, os desenvolvedores podem consultar um endpoint e receber informações sobre o bloco mais recente, uma transação ou um estado de endereço. Em Cardano, esse processo é tecnicamente mais exigente porque envolve mini protocolos Ouroboros, formatos binários e um modelo de rede personalizado.

Segundo a apresentação, o Dolos foi criado como uma alternativa e nó complementar para um caso de uso específico, oferecendo aos desenvolvedores uma forma mais rica e flexível de consultar dados da blockchain Cardano. Isso o torna relevante para equipes que estão construindo aplicativos, carteiras e serviços de dados que não precisam participar do consenso ou produzir blocos, mas ainda assim exigem um backend estável para leitura de dados da blockchain.

Carmuega também comparou Dolos com o DB Sync. O DB Sync continua sendo uma ferramenta comum para acesso profundo baseado em SQL aos dados do Cardano, mas requer um nó do Cardano, PostgreSQL e um trabalhador de sincronização. Dolos mira casos de uso em que os aplicativos já sabem os dados específicos que precisam e podem usar APIs mais eficientes ao invés de operar um backend dinâmico completo em SQL.

Nó de Cardano baseado em Rust suporta Blockfrost, Kupo e UTXRPC

Dolos expõe várias superfícies de API para aplicativos externos. Uma delas é uma interface gRPC usando a especificação UTXRPC, projetada para casos de uso onde comunicação binária compacta e consultas de baixa latência são importantes. Dolos também inclui uma API semelhante ao Blockfrost, permitindo que as equipes que já utilizam endpoints no estilo Blockfrost apontem seus aplicativos existentes para Dolos com menos mudanças de integração.

A TxPipe afirmou que trabalhou em estreita colaboração com a equipe do Blockfrost e utilizou testes de conformidade do Blockfrost para verificar a compatibilidade dos endpoints. De acordo com Carmuega, o Dolos passa em mais de 900 testes de conformidade, embora não suporte todos os endpoints do Blockfrost, já que alguns foram excluídos após revisões de custo-benefício.

Dolos também fornece uma mini API Kupo focada no conjunto UTXO, datums e scripts, utilizando padrões de consulta familiares aos usuários do Kupo. Além disso, ele expõe mini protocolos nó-à-cliente do Cardano, incluindo consultas de estado local e sincronização de cadeia. Isso permite que certas ferramentas, que esperam interação com um nó Haskell, se conectem ao Dolos e usem parte da mesma superfície de API.

Essa concepção posiciona Dolos como um adaptador de infraestrutura para aplicativos Cardano. Carteiras, construtores de transações, exploradores e ferramentas de middleware podem usar diferentes padrões de acesso dependendo de precisarem de compatibilidade com Blockfrost, consultas UTXO no estilo Kupo, desempenho UTXRPC ou uma interface de socket próxima a um ambiente padrão de nó Cardano.

Armazenamento em janela deslizante e pressupostos de confiança em nós relay

Dolos inclui compensações claras. Carmuega afirmou que Dolos não realiza validação completa de consenso ou de blocos ao buscar dados. Em vez disso, conecta-se através de protocolos nó-a-nó a um nó relay, seja local ou público, selecionado pelo operador como fonte de dados. Isso cria um pressuposto de confiança entre Dolos e o nó relay sendo utilizado.

Para desenvolvedores de aplicativos, esse modelo pode se encaixar em casos de uso de acesso a dados onde uma equipe não precisa executar uma pilha completa de nós local. A comparação feita durante a sessão foi que o DB Sync também depende de um nó em segundo plano como sua fonte de dados, enquanto Dolos pode se conectar a um nó relay sem exigir um socket de nó Haskell local.

Uma característica técnica destacada na apresentação é o modelo de armazenamento em janela deslizante do Dolos. Os operadores podem manter o histórico completo da blockchain, mas também podem escolher um período de tempo limitado. Nessa configuração, o Dolos retém blocos, transações, scripts, datums e dados UTXO relevantes para o período selecionado, enquanto dados mais antigos são removidos do armazenamento local. Isso pode reduzir os requisitos de disco para aplicativos que precisam apenas de atividade recente da blockchain em vez do histórico completo desde a era Byron.

A TxPipe também mostrou dados de desempenho de instâncias do Dolos na mainnet. De acordo com o painel apresentado durante a sessão, uma instância estava lidando com cerca de 180 solicitações por segundo, com a latência do percentil 99º principalmente abaixo de 800 milissegundos e o percentil 50º em torno de 4 a 5 milissegundos. Carmuega conectou esses resultados ao fato de o Dolos ser um componente compacto de processo único escrito em Rust, combinado com armazenamento local baseado em chave-valor, árvores LSM, filtros bloom e estratégias específicas de indexação.

A apresentação incluiu exemplos práticos de uso do Dolos, incluindo o Lace Anatomy, um explorador de blockchain voltado para desenvolvedores operando no Dolos como seu backend sem o DB Sync. Carmuega também mencionou endpoints da plataforma Demeter e outras equipes do ecossistema Cardano utilizando o Dolos como base para acesso a dados.

Dolos oferece aos aplicativos Cardano uma opção de backend que pode servir padrões de acesso semelhantes ao Blockfrost, estilo Kupo e UTXRPC sem exigir DB Sync para todos os casos de uso. Para carteiras, exploradores e serviços de dados, a diferença operacional é uma rota mais leve para acesso aos dados da blockchain Cardano quando a participação no consenso completo não faz parte dos requisitos de infraestrutura.