Blockbench notes

aaron guan

CONTENTS

  1. Abstract
  2. Introduction
  3. Private Blockchains
  4. Blockbench Design
  5. Performance Benchmark
  6. Discussion

ABSTRACT

  • Introduction of Blockchain
  • Description of Blockbench

1. INTRODUCTION

  • Introduction of Bitcoin, Ethereum
  • Three Challenges

    1. the Consensus Layer, Data Model and Execution Layer
    2. based on Ethereum, Parity and Hyperledger
    3. design and run Transaction and Analytics workloads
  • several dimensions:

    1. Throughput
    2. Latency
    3. Scalability
    4. Fault Tolerance

2. PRIVATE BLOCKCHAINS

  • Blockchain transactions: ACID, two-phase commit
  • Bitcoin: PoW, miner, fork
  • Ethereum: Turing complete state machines, EVM
  • Private blockchain:
    • Distributed fault-tolerant consensus: Zab, Raft, Paxos, PBFT
    • Variants: Parity, Ripple, ErisDB

3. BLOCKBENCH DESIGN

3.1 Blockchain Layers

3.2 BLOCKBENCH Implementation

3.3 Evaluation Metrics

  1. Throughput

    • the number of successful transactions per second.
  2. Latency

    • the response time per transaction.
  3. Scalability

    • the changes in throughput and latency when increasing number of nodes and workloads.
  4. Fault tolerance

    • how the throughput and latency change during node failure.
    • three failure modes

      1. a node simply stops
      2. network delay
      3. random response

3.4 Workloads

  • 2 major categories:
    • macro benchmark
    • micro benchmark

4. PERFORMANCE BENCHMARK

4.1 Macro benchmarks