How BenchBox works internally.
System components and design patterns.
Code organization and directories.
End-state extraction and refactoring targets tied to active planning TODOs.
Self-contained - No external dependencies.
Modular - Easy to extend and maintain.
Fast - Built for performance.
Cross-database - Works with any SQL database.
┌─────────────────────────────────────────────────────────────┐
│ BenchBox Architecture │
├─────────────────────────────────────────────────────────────┤
│ User Interface Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ TPCH │ │ TPCDS │ │ JoinOrder │ ... │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ Core Framework Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ BaseBench │ │ QueryMgr │ │ DataGen │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ Infrastructure Layer │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ SQL Trans │ │ Caching │ │ File I/O │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
Core Framework
- BaseBenchmark - Base class for all benchmarks
- QueryManager - SQL query storage
- DataGenerator - Data generation
- Schema - Database schemas
Benchmarks
- TPC-H, TPC-DS, Join Order, Primitives
- Custom benchmark support
Infrastructure
- SQL Translation - Cross-dialect support
- Caching - Performance optimization
- File I/O - Data management
Strategy Pattern - Different data generation algorithms.
Factory Pattern - Consistent benchmark creation.
Template Method - Standardized execution workflow.
- Read Architecture Design
- Review Project Structure
:maxdepth: 1
:caption: Design Docs
:hidden:
architecture
structure
future-state/index