Documentation

Table of Contents

1. Installation and Configuration
1. Release Notes
1.1. Nomenclature Change
1.2. Stored Procedure Refactoring and Performance
1.3. Storing, Retrieval and Visualization of Results
1.4. Schema and Consistency Checks
1.5. Docker CloudTK GUI
1.6. Quotemeta to escape special characters in passwords
1.7. Microsoft SQL Server 2022 Entra Authentication
1.8. MariaDB TPROC-C purge and write back option
1.9. Giset command to dynamically set generic dictionary settings
1.10. Known Third-Party Driver Issues
1.10.1. Oracle on Windows: Oracle Bug 12733000 OCIStmtRelease crashes or hangs if called after freeing the service context handle
1.10.2. SQL Server on Linux: unixODBC's handle validation may become a performance bottleneck
1.10.3. Db2 driver is not included in the HammerDB Docker image or build
1.11. Linux Xft Font and Cairo Graphics Pre-Installation Requirements
2. Documentation License and Copyright
3. HammerDB v4.10 New Features
4. Test Matrix
5. Downloading HammerDB
6. Checksum Verification
7. Installing and Starting HammerDB on Windows
7.1. Self Extracting Installer
7.2. Zip File
7.3. Starting HammerDB
7.4. Uninstalling HammerDB
8. Installing and Starting HammerDB on Linux
8.1. Self Extracting Installer
8.2. Tar.gz File
8.3. Starting HammerDB
8.4. Uninstalling HammerDB
9. HammerDB Docker Container Build & Run
9.1. Docker Image
9.2. CloudTK Web Application Docker Image
9.3. Dockerfile Download and installation
9.4. Building the HammerDB Container
9.5. Running the Container
9.5.1. IBM Client install
9.6. Connecting the Container to the Network
10. Verifying the Installation of Database Client Libraries
10.1. Oracle Client
10.2. SQL Server
10.3. Db2
10.4. MySQL
10.5. MariaDB
10.6. PostgreSQL
11. XML & Persistent Configuration
12. Themes and Scalable Graphics
13. Building HammerDB from Source
13.1. Compiler & Dependency Install on Linux
13.2. Compiler & Dependency Install on Windows
13.3. Download HammerDB Source
13.4. Running the Build
13.5. HammerDB License
2. Quick Start
1. Building the Schema
2. Run a Test Workload
3. Run a Timed Workload
4. Using the Transaction Counter
5. Deleting the Schema
3. Introduction to OLTP Testing (TPROC-C derived from TPC-C)
1. What is a Transactional Workload
2. What is the TPC and the TPROC-C workload derived from TPC-C?
3. HammerDB TPROC-C workload
4. Comparing HammerDB results
5. Understanding the TPROC-C workload derived from TPC-C
6. TPROC-C key similarities and differences from TPC-C
7. How many warehouses to create for the TPROC-C test
8. Publishing database performance results
4. How to Run a TPROC-C Workload
1. Test Network Configuration
1.1. SUT Database Server Configuration
1.2. Load Generation Server Configuration
1.3. CPU Single-Threaded Performance Calibration
1.4. Administrator PC Configuration
2. Installation and Configuration
2.1. Oracle
2.2. Microsoft SQL Server
2.3. Db2
2.4. MySQL
2.5. MariaDB
2.6. PostgreSQL
3. Configuring Schema Build Options
3.1. Oracle Schema Build Options
3.2. Microsoft SQL Server Schema Build Options
3.2.1. In-Memory Optimized Tables
3.2.2. Build Options
3.3. Db2 Schema Build Options
3.4. MySQL Schema Build Options
3.5. MariaDB Schema Build Options
3.6. PostgreSQL Schema Build Options
4. Creating the Schema
5. Checking the Schema
6. Deleting the Schema
6.1. Deleting or Verifying the Oracle Schema
6.2. Deleting or Verifying the SQL Server Schema and In-memory Schema
6.3. Deleting or Verifying the Db2 Schema
6.4. Deleting or Verifying the MySQL Schema
6.5. Deleting or Verifying the MariaDB Schema
6.6. Deleting or Verifying the PostgreSQL Schema
7. Configuring Driver Script options
8. Advanced Driver Script Options
8.1. Use All Warehouses for increased I/O
8.2. Time Profile for measuring Response Times
8.3. Event Driven Scaling for Keying and Thinking Times
8.4. XML Connect Pool for Cluster Testing
8.5. Step Testing with Variable Load
9. Additional Driver Script Options for Stored Procedures and Server Side Reports: PostgreSQL, MySQL, MariaDB, Oracle, Db2 and EnterpriseDB PostgreSQL
9.1. PostgreSQL Stored Procedures
9.2. MySQL Prepare Statements
9.3. MariaDB Prepare Statements
9.4. No Stored Procedures Option for MySQL and MariaDB
9.5. Oracle AWR Reports
9.6. Db2 MONREPORT
9.7. EnterpriseDB PostgreSQL DRITA
10. Loading the Driver Script
11. Configure Virtual Users
12. Create and Run Virtual Users
5. Autopilot for Automated Testing
1. Configure and Run Autopilot
2. Autopilot Troubleshooting
3. Extending Autopilot to start automatically
6. Transactions
1. Oracle Transaction Counter
2. SQL Server Transaction Counter
3. Db2 Transaction Counter
4. MySQL Transaction Counter
5. MariaDB Transaction Counter
6. PostgreSQL Transaction Counter
7. Running the Transaction Counter
8. Logging Transaction Counter Output
9. Ribbon effect
7. CPU and Database Metrics
1. Start the Agent
2. Configure Metrics
3. Monitor Metrics
4. Oracle Database Metrics
5. PostgreSQL Database Metrics
8. Remote Primary and Replica Modes
1. Primary Mode
2. Replica Mode
3. Primary Distribution
9. Command Line Interface (CLI)
1. Start the CLI
2. Start the CLI in Python
3. CLI Commands
3.1. CLI commands in Python
4. Configure Schema Build
5. Building the Schema
6. Configure Driver
7. Configure Virtual Users
8. Run the workload
9. CLI Scripting in Tcl
10. CLI Scripting in Python
11. CLI Example Scripts driven by Bash and Powershell
12. CLI Jobs Interface
10. Viewing Jobs with the Web Service Interface (WS)
1. Web Service Configuration
2. Viewing Jobs
11. Introduction to Analytic Testing (TPROC-H derived from TPC-H) and Cloud Queries
1. What is TPROC-H derived from TPC-H?
2. Running the Power and Throughput Test and Calculating the Geometric Mean
3. Choosing a Database for running TPROC-H workloads
3.1. Oracle
3.2. Microsoft SQL Server
3.3. Db2
3.4. PostgreSQL
3.5. MySQL
3.6. MariaDB
4. Benchmarking Database Cloud Services
4.1. Redshift Cloud Analytic Workload
12. How to Run an Analytic Workload
1. SUT Database Server Configuration
2. Installation and Configuration
2.1. Oracle
2.2. SQL Server
2.3. Db2
2.4. PostgreSQL
2.5. MySQL
2.6. MariaDB
3. Configuring Schema Build Options
3.1. Oracle Schema Build Options
3.2. SQL Server Schema Build Options
3.3. Db2 Schema Build Options
3.4. MySQL Schema Build Options
3.5. MariaDB Schema Build Options
3.6. PostgreSQL Schema Build Options
4. Creating the Schema
4.1. Verifying and Backing-Up the Oracle Schema
4.2. Verifying and Backing Up the SQL Server Schema
4.3. Verifying and Backing up the Db2 Schema
4.4. Verifying and Backing up the MySQL Schema
4.5. Verifying and Backing up the MariaDB Schema
4.6. Verifying and Backing up the PostgreSQL Schema
5. Checking the Schema
6. Configuring Driver Script Options
7. Loading the Driver Script
8. Configure Virtual Users
9. Run a Single Virtual User Test
9.1. Changing the Query Order
10. Run a Power Test
11. Run a Throughput Test
11.1. SQL Server Snapshot Isolation
12. Calculate the Geometric Mean
13. Generating and Loading Bulk Datasets
1. Generate the Dataset
2. Generate the Dataset with the CLI
3. Generate the template database
3.1. Capture and run the table creation DDL
3.1.1. Oracle
3.1.2. SQL Server
3.1.3. Db2
3.1.4. MySQL
3.1.5. PostgreSQL/Amazon Redshift
4. Run the bulk data load
4.1. Oracle
4.2. SQL Server
4.3. Db2
4.4. MySQL
4.5. MariaDB
4.6. PostgreSQL/Amazon Redshift
14. Oracle Trace File Replay
1. Generating Trace Files
2. Converting Oracle Trace Files
3. Replaying Oracle Trace Files
4. Capturing Errors from Trace File Workloads
15. HTTP and HTTPS Testing
1. HTTPS Script
2. HTTPS Output
16. GNU Free Documentation License

v4.10 Documentation Index (Current Release)

v4.9 Documentation Index

v4.8 Documentation Index

v4.7 Documentation Index

v4.6 Documentation Index

v4.5 Documentation Index

v4.4 Documentation Index

v4.3 Documentation Index

v4.2 Documentation Index

v4.1 Documentation Index

v4.0 Documentation Index

v3.3 Documentation Index

Updated Feb 2024  •