Zilliqa - Fragmentar é a solução para o problema da escalabilidade?

sagres77(45)
Published in
#pt
Words
741
Reading
4 min
9y
Listen to this post
~5 min

zilliqa-696x449Provavelmente todos envolvidos no mundo de informática já ouviram falar de Sharding (fragmentação). Em termos simples, é uma abordagem para o problema da escalabilidade das blockchains.

O "Sharding" não foi inventado para blockchain, tem sido utilizado durante muito tempo em bases de dados ou para armazenamento de dados. É simplesmente uma forma de armazenar dados em vários computadores. Basicamente, cada máquina terá um "fragmento" (basicamente uma peça) dos dados.

Tudo isto é muito fácil de implementar quando se tem controlo de todas as máquinas. Num centro de processamento de dados onde é preciso armazenar bases de dados gigantescas (pense na Google ou no Facebook), as coisas complicam-se um bocadinho mais.

Quando se trabalha com a tecnologia descentralizada da blockchain, deve-se sempre assumir que existirão "nós" maliciosos na rede. Isto requer o desenvolvimento de um algoritmo de consenso. A questão é que é mais complicado desenvolver um algoritmo de consenso para uma blockhain baseada em fragmentos do que para uma blockchain simples, onde cada nó armazena todas as transacções.

Neste momento, a Ethereum está a tentar construir um mecanismo de "sharding" completo. O problema é que, quando se separam os dados, os computadores fazem isso de maneira aleatória. Isto significa que os fragmentos precisarão de comunicar-se com muita frequência.

Uma alegoria para isto seria a seguinte. Hoje em dia, as pessoas não precisam atravessar a fronteira com outros países com muita frequência. Se o fizessem, criariam filas e atrasos enormes nas alfandegas. Mas imaginem que, por exemplo, a fronteira entre Portugal e Espanha é alterada para o centro de Lisboa ou Madrid. Quantas pessoas precisariam atravessar essa linha todos os dias? Potencialmente milhões.

zilliqa-tech

Este exemplo parece descabido, mas é o grande problema com o sharding. Se dividirmos os dados de uma forma que não seja baseada numa lógica específica (o que seria quase impossível, pois os contratos inteligentes possuem uma lógica própria), basicamente teríamos uma quantidade altíssima de intercomunicação entre os diferentes nós da rede. Para piorar as coisas, estes nós estão em todo o mundo e ligados pela Internet e não na mesma sala, como seria num centro de dados que armazena uma grande base de dados. De alguma forma, o modelo actual de fragmentação tem que fazer alguma concessão, ou reduz a quantidade de dados que um nó tem para armazenar ou terá que aumentar a quantidade de comunicação entre nós de forma muito significativa.
A Zilliqa, quer usar uma abordagem diferente. Quer fazer uma distinção muito clara entre o estado e o histórico de transacções.

Basicamente, o dinheiro que temos na conta bancária é o estado actual. Se temos muito dinheiro ou nada na conta bancária é estado actual. As transacções são o que nos faz chegar ao estado actual. Se, historicamente, ganhamos mais do que gastamos, o nosso estado actual é que temos dinheiro, se, historicamente, gastamos mais do que ganhamos, o nosso estado actual é que não temos dinheiro.

Basicamente, é preciso muito mais espaço para armazenar o histórico das transaccoes do que espaço necessário para armazenar o nosso saldo actual (estado).

O histórico das transacções no entanto é muito importante caso alguém precise verificar se o saldo está correcto. Mas, enquanto conhecemos o nosso saldo, sabemos quanto podemos gastar. Periodicamente, podemos verificar se o saldo da conta está correcto, verificando todo o histórico de transacções, mas isso não é algo que precisamos de fazer todos os dias.

A abordagem que a Zilliqa escolheu com o "sharding" é que cada nó terá uma cópia do estado actual (os saldos bancários no nosso exemplo), mas o histórico de transacções será dividido em partes para que não seja preciso todos os nós terem uma cópia completa.

Esta solução inteligente permite resolver o principal problema com o sharding, que é a quantidade enorme de intercomunicação entre nós da rede que seriam necessárias.

Desta forma, a Zilliqa quer construir uma plataforma de contratos inteligentes e aplicações descentralizadas que pode fazer um número de transacções por segundo que nenhum competidor consegue neste momento. Actualmente a rede ainda está em testes e a versão final será lançada no segundo trimestre deste ano. No terceiro trimestre serão lançadas as primeiras aplicações descentralizadas.

Actualmente podem negociar os tokens da Zilliqa (ZIL) na Huobi ou na Etherdelta. Custam cerca de 0,05$ o que é um bom preço, já que existem 12 biliões de tokens. Penso que depois de lançarem o produto final e se cumprirem tudo aquilo que prometem pode facilmente valer 1 ou 2 dólares.

Zilliqa - Fragmentar é a solução para o problema da escalabilidade? | Ecency