A port of the TPC-C benchmark for MySQL to measure database performance under OLTP workloads.
tpcc-mysql is an open-source implementation of the TPC-C benchmark specifically adapted for MySQL databases. It simulates a complex online transaction processing (OLTP) workload to measure database performance, scalability, and response times under realistic conditions. The tool helps database administrators and developers evaluate how their MySQL configurations handle concurrent transactions.
Database administrators, performance engineers, and developers working with MySQL who need to benchmark database performance, compare hardware/configuration changes, or validate scalability for OLTP applications.
It provides a standardized, industry-recognized benchmark specifically ported for MySQL, offering reproducible performance measurements and detailed transaction metrics that help identify database bottlenecks and optimization opportunities.
tpcc-mysql is an open-source port of the TPC-C benchmark specifically for MySQL databases. It simulates a wholesale parts supplier's online transaction processing (OLTP) workload to evaluate database performance, scalability, and consistency under realistic conditions.
The project follows the TPC-C benchmark philosophy of providing a standardized, repeatable method for evaluating database performance under realistic OLTP workloads, enabling fair comparisons between different MySQL configurations.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements the TPC-C specification for MySQL, ensuring reproducible and comparable performance measurements across tests, as outlined in the README's compliance focus.
Supports loading test data in parallel via scripts like load.sh, significantly speeding up setup for large warehouse counts, as mentioned in the loading steps.
Allows customization of warehouses, connections, warmup time, and duration through command-line options, enabling tailored testing for different scenarios.
Reports throughput, 95th/99th percentile response times, and max response times per interval, providing granular insights into database performance under load.
Exclusively designed for MySQL databases, limiting its use for benchmarking other database systems, which restricts cross-platform comparisons.
Requires building binaries from source, setting up MySQL databases, and running multiple SQL and command-line steps, making it prone to errors for inexperienced users.
Produces text-based output without built-in visualization or easy-to-read summaries, forcing users to manually parse results for analysis.