PBench is a toolkit for Presto and Trino performance testing and operations. Originally a replacement for Benchto, PBench has grown to include:
- Benchmarking — run configurable, concurrent query workloads with results capturing and correctness verification
- Workload replay — replay recorded production query traffic against a cluster
- Query forwarding — monitor a source cluster and forward queries to one or more target clusters in real time
- Table schema saving — export table metadata and statistics for reproducing schemas across environments
- Result comparison — diff query output directories to detect regressions
- DDL generation — generate CREATE/INSERT scripts for benchmark datasets (TPC-DS, TPC-H, etc.)
- Query JSON analysis — load query info JSON files into databases for offline analysis
For a detailed explanation of PBench's design and architecture, see Comprehensive Performance Benchmarking, Monitoring, and Reporting Infrastructure for Presto and Prestissimo.
- QuickStart — install and run your first benchmark in minutes
- Installing PBench — platform-specific download and setup
- Configuring PBench — create stage JSON files to define queries, sessions, and execution order
- Parameters — complete reference for all stage JSON parameters
- The Run Command — flags and options for
pbench run- Understanding PBench Output — output directory structure and result files
- Comparing Results — use
pbench cmpto diff query output directories
- Command Reference — online help for every
pbenchsubcommand (run,cmp,forward,replay,save, etc.) - Generating Benchmark Configurations — use
pbench genconfigto generate cluster configs from templates
- Development — building, testing, and contributing to PBench