Armazenando todos os dados na Web

A escalabilidade é uma preocupação primordial quando se trata de protocolos blockchain, pois pode determinar a probabilidade de sucesso a longo prazo. Este artigo investiga a escalabilidade da Arweave e como ela se move para armazenar todos os dados na web.

Permanência e uniformidade das transações

A escalabilidade da Arweave é derivada, em parte, da permanência de seu conjunto de dados. Como todos os dados são armazenados para sempre com um conjunto uniforme de regras e expectativas, cada transação de dados pode ser processada e finalizada com o mesmo conjunto de parâmetros.

Essa uniformidade permite agrupamento de transações, possibilitando a combinação de várias transações em uma. Este processo é definido por Padrão de rede Arweave -104. Revisaremos o agrupamento mais adiante neste artigo.

Para entender melhor a uniformidade da transação, é útil contrastar o modelo de armazenamento permanente descentralizado da Arweave com outros modelos, como armazenamento baseado em contrato, onde espaço limitado em bloco leva a mercados de taxas a concorrer à inclusão de transações.

Itens de dados individuais em sistemas baseados em contratos precisam ser comprometidos com informações qualificadas: quanto tempo dura o prazo de armazenamento, quem deve armazenar os dados, quantas réplicas etc. O efeito disso é que cada transação precisa ser julgada separadamente – semelhante aos mecanismos usados pelos contratos inteligentes de maneira mais geral. A variabilidade dos parâmetros usados pelo armazenamento baseado em contrato afeta negativamente seu potencial de escalabilidade, porque à medida que o número de termos de armazenamento simultâneos cresce, o mesmo acontece com o poder computacional necessário para manter os itens de dados correspondentes na rede.

Em vez de precisar adjudicar milhões ou bilhões de contratos que todos têm seus próprios termos, a Arweave tem apenas um: pagar uma vez, armazenar para sempre. Como o único termo de armazenamento do Arweave é permanente, não há aumento na contabilidade ou no cálculo da adição de itens de dados à rede. Uma vez incluído, todos os novos itens de dados são incorporados ao mesmo processo de mineração que os itens de dados anteriores. O único recurso de mineração que aumenta é a quantidade de espaço necessário para armazenar um conjunto de dados completo.

Como a Arweave realiza esse feito? Como todo o conjunto de dados é imutável, ele pode ser representado como um único lago de dados “ uniforme ”, dividido em pedaços de 256 KB. Todos esses pedaços podem ser representados como uma única árvore merkle cuja raiz e ramificações são atualizadas a cada novo bloco adicionado à rede. Essa representação uniforme de todo o conjunto de dados permite que o protocolo gerencie as provas de armazenamento produzidas pelos mineiros da Arweave. Também elimina a sobrecarga computacional de gerenciar a contabilidade dos termos de armazenamento usados pelas redes de armazenamento baseadas em contratos inteligentes.

Escala infinita usando pacotes recursivos

No Arweave, ocorre um gargalo potencial de escala quando os pagamentos são processados para adicionar dados. O Arweave é estruturado de maneira semelhante a uma blockchain e não pode processar pagamentos ilimitados simultaneamente. A rede processa no máximo 1000 transações por bloco (, incluindo pagamentos para armazenamento de dados e transferências de token ), com um tempo de bloqueio de 2 minutos.

É aqui que as transações de agrupamento se tornam relevantes. Os pacotes podem conter um número ilimitado de transações e contam apenas como uma transação da Arweave em um bloco. Cada pacote é liquidado em uma transação de pagamento na rede Arweave.

Atualmente, existem vários serviços para executar este serviço de pacote, por exemplo Rede Bundlr e EverVision HQ . Atualmente, eles carregam milhões de dados por dia em apenas alguns milhares de transações de pagamento da Arweave.

Eventualmente, quando o Arweave atingir a escala da Web centralizada, haverá mais pacotes sendo enviados do que as 1000 transações possíveis nos blocos Arweave. Nesse ponto, como os pacotes são recursivos, eles podem ser agrupados novamente!

Isso leva a árvores de dados com profundidade infinita comprometidas com a rede em uma única transação da Arweave. Esse sistema pode potencialmente ingerir a totalidade dos dados da Web em uma transação em pacote!

Em resumo, o Arweave escala sem mercados de taxas, para sempre, graças a árvores de dados agrupados com profundidade infinita.