並列化の概念と原則

WBOY
リリース: 2024-07-16 08:41:49
オリジナル
864 人が閲覧しました

並列化の概念と原則

効率的な​​トランザクション処理は、ブロックチェーン ネットワークのスループットを向上させ、ブロックチェーンのスケーラビリティの問題を解決する鍵となります。この記事では、並列化の基本、原則、一般的な種類、および潜在的な利点について説明します。

並列化とは何ですか?

並列化(並列トランザクション実行)は、複数のタスクを同時に処理する方法です。並列化は、コンピューター サイエンスにおける並列コンピューティングの概念と密接に関連しています。並列コンピューティングとは、複数のプロセスを同時に実行することを指します。

並列化はどのように機能しますか?

ネットワーク データは並列化によって整理され、複数のトランザクションを 1 つずつ順番に処理するのではなく、同時に検証できるようになります。トランザクションを実行するタスクは複数のノードに分散されます。各ノードはトランザクション量のさまざまな部分を個別に処理するため、処理時間が短縮され、ネットワークの混雑が緩和されます。

並列トランザクション処理では、ネットワークはさまざまな潜在的な状態を同時にチェックでき、各状態は特定のトランザクションのセットを検証した結果を表します。これにより、ネットワークはトランザクションが台帳に正式に記録される前に、トランザクションの潜在的な影響を評価できるようになります。評価後、ノードは共通の状態に一致し、並列検証の統一された結果が表示されます。

並列化モデル

ブロックチェーンの並列化は、楽観的並列化と状態アクセス並列化という 2 つの主要なタイプに分類されます。

1.楽観的な並列化。 オプティミスティック並列実行モデルでは、ネットワークは最初のソート段階をスキップし、トランザクションを同時に直接処理します。このアプローチでは、キュー内のほとんどのトランザクションが独立していることを前提としており、同じアプローチを使用して、トランザクションの実行後に関連するトランザクションを再チェックして修正します。つまり、トランザクションが最初は無関係であると判断されたが、後で相互に影響を及ぼしていることが判明した場合、システムはそれらのトランザクションを調整してデータの正確性を確保します。

2.状態アクセスの並列化。 状態アクセス並列実行モデルでは、ネットワークは最初に、ネットワーク状態への影響に基づいてトランザクションを分類します。さまざまな影響には、特定のスマート コントラクトまたはアカウントとの相互作用が含まれており、どのトランザクションを競合せずに並行して処理できるかを判断するのに役立ちます。相互作用しないトランザクションは同時に実行できます。対照的に、同様の状態要因に影響を与えるトランザクションは、ガス料金によって決定される順序の優先順位を使用して、特定の順序で処理する必要があります。

さまざまな種類の並列化

トランザクションレベルの並列化

トランザクションレベルの並列化とは、複数のトランザクションを同時に処理できることを意味します。これにより、ネットワークのスループットが向上し、1 秒あたりのトランザクション (TPS) が増加します。さらに、トランザクションレベルの並列化により、トランザクション確認に必要な時間が短縮され、ネットワーク全体の応答性が向上します。このタイプの並列化は、高速な処理時間を維持する必要がある高要求のブロックチェーンに最適です。

ただし、トランザクションレベルの並列化にも問題があります。たとえば、トランザクションの同時処理はデータに大きく依存します。 1 つのトランザクションの出力が別のトランザクションに影響を与える可能性があるため、データの一貫性と信頼性を確保するには複雑なデータ管理戦略が必要になります。

ブロックレベルの並列化

ブロックレベルの並列化とは、ネットワークのスケーラビリティを向上させることを目的として、ブロックの作成と検証が同時に実行されることを意味します。このアプローチでは、複数のブロックを同時に処理することで、ブロックチェーンがより多くのトランザクションに対応できるようになり、潜在的なネットワークの輻輳を防ぐことができます。

ただし、ブロックレベルの並列処理は、ブロックチェーンのセキュリティへの影響を避けるために慎重に実装する必要があります。さらに、ブロックレベルの並列化にはより多くのコンピューティング リソースが必要となるため、ネットワーク ノードのハードウェア要件が増加します。これにより、一部のユーザーのネットワークへの参加が制限され、ネットワークの分散化とアクセシビリティに悪影響を及ぼす可能性があります。

スマート コントラクトの並列化

スマート コントラクトの並列化とは、複数のスマート コントラクトの並列実行を指します。これにより、分散アプリケーション (DApp) のパフォーマンスが向上し、スケーラビリティと応答性が向上します。

スマート コントラクトの並列実行を容易にするメカニズムが複数あります。たとえば、オプティミスティック アグリゲーションはトランザクションをオフチェーンで実行し、トランザクションが確認された場合にのみブロックチェーンと対話するため、メイン チェーンの負荷が軽減されます。イーサリアム向けの Validium スケーリング ソリューションは、ゼロ知識証明とオフチェーン計算を組み合わせて、スマート コントラクト アプリケーションにスケーラビリティとプライバシーを提供します。

並列化の利点

トランザクション処理速度の向上

タスクを複数のノードに分散することで、トランザクションの実行時間を短縮し、トランザクション処理速度を向上させることができます。並列化を実装したネットワークは、逐次処理モデルで動作するネットワークよりも効率が高くなる傾向があります。

スケーラビリティ

並列化は、トランザクション検証を複数のノードに分散して、ブロックチェーンのスケーラビリティの問題を解決します。これによりプロセスが高速化され、水平方向のスケーリングもサポートされます。水平方向の拡張とは、需要の変化に応じてネットワークがノードを追加または削除することを意味します。

ガスコストの削減

並列化によりトランザクションがノードのサブグループに分散されるため、手数料が削減されます。これは、各トランザクションが各ノードによって検証される場合にトランザクションを順次処理するよりもコストが低くなります。さらに、トランザクション速度が向上すると、ノード間の競争が減少し、トランザクション手数料がさらに削減されます。

結論

並列化は、複数のトランザクションを同時に処理する方法であり、トランザクション処理速度の向上、スケーラビリティの向上、手数料の削減など、多くの利点があります。将来的には、並列化をシャーディングなどの他のスケーリング ソリューションと組み合わせて、ブロックチェーン ネットワークのスケーラビリティをさらに拡張できるようになります。

以上が並列化の概念と原則の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:binance.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!