Skip to main content
QUICK REVIEW

[論文レビュー] FastFabric: Scaling Hyperledger Fabric to 20,000 Transactions per Second

Christian Gorenflo, Stephen Lee|arXiv (Cornell University)|Jan 3, 2019
Blockchain Technology Applications and Security参考文献 15被引用数 45
ひとこと要約

論文は Hyperledger Fabric v1.2 を、メタデータをデータから分離し、並列性を高め、インメモリ世界状態を使用し、コミッター/エンドーサーのハードウェアを分離するプラグアンドプレー変更で再設計し、ブロック遅延を減らすとともにスループットを約3kから約20k tx/sへ向上させる。

ABSTRACT

Blockchain technologies are expected to make a significant impact on a variety of industries. However, one issue holding them back is their limited transaction throughput, especially compared to established solutions such as distributed database systems. In this paper, we re-architect a modern permissioned blockchain system, Hyperledger Fabric, to increase transaction throughput from 3,000 to 20,000 transactions per second. We focus on performance bottlenecks beyond the consensus mechanism, and we propose architectural changes that reduce computation and I/O overhead during transaction ordering and validation to greatly improve throughput. Notably, our optimizations are fully plug-and-play and do not require any interface changes to Hyperledger Fabric.

研究の動機と目的

  • 高スループットを実現する許可型ブロックチェーンの必要性を動機づけ、Hyperledger Fabric 1.2 における合意以外のスループットボトルネックを評価する。
  • エンドツーエンドのトランザクションスループットを向上させるプラグアンドプレーのアーキテクチャ最適化を設計・実装する。
  • これらの最適化が Fabric API を維持しており、Fabric 2.x と統合可能であることを示す。
  • パフォーマンス結果を提供し、最大 50k tx/s までのスケーラビリティの方向性を議論する。

提案手法

  • トランザクションのメタデータをペイロードから分離し、オーダリングサービスへ トランザクションID のみを送信して順序付けのオーバーヘッドを削減する。
  • オーダリングサービスにメッセージパイプライニングと並列処理を導入してスループットを向上させる。
  • クリティカルパス上の読み書き操作を高速化するため、world state データベースをインメモリのハッシュテーブルに置換する。
  • ブロックストレージをコミット/エンドースメントからデカップリングし、専用のストレージクラスターとエンドーサープールを有効にする。
  • コミットとエンドースメントの役割を別個のハードウェアに分離して競合を低減する。
  • 検証中の繰り返しデコードを避けるため、アンマーシャル済みの Protocol Buffers ブロックをキャッシュする。

実験結果

リサーチクエスチョン

  • RQ1オーダリングと検証パスを再設計することにより、API変更なしで Hyperledger Fabric のスループットを大幅に向上させることができるか?
  • RQ2Fabric 1.2 でメタデータをデータから分離し、並列性を有効化し、インメモリデータ構造を使用することによる性能向上はどの程度か?
  • RQ3アーキテクチャの分離(コミットters 対 endorsers)とキャッシュが、エンドツーエンドのスループットとレイテンシにどのように影響するか?
  • RQ4代表的なワークロード下での FastFabric のエンドツーエンドの実現可能なスループットは、Fabric 1.2 と比べてどの程度か?

主な発見

  • 100k endorsed transactions で、エンドツーエンドのスループットは 3,185±62 tx/s (Fabric 1.2) から 19,112±811 tx/s (FastFabric) へスケールする。
  • ペイロードサイズ最適化を適用した場合、設定(Opt O-I および O-II)に応じておよそ 21,719–28,534 tx/s へ向上する。
  • すべての Peer 最適化(Opt P-I, P-II, P-III)を適用すると、Peer スループットは ~3,200 tx/s (Fabric 1.2) から 21,000 tx/s 超へ向上する。
  • 最適化によりブロック遅延は大幅に低減し、ピークスループット時には元の遅延のおおよそ3分の1程度を達成する。
  • 100 トランザクションのブロックサイズは、調整された並列性設定の下で最適なエンドツーエンドのスループットを生み出す(≈21k tx/s)。
  • 展開されたセットアップにおいて、エンドツーエンドの実験は Fabric 1.2 に対して 6–7 倍のスループット改善を示す。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。