O que é sharding de blockchain?

A falta de escalabilidade é o pior pesadelo de qualquer ledger distribuído. Muitas redes descentralizadas se esforçam para introduzir uma solução única para um problema delicado. Sharding é um conceito promissor que tem o potencial de finalmente resolver o problema de escalabilidade e, ao mesmo tempo, salvar a natureza descentralizada das blockchains. 

Changelly continua fornecendo explicações, tutoriais e guias sobre criptomoedas e tecnologia blockchain. Vamos explicar o que é sharding e como ele pode ajudar a blockchain no futuro. 

Definição de Sharding

Sharding é um método de particionamento de dados que visa descarregar o sistema enquanto fornece acesso rápido a todos os dados armazenados. Cada um deles separado, porém conectado entre si, partes do bando de ddos, chamadas shards. Todo shard de banco de dados é armazenado em um servidor separado.

mongodb sharding

O conceito de sharding é usado desde o final dos anos 90 por bancos de dados gigantes em todo o mundo. O termo ‘shard’ ganhou popularidade graças ao RPG online (MMORPG) Ultima Online. O jogo era tão popular que os desenvolvedores tiveram que dividir a carga nos servidores, introduzindo novos mundos no universo do jogo. Em sua essência, os novos mundos são servidores separados que obtêm tráfego distribuído. 

O sharding no blockchain segue a mesma lógica. A Investopedia fornece a seguinte definição de sharding :

“Sharding é uma técnica de particionamento de banco de dados que será usada para escalar drasticamente a blockchain da ethereum e permitir que ela processe mais transações por segundo.” 

A definição é bastante precisa. No entanto, a técnica de sharding não é uma prerrogativa da rede Ethereum. Ele também teve que ser introduzido na notória blockchain TON , mas o projeto foi encerrado. 

Para resumir, o sharding no blockchain tem como objetivo espalhar a carga pela rede descentralizada, particionando dados através de shards. Shards são partes horizontais dos dados. 

Como funciona o sharding?

Vamos voltar ao básico. Uma blockchain consiste em nodes – entidades independentes que mantêm o trabalho adequado de uma rede descentralizada. Cada node é uma parte significativa do ecossistema que compartilha seus recursos computacionais para adicionar blocos ao blockchain.

O Ethereum, por exemplo, possui mais de 8.200 nodes ativos que sustentam o ambiente saudável dentro da rede. A blockchain Ethereum atualmente é baseada no protocolo de consenso de Prova de Trabalho (PoW) que exige que os usuários paguem taxas de gás. Quanto mais usuários utilizarem a blockchain Ethereum, maiores serão as taxas de gás. Atualmente, o Ethereum e muitos outros blockchains seguem o modelo de execução linear, que requer que cada node processe todas as operações.    

sharding scheme

Com o sharding, a execução de transações dentro de uma blockchain específica seguirá um modelo de execução paralelo. Isso significa que as transações serão processadas simultaneamente e em paralelo em cada shard, aumentando significativamente o rendimento da transação. Os nodes processarão determinadas operações e não o conjunto inteiro, como fazem no modelo linear. 

Sharding: PoW ou PoS?  

Recentemente, explicamos a possibilidade do ataque de 51% em uma rede descentralizada. O fato de um minerador malicioso ou um reservatório de mineração poder obter 51% do hash da rede e, assim, controlar o blockchain é bastante assustador. Especialmente em termos de descentralização que promete transparência, confiança e justiça por todo o caminho. 


Algoritmo de PoW explicado

Algoritmo de PoS explicado  


Imagine uma blockchain criada no mecanismo de consenso de Prova de Trabalho que deseja implementar sharding para melhor escalabilidade. Uma blockchain baseada em PoW requer mineração – a mineração requer uma taxa de hash – a taxa de hash é produzida pelos computadores dos mineradores. Cada shard requer menos recursos computacionais (hashrate) para produzir um bloco. Imagine uma blockchain baseada em PoW com 100 shards. Nessa situação, um mau ator que obtém um poder de hash de 1% de toda a rede pode obter 100% de controle da taxa de hash de um único shard. 

O protocolo de Prova de Participação não precisa de mineradores. Para iniciar um ataque de 51%, um usuário mal-intencionado deve obter mais de 50% da criptomoeda. Todo e qualquer validador dentro de uma blockchain baseada em PoS deve apostar em uma certa quantidade de ativos de criptografia para poder adicionar blocos a uma blockchain. Para excluir a possibilidade de desempenho malicioso em uma blockchain PoS, propõe-se o uso de um esquema de amostragem aleatória. 

“Cada shard recebe um certo número de notários (por exemplo, 150), e os notários que aprovam agrupamentos em cada shard são retirados da amostra deste shard. As amostras podem ser embaralhadas semi-frequentemente (por exemplo, uma vez a cada 12 horas) ou no máximo com freqüência (ou seja, não existe um processo de amostragem independente real, os notários são selecionados aleatoriamente para cada shard de um reservatório global a cada bloco) ”, afirma o Ethereum Wiki .

Como o Sharding pode ajudar o Blockchain

Os sonhos da adoção em massa podem se tornar realidade com a implementação de sharding em blockchains. A verdade é que a tecnologia descentralizada é muito complexa para usuários regulares. Com o passar do tempo, engenhosos desenvolvedores de blockchain conseguiram colocar soluções tecnológicas complicadas em uma forma amigável. Os aplicativos descentralizados (dApps) parecem nativos e bastante simples, enquanto a experiência do usuário é intuitiva. No entanto, um dos principais obstáculos no caminho da adoção em massa é a velocidade das transações que levam muito tempo.  

O exemplo óbvio: a Visa pode processar mais de 24.000 transações por segundo (TPS), o Bitcoin processa 5-7 TPS, Ethereum processa 15 transações por segundo. De volta ao ano de ouro das criptomoedas, 2017, o lendário Ethereum dApp, CryptoKitties, podia desacelerar toda a rede ETH devido ao aumento do tráfego no jogo. 

cryptocurrency scalability

Quando implementada em uma blockchain, a técnica de sharding é espalhar a carga da rede entre os shards. Portanto, a velocidade das transações pode aumentar drasticamente, trazendo melhor rendimento e, como resultado, atraindo novos usuários. 

Um tão aguardado Ethereum 2.0 resolverá o problema de escalabilidade implementando uma solução de sharding em sua rede. O blockchain da Ethereum também planeja migrar para um protocolo de consenso de PoS, tornando a implementação de sharding possível e eficiente. 

Ethereum 2.0 apresentará 64 shards iguais, capazes de processar transações ao mesmo tempo e simultaneamente a outros shards. Todos os 64 shards estão intimamente ligados à cadeia principal que forma a Merkle Tree. Ao distribuir a carga entre os shards, o Ethereum 2.0 poderá executar até 100.000 transações por segundo.

Existem desvantagens do sharding?

Vitalik Buterin frequentemente fala sobre o trilema da escalabilidade. De acordo com esse grande problema, o blockchain que será escalável, seguro e descentralizado ao mesmo tempo não é atualmente possível. No entanto, parece que o problema pode ser resolvido por sharding.  

blockchain trilemma issue

As maiores preocupações relacionadas à técnica de sharding são problemas de segurança e comunicação. O último é bastante essencial. Como o número (N) de shards se comunica perfeitamente? Para resolver a falta de comunicação entre os shards, o Ethereum 2.0 utilizará a cadeia Beacon, que visa ser a espinha dorsal de toda a rede Ethereum 2.0.

De acordo com o consultor e pesquisador de Eth 2.0 , Ben Edgington: “Existem vários aspectos para isso: gerenciar validadores e suas apostas; nomear o proponente de bloco escolhido para cada shard em cada etapa; organizar validadores em comitês para votar nos blocos propostos; aplicação das regras de consenso; aplicar recompensas e multas aos validadores; e, sendo um ponto de ancoragem no qual os fragmentos registram seus estados para facilitar transações entre shards.”

O ataque de 1% acima mencionado é uma ameaça à implementação em massa do sharding. No entanto, o mecanismo de consenso de prova de participação pode resolvê-lo parcialmente. Os validadores Ethereum atribuídos aleatoriamente apoiarão a natureza descentralizada da blockchain, mantendo-a segura. Buterin também acredita que a transição da Ethereum para o algoritmo PoS tornará a ETH mais segura do que a rede do Bitcoin. É muito caro comprometer o blockchain, pois um invasor deve obter mais de 50% dos ativos da rede. 

O futuro de Sharding

O futuro de Sharding é bastante brilhante. Uma série de projetos íntegros ​​e confiáveis ​​já implementou e utilizou sharding. Uma das primeiras plataformas a implementar o sharding foi a Zilliqa. Durante o estágio da rede de teste, a rede Zilliqa pode obter mais de 2.800 transações por segundo. 


Sobre o que é a Criptomoeda Zilliqa? 


A blockchain Cardano lançou recentemente sua solução de escalabilidade, protocolo Hydra. Assim como a criatura mitológica, cada cabeça do protocolo Hydra (ou seja, cada shard) pode lidar com cerca de 1.000 tps. Como resultado, o blockchain Cardano pode potencialmente atingir o rendimento da transação de um milhão (!) De transações por segundo.  

Ethereum 2.0, Facebook’s Libra, notória Telegram Open Network e muitos outros projetos notáveis ​​trabalham duro para trazer o futuro para hoje, e o sharding é uma parte vital de todo o cenário. 

Pensamentos finais 

Sharding pode se tornar a tão esperada solução de um problema de escalabilidade. Quando as blockchains se tornam escaláveis, elas podem atrair usuários, desenvolvedores, dApps e outros mais ativos. Consequentemente, quanto mais nativas as redes descentralizadas se tornarem, mais rápida será a adoção em massa da indústria blockchain. Muito provavelmente, temos a sorte de testemunhar o êxodo maciço do mundo da descentralização.  

Sobre Changelly

Changelly é um serviço de troca de criptomoedas instantâneas sem custódia que atua como intermediário entre as trocas de criptomoedas e os usuários, dando aos usuários a oportunidade de trocar mais de 160 criptomoedas com os melhores valores do mercado. A Changelly oferece sua API e um widget de pagamento personalizável para qualquer serviço de criptografia que deseje ampliar seu público e implementar novas opções de troca.