Run Your Own Benchmarks

Everyone says you should. BenchBox makes it easy to do. Use as CLI, Python library, or MCP for AI assistants. No Docker. No compilers. Just pip install.

CLI, Library, or MCP
# CLI - Quick benchmarking
benchbox run --platform duckdb --benchmark tpch

# MCP - AI assistant integration
"Run TPC-H on DuckDB" # Claude executes via MCP

# Library - Deep Python integration
from benchbox import TPCH
BenchBox - Database Benchmarking Toolkit

What Makes It Simple

Benchmarks by Category

TPC Standards

Official industry standards for comparing databases

Academic Benchmarks

Research benchmarks from academia

Industry Benchmarks

Real-world benchmarks from practitioners

BenchBox Primitives

Fundamental database operation testing

BenchBox Experimental

Experimental benchmarks for specialized testing

Supported Platforms

Single-Node Analytics Engines

In-process and local columnar databases

Row-Based Databases

Traditional relational databases

Cloud Data Platforms

Enterprise cloud data warehouses and lakehouses

Open Source Platforms

Distributed query engines for federated data

Managed Spark Services

Cloud-managed Spark for lakehouse and data lake analytics

Time Series Databases

Optimized for time-stamped data

DataFrame Platforms

Native DataFrame APIs instead of SQL

Open Table Formats

Convert benchmark data to modern columnar formats for optimized storage, ACID transactions, and time travel capabilities.

File Formats

Columnar storage for fast analytics

Table Formats

ACID transactions, time travel, and schema evolution

Convert benchmark data to any format
# Convert TPC-H data to different formats
benchbox convert --input ./tpch_sf1 --format parquet
benchbox convert --input ./tpch_sf1 --format delta
benchbox convert --input ./tpch_sf1 --format iceberg
benchbox convert --input ./tpch_sf1 --format ducklake

AI Assistant Integration

BenchBox includes an MCP (Model Context Protocol) server for Claude Code and other AI assistants. Run benchmarks with natural language instead of memorizing CLI flags.

Quick Setup

Add to Claude Code
claude mcp add benchbox -- uv run python -m benchbox.mcp

What You Can Do

Natural language commands for benchmarking workflows

Discover

"What benchmarks are available?"

"Which platforms support TPC-DS?"

Explore 18 benchmarks and 38 platforms without reading documentation.

Execute

"Run TPC-H on DuckDB at scale 0.1"

"Compare Polars and Pandas on SSB"

Run benchmarks without memorizing CLI syntax or options.

Analyze

"Which queries were slowest?"

"Compare results from my last two runs"

Get AI-powered analysis of performance patterns and regressions.

Get Started

1. Install

uv add benchbox

2. Run as CLI

# Quick TPC-H benchmark on DuckDB
benchbox run --platform duckdb --benchmark tpch --scale 0.1

# Preview on cloud before spending credits
benchbox run --platform databricks --benchmark tpch --dry-run ./preview

3. Or Use as Library

from benchbox import TPCH

# Initialize and generate benchmark data
tpch = TPCH(scale_factor=0.1)
data_files = tpch.generate_data()

# Get schema and queries
create_sql = tpch.get_create_tables_sql()
query = tpch.get_query(1)  # Q1: Pricing Summary Report

Requirements

  • Python 3.10 or higher
  • No external dependencies for data generation
  • Optional: database drivers (duckdb, sqlite3, etc.)