メインコンテンツへスキップ

このページの翻訳を行う

🌏

このページの新しいバージョンがありますが、現在は英語のみです。最新バージョンの翻訳にご協力ください。

ページを翻訳する
英語を見る

ここにバグはありません!🐛

このページは翻訳されていないため、このページは英語で表示されています。

シャーディング

  • シャーディングとは、イーサリアムのスケーラビリティと性能を向上させるための複数のフェーズにわたるアップグレードです。
  • シャーディングはデータストレージを安全に分散し、ロールアップがより安価になり、ノードがより稼働しやすくなる
  • レイヤー2ソリューションが実現し、イーサリアムのセキュリティを活用しつつ、トランザクションフィーが安価になります。
  • イーサリアムのプルーフ・オブ・ステークへの移行以来、このアップグレードにはより注目が集まっています。

ページの最終更新日時: 2022年11月29日

導入のタイミング

~2023年

シャーディングは、2023年頃にリリースされる見込みです。 シャードはイーサリアムのデータの保存/アクセスの性能を高めますが、コードの実行には使用されません。

シャーディングとは

シャーディングは、データベースを水平に分割して負荷を分散するプロセスです。コンピュータサイエンスの一般的な概念です。 イーサリアムの世界では、シャーディングはレイヤー 2 ロールアップと相乗的に機能し、。ネットワーク全体のロールアップで必要な大量データの処理を負荷分散します。 これにより、ネットワークの輻輳を軽減し、1 秒あたりのトランザクション数を増加させることができます。

これはスケーラビリティ以上にその他の理由において重要です。

シャーディングの特徴

誰でも実行可能なノード

もしデータベースのサイズを大きくする以外の方法でデータをスケーリングする場合、シャーディングは有効な方法です。 もしシャーディングを行わない場合、検証に莫大な計算リソースが必要となるため、イーサリアムへのアクセスは低下してしまうでしょう。 シャーディングを使用すると、バリデータは全データをすべて自分で保存する必要がなくなり、データ技術を使用して、ネットワーク全体でデータが利用可能になったことを確認します。 そのため、レイヤー 1 でのデータ保存に必要なハードウェアのコストを大幅に削減できます。

より多くのネットワークへの参加

シャーディングは最終的には個人のノートパソコンまたはスマートフォンでイーサリアムを実行することを可能にします。 したがって、より多くの人々がシャーディングされたイーサリアムに参加し、クライアントを実行することができるようになります。 これにより、ネットワークを分散すればするほど攻撃の対象となるエリアが小さくなるため、セキュリティが向上します。

シャーディングよりハードウェア要件が下がると、仲介サービスに頼らずに クライアント を自分で簡単に実行できるようになります。 可能ならば複数のクライアントを実行することを検討してください。 障害点をさらに減らすことでネットワークの健全性を高めることができます。


コンセンサスクライアントと同時に実行クライアントを実行している必要があります。 launchpad では、ハードウェア要件とプロセスについて説明します。

シャードチェーン バージョン 1:データの可用性

🚧
注意: シャーディングの構想は、より効率的なスケーリングが開発されるにつれて、進化してきました。 「ダンクシャーディング(Danksharding)」 とは、シャード「チェーン」という概念を使わず、シャードの「ブロブ(blob)」を使ってデータを分割し、すべてのデータが利用可能であるかを確認する「データ可用性サンプリング」という新しいシャーディングのアプローチです。 計画へのこの変更は、元となる同じ問題を解決できます。

以下の詳細は、最新の開発計画より古くなっている可能性があります。 アップデートするまでの間は、イーサリアムへのヒッチハイク・ガイドをご覧ください。秀逸なイーサリアムロードマップの概要が記載されています。

最初のシャードチェーンが提供されると、ネットワークに追加のデータが提供されます。 シャードチェーンではトランザクションやスマートコントラクトは制御されません。 しかし、ロールアップと組み合わせることでトランザクションの処理速度を改善することができます。

ロールアップは、現在「レイヤー 2」技術です。 これにより、dapps はトランザクションをオフチェーンで単一のトランザクションにまとめたり、ロールアップしたりすることができ、暗号化された証明書を生成してチェーンに送信することができます。 これにより、1 トランザクションあたりに必要なデータが削減されます。 これをシャードによって提供されるすべての追加データと組み合わせることで毎秒 10 万回のトランザクションが可能となります。

シャードチェーン バージョン 2: コードの実行

この計画は、シャードを現在のイーサリアムメインネット のようなものにするために、シャードに新たな機能を追加することでした。 シャードはコードを格納・実行できるようになり、それぞれのシャードには、独自のスマートコントラクトとアカウント残高が含まれているため、トランザクションを処理することができるようになります。 クロスシャード通信により、シャード間のトランザクションが可能にになります。

しかし、バージョン 1 のシャードで高速なトランザクションが可能になることを考慮すると、コードの実行は本当に必要でしょうか。 これについてはコミュニティで議論されており、いくつかの選択肢があります。

シャードにおけるコード実行の必要性

Bankless (ポッドキャストの番組) で、Vitalik Buterin は議論すべき価値のある 3 つの潜在的な選択肢を紹介しました。

1. 状態の実行は不必要

この選択肢は、シャードにスマートコントラクトを処理する機能を加えず、データ格納庫のままにするというものです。

2. いくつかの実行シャードを使用

この選択肢は、すべてのシャードに機能を加えないという妥協案です。 いくつかのシャードのみに機能を追加して、残りのシャードはこのまま残すというものです。 これによりスピードアップが望めます。

3. ゼロ知識(ZK) SNARKs ができるまで待つ

最後の選択肢は、zk-SNARKs が確定されてから、この議論を振り返ることです。 これは、真にプライベートなトランザクションを実現できるテクノロジーです。 よりスマートなシャードが必要になるかもしれませんが、現在はまだ研究開発段階です。

その他のソース

関連記事

これはいまだ活発に議論されています。 新しい情報があればページを更新します。

アップグレード間の関係

イーサリアムのアップグレードすべては、いくらか相互に関連しています。 それではシャードチェーンが他のアップグレードとどのように関連しているか、見直していきましょう。

シャードとイーサリアムブロックチェーン

シャードを安全に保ち、同期するロジックはすべて、ブロックチェーンを構築するイーサリアムクライアントに統合されます。 ネットワーク内のステーカーは、担当するシャードに割り当てられます。 シャードは他のシャードのスナップショットにアクセスできるため、イーサリアムのビューを構築し、すべてを最新に保つことができます。

続きを読む

このページは役に立ちましたか?