Powrót

2. Poziom średnio-zaawansowany

Ukończono: 0%
Kroki: 0/0
  1. 1. Ethereum 2.0 – co to jest?
  2. 2. Na czym polega spalanie kryptowalut?
  3. 3. Jak stworzyć własną kryptowalutę?
  4. 4. Blockchain Oracle – czym są wyrocznie?
  5. 5. Jak zarabiać na NFT?
  6. 6. Czym jest token ERC20 i jak powstaje?
  7. 7. Metaverse – nowy wirtualny świat
  8. 8. Metaverse – TOP 15 projektów wirtualnej rzeczywistości
  9. 9. Analiza techniczna – czy warto jej używać?
  10. 10. Czym są pule płynności DeFi?
  11. 11. Druga warstwa - co to jest? 
  12. 12. Tokeny wrapowane - co to jest?
  13. 13. Co to jest Lightning Network?
  14. 14. Co to są security tokens?
  15. 15. Czym jest P2E i jak działa?
  16. 16. Czym są Social Token?
  17. 17. Przykłady wykorzystania Web3 na blockchainie
  18. 18. Czym jest Web5?
  19. 19. Ethereum London Hard Fork - co to jest?
  20. 20. SegWit BTC
  21. 21. Polkadot - Zdecentralizowany blockchain i kryptowaluta DOT
  22. 22. Polkadot Parachain - Blockchain nowej generacji
  23. 23. Ustawienie zleceń Stop Loss i Take Profit
  24. 24. Typy zleceń w tradingu - stop loss, trailling stop loss, LIMIT
  25. 25. Co to jest DEX?
  26. 26. Czym jest Curve Finance?
  27. 27. Co to jest GameFI?
  28. 28. Tokeny niewymienne i giełdy NFT
  29. 29. Kryptowalutowe kroki - Czym jest Move-To-Earn M2E?
  30. 30. Co to jest Proof of Reserves PoR?
  31. 31. Interoperacyjność w świecie kryptowalut i blockchain
  32. 32. Blockchain i jego warstwy - Czym jest warstwa trzecia Blockchain layer 3 (L3)
  33. 33. Czym jest warstwa 0 w technologii Blockchain?
  34. 34. Warstwy blockchain - czym jest layer 1?
  35. 35. Czym jest MakerDAO i DAI?
  36. 36. Czym jest Blockchain sharding?
  37. 37. Czym są opłaty licencyjne NFT?
  38. 38. Co to jest protokół SubDAO i jak działa?
  39. 39. Główne różnice pomiędzy statycznym NFT i dynamicznym NFT
  40. 40. Liquidity Provider Tokens (LP) czym są i dlaczego są tak ważne?
  41. 41. Co to jest KnowOrigin NFT i jak działa?
  42. 42. Czym są zdecentralizowane media społecznościowe?
  43. 43. Czym jest Ethereum Name Service (ENS) i jak działa ta domena?
  44. 44. Arbitrum: rozwiązanie skalowania Ethereum – wszystko, co musisz wiedzieć
  45. 45. Ethereum ERC-4337 – czym jest i jak działa ten standard?
  46. 46. Zrównoważony Blockchain – Proof of Useful Work & Flux
  47. 47. Ethereum Proof-of-Stake (PoS) – co powinieneś wiedzieć?
  48. 48. Atomic Swap: czym jest zmiana atomowa i jak działa w kryptowalutach?
  49. 49. Czym jest kryptowalutowy vesting? Jakie są jego zalety?
  50. 50. Czym jest protokół Metaplex Candy Machine? Jak działa?
  51. 51. Czym jest ekosystem BNB Greenfield?
  52. 52. Real Yield w DeFi – czym jest ten trend? Na czym polega?
  53. 53. Polygon 2.0 – warstwa wartości dla Internetu
  54. 54. Czym jest slashing w kryptowalutach?
Lekcja 36 z 54

36. Czym jest Blockchain sharding?

W branży kryptowalut powszechnie utarł się schemat, że to Ethereum ma największe problemy ze skalowalnością. Oczywiście pod względem kosztów i czasu, jakie trzeba poświęcić, aby przeprowadzić daną transakcję.

Przypadek Ethereum nie jest jednak odosobniony. Problemy ze skalowalnością ma większość blockchainów. O tym utrudnieniu sieci blockchain pisaliśmy już tutaj. Z tego powodu wiele deweloperów pracuje, aby rozwiązać ten problem. Jedną z ich propozycji jest wielofazowa aktualizacja, nazywana Shardingiem. Czym jest Blockchain sharding i dlaczego jest taki ważny?

Blockchain Sharding

Sharding jest jedną z metod zwiększania skalowalności blockchaina. Polega na partycjonowaniu baz danych, które są wykorzystywane w danym ekosystemie technologii blockchain. Dzięki temu wykonują one więcej transakcji na sekundę.

Mówić prościej – sharding to dzielenie całej sieci blockchain na kilka mniejszych, zwanych shardami. Jeden shard zawiera unikalne dane i jest niezależny od pozostałych. W efekcie pamięć masowa w sieci peer-to-peer nie jest tak przeciążona. Węzły mogą więc wykonywać więcej transakcji, w szybszym czasie. Po shardingu każdy węzeł przechowuje tylko te dane, które dotyczą jego działu lub shardu.

Proces shardingu jest także nieinwazyjny dla całego ekosystemu blockchain. Informacje zawarte w pojedynczych shardach mogą być udostępniane innym węzłom, jednocześnie utrzymując rozproszoną księgę zleceń bezpieczną i zdecentralizowaną. Dlaczego? Ponieważ po podziale nadal, każdy shard może przeglądać każdy wpis do księgi, nie zachowując o nim danych. W taki sposób unikamy przeciążenia sieci.

Proces shardingu to doskonałe rozwiązanie w redukcji opóźnień transakcyjnych.

Jak działa sharding na blockchainie?

Sharding stosujemy głównie w przypadku blockchainów, mających bardzo dużo danych, ale jedną bazę. Doskonałym tego przykładem będzie Ethereum – ogromna baza deweloperów, pracująca nad różnymi projektami.

Na blockchainie Ethereum oprócz deweloperów pracuje ponad 300 dApps, co wręcz wymusza na ekosystemie skorzystanie ze shardingu, aby zwiększyć skalowalność.

Proces shardingu ułatwia rozłożenie przechowywanych danych, co z kolei czyni rollupy jeszcze bardziej opłacalnymi, jednocześnie upraszczając obsługę węzłów. Dzięki temu rozwiązania warstwy 2 korzystają z Ethereum, będąc jednocześnie bezpiecznymi i tańszymi.

Proces shardingu pomaga w podzieleniu całej sieci na mniejsze moduły, z których każda zwiększa TPS sieci. Cały proces wydaje się dość prosty, jednak ma w sobie sporo istotnych elementów:

  • Węzły

Każdy węzeł w sieci blockchain przetwarza lub zarządza transakcją, jaka zachodzi wewnątrz ekosystemu.  Węzły, które działają w technologii blockchain, są autonomiczne. Ich zadaniem jest przechowywanie wszystkich danych, jakie generuje zdecentralizowana sieć. Mowa o saldach kont, czy zapisie pojedynczych transakcji.

Przez takie podejście, całe przetwarzanie transakcji jest bardzo wolne. Zachowuje jednak wysokie bezpieczeństwo, ponieważ każda transakcja jest przechowywana w każdym węźle sieci. Wolne tempo przetwarzania transakcji nie jest zachęcające dla potencjalnych użytkowników.

Dlatego też, aby zmniejszyć obciążenie transakcyjne, wykorzystuje się sharding. Skutecznie odciąża on węzły, które nie muszą już zarządzać lub przetwarzać całej transakcji. Dzięki procesowi shardingu zarządzanie węzłami może być efektywniejsze.

  • Horizontal Partitioning

Podział poziomy baz danych. Również może być wykorzystywany do wykonania shardingu. Przykładowo: zadaniem jednego z shardów może być przechowywanie historii transakcji i aktualnego stanu adresu. Inny przechowywałby dane o saldach kont i tak dalej.

Co więcej, dzięki Horizontal Partitioning, shardy mogłyby być podzielone według rodzaju zasobów cyfrowych, które są przechowywane w każdym z pojedynczych shardów.

Dlaczego Sharding jest taki ważny w ekosystemie blockchain?

Są trzy, główne powody, dla których sharding jest tak ważny.

  • Kompresja używanych danych

Jak wspominaliśmy w akapitach wyżej, każdy węzeł ma swoją kopię, która zawiera pełną historię sieci. Dlatego hakerom tak trudno przejąć kontrolę i potencjalnie zmodyfikować transakcje. Jednakże, utrzymanie takiego stanu rzeczy odbywa się kosztem skalowalności całej sieci blockchain.

  • Skalowalność

To najważniejsza zaleta zastosowań shardingu. Zwiększenie skalowalności. Dzięki temu procesowi blockchain może podzielić węzły i przechowywać więcej informacji. A to bez konieczności spowalniania czasu transakcji!

Co za tym idzie, deweloperzy już wywietrzyli potencjał. Dzięki shardingowi więcej branż może wdrażać technologię blockchain w swoich działaniach. Finanse, FinTech, bankowość mogą wykorzystać łańcuchy bloków i konkurować ze scentralizowanymi odpowiednikami.

  • Dostępność

Lepsza dostępność dla użytkowników sieci to dodatkowa korzyść, jaką niesie za sobą sharding. Na przykładzie Ethereum – sharding zmniejszył ilość sprzętu, który był niezbędny do uruchomienia sieci. Można to z łatwością zrobić na urządzeniach konsumenckich. Efekt – więcej osób uczestniczy w sieci.

Sharding, a bezpieczeństwo

Sharding, tak jak większość rozwiązań skalowalności blockchain, jest dopiero w fazie testów. Jednak jego zalety są niepodważalne.

Problemem, jaki może wystąpić podczas shardingu, to kolizja shardów. Jeden z shardów może przejąć kontrolę nad drugim. W efekcie, informacje w nim zawarte mogą zostać utracone. Bierzemy też pod uwagę, że złośliwe shardy mogą wprowadzić do sieci blockchain uszkodzone dane.

Jeśli przyjrzymy się Ethereum, takie niebezpieczeństwo jest bardzo ograniczone i praktycznie niemożliwe do wystąpienia.

Kolejnym niebezpieczeństwem, jakie należy wziąć pod uwagę, to cyberatak na pojedynczy shard. Po takim działaniu fałszywe transakcje mogą zostać wprowadzone do sieci. Jednakże ta możliwość także została zminimalizowana. W przypadku Ethereum węzły zostały przydzielone do określonych shardów.

Przykłady sieci blockchain, wykorzystujących sharding

  • NEAR

NEAR skupił się na transakcjach cross-shard w czasie rzeczywistym. Jednocześnie chciał utrzymać lekkie obciążenie sieci dla użytkowników. Jak to zrobił? Umożliwił każdemu urządzeniu low-end uruchomienie węzła, jako część całej sieci.

W konsekwencji, każde takie urządzenie pomaga w przetwarzaniu podzbioru transakcji. Sharded Proof of Stake blockchaina NEAR ma większą skalowalność i umożliwia działanie węzłów sieci na urządzeniach low-end. Dzięki temu rozwiązaniu sieć daje dostęp do wielu dodatkowych urządzeń, a te poprawiają szybkość działania całego ekosystemu.

  • Ethereum Beacon Chain

Beacon Chain, to główny łańcuch w Ethereum 2.0. Jego zadaniem jest przetwarzanie powiązań krzyżowych i „przechowywanie” aktywnych walidatorów, oczekujących w kolejce. Pomaga także przetwarzać konsensus block by block w Ethereum. Funkcje obejmują także:

  • Zarządzanie walidatorami i ich stawkami.
  • Wdrożenie obowiązujących zasad konsensusu.
  • Organizowanie głosowania nad proponowanymi zmianami.
  • Przydzielanie nagród i kar dla walidatorów.
  • Rejestruje stany shardów i odpowiada za transakcje między nimi.
  • Polkadot Parachain

To kolejny ciekawy projekt, o którym pisaliśmy tutaj. To bardzo ciekawe wykorzystanie shardów w rozproszonej bazie danych. Cały ekosystem oferuje uproszczoną perspektywę sieci blockchain. Warto również nadmienić, że Polkadot ma wysoko wyspecjalizowane parachain, o których już pisaliśmy.

Podsumowanie

Proces shardingu jest niewątpliwie ciekawym i godnym uwagi rozwiązaniem, poprawiającym skalowalność danej sieci blockchain. Do pożądanych rezultatów co prawda daleko, ale deweloperzy pracują nad optymalizacją całego procesu. Rozwiązują wszelkie przeszkody, które mogą się pojawić, jednocześnie pracując nad poprawą bezpieczeństwa.