Sharding (Fragmentação)
Sharding é uma função de escalonamento que permite a divisão de estados da blockchain em partes contendo estados e histórico de transações.
O Que É Sharding?
Sharding é uma técnica para fracionar banco de dados que podem ser usados para escalonar as
blockchains. Ele permite que as blockchains processem mais
transações por segundo, também conhecido como
throughput (taxa de transação). Sharding divide a
rede blockchain em fragmentos menores. Esses chamados shards processam apenas uma parte dos dados de toda a blockchain, o que os torna independentes de outros shards e os livra de computação desnecessária.
Graças ao sharding, uma rede pode computar mais transações e, assim, escalar mais rapidamente para velocidades de transação conhecidas nos livros-razão centralizados. Por outro lado, os críticos apontam que os shards são passíveis de ataques e reduzem a segurança da rede.
Como o Sharding Funciona?
As redes Blockchain são compostas por
nós que validam as transações em uma rede. Os nós são independentes uns dos outros e armazenam os dados históricos de uma blockchain. Todos os
nós completos armazenam todo o histórico de uma blockchain, o que aumenta sua segurança e descentralização, mas diminui sua velocidade de transação.
O sharding fragmenta a carga de trabalho dos nós em diferentes "shards". Em essência, nem todo nó precisa validar cada transação, o que sobrecarrega desnecessariamente os nós e torna a rede mais lenta. Em vez disso, o trabalho é compartimentado em diferentes fragmentos. Os bancos de dados blockchain são fragmentados horizontalmente, o que significa que os diferentes shards são divididos de acordo com suas características. Por exemplo, alguns shards podem ser responsáveis por armazenar transações de um tipo específico, enquanto outros shards podem ser divididos com base no tipo de criptoativo que armazenam.
O resultado é que nem todos os nós confirmam cada transação. Isso reduz drasticamente a carga de trabalho de uma blockchain e aumenta sua velocidade.
Sharding É Seguro?
O sharding foi criticado para diminuir potencialmente a descentralização e a segurança de uma blockchain. Os shards podem estar corrompidos, com um shard assumindo o controle de outro, o que pode levar à perda de informações ou dados. Por exemplo, um ataque
hacking pode assumir um shard e introduzir transações falsas, o que leva a confusão entre outros shards sobre a validade dos dados.
Como o Ethereum Utiliza Sharding?
O
Ethereum planeja usar sharding como parte de sua abordagem de escalonamento para aumentar a taxa de transferência da blockchain. A rede introduzirá 64 novas cadeias shard, que terão responsabilidades distintas e reduzirão bastante a carga de trabalho da
rede principal do Ethereum, chamada
Beacon Chain. Esse processo acontecerá como parte do escalonamento do Ethereum, que vê o
mecanismo de consenso mudando para o
proof-of-stake. Essa troca é chamada de
the Merge. Sharding será um dos próximos passos para o Ethereum em seu roteiro de escalonamento.