Hilf mit, diese Seite zu aktualisieren

🌏

Es gibt eine neue Version dieser Seite, aber im Moment ist sie nur auf Englisch verfügbar. Hilf mit, die neueste Version zu übersetzen.

📣
Latest: Eth2 researchers are working on ways to accelerate the merge. It will probably happen earlier than expected. More soon. Follow updates

Shard Chains

  • Sharding ist ein mehrphasiges Update um Ethereums Skalierbarkeit und Kapazität zu erhöhen.
  • Shard Chains verteilen die Last des Netzwerks auf 64 neue Chains.
  • Sie machen es einfacher, eine Node zu betreiben, indem sie die Anforderungen an die Hardware niedrig halten.
  • Die technische Roadmap beinhaltet die Arbeit an Shard Chains in Phase 1 und möglicherweise Phase 2.

Seite zuletzt aktualisiert: August 19, 2021

Wann wird es veröffentlicht?

~2021

Shard Chains sollten irgendwann in 2021 implementiert werden – in Abhängigkeit davon, wie schnell die Arbeit voranschreitet, nachdem die Beacon Chain eingeführt wurde. Diese Shards werden Ethereum mehr Kapazität für das Speichern und den Zugriff auf Daten geben, aber sie werden nicht für die Ausführung von Codes verwendet. Die Details hierfür werden noch ausgearbeitet.

Was ist Sharding?

Sharding umfasst den Prozess, eine Datenbank horizontal aufzusplitten, um die Verarbeitungslast zu verteilen – ein gängiges Konzept in der Informatik. Im Kontext von Ethereum soll Sharding die Überlastung des Netzwerkes reduzieren und die Transaktionen pro Sekunde erhöhen, indem es neue Chains schafft, welche als "Shards" bezeichnet werden.

Dies ist aus anderen Gründen als Skalierbarkeit wichtig.

Funktionen von Sharding

Jeder kann eine Node betreiben

Sharding ermöglicht es, Skalierbarkeit auf dezentrale Art und Weise zu gewährleisten, statt Skalierbarkeit schlicht durch Vergrößerung der bestehenden Datenbank zu erlangen. Letzteres würde Ethereum weniger zugänglich für Netzwerk-Validatoren machen, da diese leistungsstarke und teure Computer erfordern. Mit Shard Chains müssen Validatoren nur Daten für jenen Shard speichern/ausführen, welchen sie überprüfen, und nicht für das gesamte Netzwerk (wie es aktuell der Fall ist). Dies beschleunigt den Prozess drastisch und reduziert die Hardwareanforderungen.

Mehr Netzwerkbeteiligung

Durch Sharding kannst du früher oder später Ethereum auf deinem eigenen Laptop oder Smartphone benutzen. Somit sollte es mehr Menschen möglich sein, am Netzwerk zu partizipieren oder Clients in Ethereum mit Sharding zu betreiben. Dies wird die Netzwerksicherheit erhöhen. Denn je dezentralisierter das Netzwerk ist, desto geringer ist dessen Angriffsfläche.

Dank Sharding werden geringere Hardwareanforderungen es vereinfachen, Clients selbst zu betreiben, ohne dabei auf zwischengeschaltete Dienste zurückgreifen zu müssen. Wenn möglich, kannst du damit sogar mehrere Clients betreiben. Damit stärkst du das Netzwerk, indem potentielle Fehlerquellen zusätzlich reduziert werden. Einen Eth2-Client betreiben.


Zunächst benötigst du neben deinem Eth2-Client auch einen Mainnet-Client. Das Launchpad wird dich durch die Hardwareanforderungen und den Prozess begleiten. Alternativ kannst du einen Backend-API verwenden.

Shard Chains Version 1: Datenverfügbarkeit

Wenn die ersten Shard Chains implementiert sein werden, werden diese zunächst einmal lediglich zusätzliche Daten an das Netzwerk liefern. Sie werden keine Transaktionen oder Smart Contracts verarbeiten. Aber dennoch werden sie unglaubliche Verbesserungen für die Transaktionen pro Sekunde bringen, wenn sie mit Rollups kombiniert werden.

Rollups sind eine "Layer 2"-Technologie, die heute bereits existiert. Sie erlauben dApps, Transaktionen zu bündeln oder sie mittels "Roll up" in eine einzelne Transaktions-Off-Chain zu vereinen, einen kryptographischen Beweis zu erstellen und diesen dann zur Chain zu senden. Dies reduziert die Datenmenge, die für eine Transaktion benötigt wird. Kombiniert mit der zusäzlichen Datenverfügbarkeit durch die Shards erhält man 100.000 Transaktionen pro Sekunde.

Mehr zu Rollups

Shard Chains Version 2: Codeausführung

Der Plan war es immer, den Shards eine extra Funktionalität hinzuzufügen, um sie ähnlich dem heutigen Ethereum-Mainnet zu gestalten. Dies ermöglicht ihnen, Smart Contracts zu speichern und auszuführen und Konten zu verwalten. Aber ist das in Anbetracht des Anstiegs der Transaktionen pro Sekunde, den Shards der Version 1 bieten, überhaupt noch nötig? Dies wird in der Community nach wie vor diskutiert und es scheint, als gäbe es verschiedene Optionen.

Benötigen Shards Codeausführung?

Vitalik Buterin hat im Gespräch mit dem Bankless-Podcast 3 mögliche Optionen vorgestellt, die diskutiert werden sollten.

1. Statusausführung nicht notwendig

Dies würde bedeuten, dass wir Shards nicht die Fähigkeit geben, Smart Contracts zu verwalten, und diese als Datenlager belassen.

2. Shards zur Ausführung

Vielleicht gibt es einen Kompromiss, in dem wir nicht alle Shards benötigen (64 sind aktuell geplant), um intelligenter zu sein. Wir könnten diese Funktionalität einfach zu einigen wenigen hinzufügen und den Rest belassen. Dies könnte die Bereitstellung beschleunigen.

3. Warten auf Zero Knowledge (ZK) Snarks

Abschließend sollten wir die Debatte vielleicht noch einmal aufgreifen, wenn die ZK Snarks gefestigt sind. Diese Technologie könnte helfen, wirklich private Transaktionen ins Netzwerk einzubringen. Wahrscheinlich werden diese weiter entwickelte und intelligentere Shards benötigen, jedoch befinden sie sich noch immer in der Entwicklung.

Andere Quellen

Hier sind weitere Gedanken zu den selben Ansätzen:

Dies ist immer noch ein aktiver Diskussionspunkt. Wir werden diese Seite updaten, sobald wir mehr wissen.

Beziehung zwischen Updgrades

Die Eth2-Upgrades stehen alle miteinander in Verbindung. Im Folgenden wollen wir einen kurzen Blick darauf werfen, wie Shard Chains zu anderen Upgrades in Beziehung stehen.

Shards und die Beacon Chain

Die Beacon Chain enthält die komplette Logik, um Shards sicher und synchron zu halten. Die Beacon Chain wird die Staker im Netzwerk koordinieren und sie den Shards zuweisen, an denen sie arbeiten müssen. Sie wird außerdem die Kommunikation zwischen den einzelnen Shards sicherstellen, indem sie Transaktionsdaten einzelner Shards empfängt und abspeichert, auf die andere Shards wiederum zugreifen können. Jeder Shard hat dadurch Zugriff auf den Status von Ethereum und kann diesen laufend aktualisieren.

Die Beacon Chain

Shards und das Andocken

Auch nach der Einführung von Shards wird das heutige Ethereum-Mainnet weiterhin existieren. An einem gewissen Punkt wird das Mainnet allerdings ein Shard werden müssen, damit der Übergang von Proof-of-Work zu Proof-of-Stake – und damit zum Staking – möglich wird. Es muss sich noch herausstellen, ob das Mainnet der einzige sogenannte "smarte" Shard sein wird, der Code ausführen kann. So oder so wird eine Entscheidung darüber in Phase 2 des Sharding fallen.

Das Andocken

Weiterlesen