Skip to main content
QUICK REVIEW

[論文レビュー] Early Detection for Multiversion Concurrency Control Conflicts in Hyperledger Fabric

Helmi Trabelsi, Kaiwen Zhang|arXiv (Cornell University)|Jan 15, 2023
Blockchain Technology Applications and Security被引用数 4
ひとこと要約

本論文は、Hyperledger FabricにおけるMVCC競合の早期検出(EMVCC)を提案する。この新規メカニズムは、ローカルキー・キャッシュを用いて、エンドースメント段階でトランザクション競合を検出することで、エンドツーエンドの遅延を著しく削減し、グッドプットを向上させる。最も効果的な実装であるSyncMapは、ベースラインのFabricと比較して、グッドプットを最大23%向上させ、遅延を最大80%削減する。これは、EOVパイプラインの途中で競合するトランザクションを早期に中止することで達成される。

ABSTRACT

Hyperledger Fabric is a popular permissioned blockchain system that features a highly modular and extensible system for deploying permissioned blockchains which are expected to have a major effect on a wide range of sectors. Unlike traditional blockchain systems such as Bitcoin and Ethereum, Hyperledger Fabric uses the EOV model for transaction processing: the submitted transactions are executed by the endorsing peer, ordered and batched by the ordering services, and validated by the validating peers. Due to this EOV workflow, a well-documented issue that arises is the multi-version concurrency control conflict. This happens when two transactions try to writes and read the same key in the ledger at the same time. Existing solutions to address this problem includes eliminating blocks in favor of streaming transactions, repairing conflicts during the ordering phase, and automatically merging the conflicting transactions using CRDT (Conflict Free Replicated Data) techniques. In this paper, we propose a novel solution called Early Detection for MVCC Conflicts. Our solution detects the conflicting transactions at an early stage of the transaction execution instead of processing them until the validation phase to be aborted. The advantage of our solution is that it detects conflict as soon as possible to minimize the overhead of conflicting transaction on the network resulting in the reduction of the end-to-end transaction latency and the increase of the system's effective throughput. We have successfully implemented our solution in Hyperledger Fabric. We propose three different implementations which realize early detection. Our results show that our solutions all perform better than the baseline Fabric, with our best solution SyncMap which improves the goodput by up to 23% and reduces the latency by up to 80%.

研究の動機と目的

  • Hyperledger FabricのEOVトランザクションモデルにおけるMVCC競合による性能ボトルネックを解消すること。具体的には、競合が検出されるのが検証段階の後半にまで遅れる問題を解決する。
  • ブロック領域を消費し、クライアントによる再試行を要する中止トランザクションのオーバーヘッドを低減することで、システムスルーレートと効率を向上させること。
  • 注文段階および検証段階の前段階であるエンドースメント段階で、競合を早期に検出することで、エンドツーエンドのトランザクション遅延を最小限に抑えること。
  • ネットワークおよびストレージリソースを消費する前に、競合確率の高いトランザクションを事前に特定し、中止することで、システムのグッドプットを向上させること。
  • 既存のFabricアーキテクチャと互換性があり、チェーンコードやネットワーク構成の変更を最小限に抑えて導入可能な、柔軟でモジュラーなソリューションを提供すること。

提案手法

  • エンドースメント・ピアにローカルキー・キャッシュを導入し、読み取り-書き込みセットを追跡することで、注文段階の前段階で潜在的なMVCC競合を検出する。
  • 同期マップ(SyncMap)、ロックフリー(Lock-Free)、ミューテックスロック(Mutex Lock)の3つのバリエーションを実装し、パフォーマンスと整合性のトレードオフを考慮した異なる並行データ構造を用いる。
  • EMVCCの検出ロジックをエンドースメント段階に統合することで、バージョン不一致により検証段階で失敗する可能性のあるトランザクションを早期に中止できるようにする。
  • 理論的モデリングを用いて、エンドースメントポリシー、組織数、ピア分布に基づく競合検出の有効性を分析する。
  • クライアントに対して透過的であり、MSPやチェーンコード実行と同様に、既存のFabricコンponentsと互換性を持つように設計する。
  • さまざまなワークロード、チェーンコードアクセスパターン(Zipf分布を用いて)、ネットワークトポロジーを想定し、スケーラビリティと耐障害性を評価する。

実験結果

リサーチクエスチョン

  • RQ1Hyperledger FabricにおけるMVCC競合をEOVパイプラインの途中で早期に検出可能か。これにより遅延の低減とグッドプットの向上が達成できるか。
  • RQ2エンドースメントポリシー(AND対 OR)の選択が、早期競合検出の有効性および誤検出/見逃し率に与える影響は何か。
  • RQ3ネットワークトポロジー、特に組織ごとのピア数が、早期競合検出のパフォーマンスに与える影響は何か。
  • RQ4チェーンコードのアクセスパターン(例:Zipf分布による偏りのあるキーアクセス)が、EMVCCの検出率およびパフォーマンス向上に与える影響は何か。
  • RQ5同期マップ(SyncMap)、ロックフリー(Lock-Free)、ミューテックスロック(Mutex Lock)のうち、パフォーマンス、スケーラビリティ、競合検出精度のバランスが最適なのはどれか。

主な発見

  • SyncMap実装は、ベースラインのHyperledger Fabricと比較して、最大23%高いグッドプットと最大80%低いエンドツーエンドのトランザクション遅延を達成する。
  • ANDポリシー下で2組織、1組織あたり2ピアの場合、エンドースメント段階で検出されなかったが検証段階で検出された「誤検出(false negatives)」は22%に達する。これは、検出カバレッジの向上の余地があることを示している。
  • 組織ごとのピア数を増やすことで、特にANDエンドースメントポリシー下でスルーレートとグッドプットが向上する。これは、より良い競合検出と負荷分散が実現されるためである。
  • ORエンドースメントポリシーは、誤検出率が高くなる傾向にあり、高い原始的スルーレートにもかかわらず、パフォーマンス向上が制限される。したがって、競合検出を最優先する場合にはANDポリシーがより効果的である。
  • 高い競合率(例:Zipf分布のs = 1.5)下では、SyncMapはFabricと比較してグッドプットを35%向上させる。これは、現実的なワークロード下でも強力なスケーラビリティを示している。
  • ANDエンドースメントポリシー、1組織あたりの最小ピア数、およびブロックサイズの適切なチューニングを組み合わせることで、ソリューションの効果が最大になる。

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

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

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

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