HammerDB Documentation

HammerDB Documentation


Table of Contents

1. Installation Guide
1. HammerDB v3.0 New Features
2. Test Matrix
3. Installing and Starting HammerDB on Windows
3.1. Self Extracting Installer
3.2. Zip File
3.3. Starting HammerDB
3.4. Uninstalling HammerDB
4. Installing and Starting HammerDB on Linux
4.1. Self Extracting Installer
4.2. Tar.gz File
4.3. Starting HammerDB
4.4. Uninstalling HammerDB
5. Verifying Client Libraries
5.1. Oracle Client
5.2. SQL Server
5.3. Db2
5.4. MySQL
5.5. PostgreSQL
5.6. Redis
2. Quick Start
1. Building the Schema
2. Run a Test Workload
3. Run a Timed Workload
4. Using the Transaction Counter
3. Introduction to OLTP Testing (TPC-C)
1. What is a Transactional Workload
2. What is the TPC and TPC-C?
3. HammerDB Transactional TPC-C based workloads
4. Comparing HammerDB results
5. Understanding the TPC-C workload
6. Generating Performance Profiles
7. Generating Time Profiles
8. Publishing database performance results
4. How to Run an OLTP Workload
1. Test Network Configuration
1.1. SUT Database Server Configuration
1.2. Load Generation Server Configuration
1.3. Administrator PC Configuration
2. Installation and Configuration
2.1. Oracle
2.2. Microsoft SQL Server
2.3. Db2
2.4. MySQL
2.5. PostgreSQL
2.6. Redis
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. PostgreSQL Schema Build Options
3.6. Redis Schema Build Options
4. Creating the Schema
4.1. Deleting or Verifying the Oracle Schema
4.2. Deleting or Verifying the SQL Server Schema and In-memory Schema
4.3. Deleting or Verifying the Db2 Schema
4.4. Deleting or Verifying the MySQL Schema
4.5. Deleting or Verifying the PostgreSQL Schema
4.6. Deleting or Verifying the Redis Schema
5. Configuring Driver Script options
6. Additional Driver Script Options for Server Side Reports: Oracle, Db2 and EnterpriseDB PostgreSQL
6.1. Oracle AWR Reports
6.2. Db2 MONREPORT
6.3. EnterpriseDB PostgreSQL DRITA
7. Loading the Driver Script
8. Configure Virtual Users
9. Create and Run Virtual Users
5. Autopilot
1. Configure and Run Autopilot
2. Autopilot Troubleshooting
3. Extending Autopilot
6. Transactions
1. Oracle Transaction Counter
2. SQL Server Transaction Counter
3. Db2 Transaction Counter
4. MySQL Transaction Counter
5. PostgreSQL Transaction Counter
6. Redis Transaction Counter
7. Running the Transaction Counter
7. Metrics
1. Start the Agent
2. Configure Metrics
3. Monitor Metrics
8. Command Line Interface (CLI)
1. Start the CLI
2. CLI Commands
3. Configure Schema Build
4. Building the Schema
5. Configure Driver
6. Configure Virtual Users
7. Run the workload
8. CLI Scripting
9. Introduction to Analytic Testing (TPC-H) and Cloud Queries
1. What is TPC-H?
2. Running the Power and Throughput Test and Calculating QphH
3. Choosing a Database for running TPC-H workloads
3.1. Oracle
3.2. Microsoft SQL Server
3.3. Db2
3.4. PostgreSQL
3.5. MySQL / MariaDB
3.6. Redis
4. Benchmarking Database Cloud Services
4.1. Redshift Cloud Analytic Workload
10. 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 / 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. 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 PostgreSQL Schema
5. Configuring Driver Script Options
6. Loading the Driver Script
7. Configure Virtual Users
8. Run a Single Virtual User Test
8.1. Changing the Query Order
9. Run a Power Test
10. Run a Throughput Test
10.1. SQL Server Snapshot Isolation
11. Calculate the QphH
11. Remote Modes
1. Master Mode
2. Slave Mode
3. Master Distribution
12. 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. PostgreSQL/Amazon Redshift
13. 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
14. Copyright

List of Figures

1.1. Language Choice
1.2. Install Continue
1.3. HammerDB Version
1.4. Destination
1.5. Review
1.6. Files copying
1.7. Complete
1.8. HammerDB Started
1.9. Zip File
1.10. hammerdb batch file
1.11. Uninstall
2.1. Benchmark Options
2.2. Build Options
2.3. Create Schema
2.4. Building Schema
2.5. Schema build complete
2.6. Driver Options
2.7. Driver Script Loaded
2.8. Virtual User Options
2.9. Virtual Users Created
2.10. Virtual Users Running
2.11. Driver Options
2.12. Virtual Users
2.13. Virtual User and Monitor Created
2.14. Timed Workload Running
2.15. Test Result
2.16. Transaction Counter
3.1. WAL Test
3.2. TPC-C Schema
3.3. Performance Profile
3.4. Response Times
3.5. Publishing Results
4.1. ODBC Drivers
4.2. Benchmark Options
4.3. Schema Build Options
4.4. Oracle Build Options
4.5. SQL Server Build Options
4.6. Db2 Build Options
4.7. MySQL Build Options
4.8. PostgreSQL Build Options
4.9. Redis Build Options
4.10. Build
4.11. Create Schema
4.12. Schema Build Start
4.13. Schema complete
4.14. SQL Server in-Memory
4.15. In-memory report
4.16. Driver Script Options
4.17. Driver Script Options
4.18. Driver Script Loaded
4.19. Virtual User Options
4.20. Virtual User
4.21. Virtual Users Create
4.22. Virtual Users Running
4.23. Virtual Users Complete
5.1. Autopilot Options
5.2. Autopilot Options
5.3. Run Autopilot
5.4. Autopilot Running
5.5. Autopilot Continuing
5.6. Autopilot Complete
5.7. Autopilot Error
6.1. Transaction Counter Options
6.2. Oracle TX Counter Options
6.3. SQL Server TX Counter Options
6.4. Db2 TX Counter Options
6.5. MySQL TX Counter Options
6.6. PostgreSQL TX Counter Options
6.7. Redis TX Counter Options
6.8. Start Transaction Counter
6.9. Transaction Counter Starting
6.10. Transaction Counter Running
6.11. Transaction Counter standalone.
7.1. agent.bat
7.2. Security Alert
7.3. Windows agent
7.4. Metrics Options
7.5. Agent Options
7.6. Display
7.7. Agent connected
7.8. Display connected
7.9. Metrics running
7.10. Large Core count
8.1. hammerdbcli.bat
8.2. CLI Windows
9.1. TPC-H Schema.
9.2. Power Query
9.3. QphH Calculation
9.4. Power @ Size
9.5. Natural Logarithm
9.6. Throughput @ Size
9.7. QphH @ Size
9.8. QphH @ Size
9.9. Clustered Columnstore
9.10. Db2 Organize By
9.11. PostgreSQL TPC-H
9.12. MySQL MariaDB TPC-H
9.13. Redshift console
9.14. Create Security Group
10.1. Max Degree of Parallelism
10.2. Benchmark Options
10.3. TPC-H Schema Build Options
10.4. Oracle TPC-H Build Options
10.5. SQL Server Build Options
10.6. Db2 Build Options
10.7. MySQL Build Options
10.8. PostgreSQL Build Options
10.9. Build TPC-H Schema
10.10. Create Schema
10.11. Schema Build Start
10.12. Schema Build Complete
10.13. Backup SQL Server
10.14. Backup successful
10.15. Restore SQL Server
10.16. Restore successful
10.17. Driver Script Options
10.18. TPC-H Driver Options
10.19. Driver Script Loaded
10.20. Virtual User Options
10.21. Virtual User Options
10.22. Modified Options
10.23. Run a single Virtual User Test
10.24. Single Virtual User Complete
10.25. Power Test Options
10.26. TPC-H refresh on
10.27. Power Test
10.28. Power Test Complete
10.29. Throughput Test
10.30. Enable Snapshot Isolation
10.31. SQL Server with Snapshot Isolation
10.32. Throughput test complete
10.33. QphH Calculation
11.1. Mode
11.2. Mode Options
11.3. Mode Options Select
11.4. Master Mode Select
11.5. Mode Confirmation
11.6. Mode Active
11.7. Slave Mode
11.8. Master Distribution
12.1. Data Directory
12.2. Benchmark Options
12.3. Datagen Options
12.4. Data Generation Options
12.5. Multiple files
12.6. Generate
12.7. Generate Data Confirmation
12.8. Generating Data
12.9. CPU Utilisation 100%
12.10. Schema Generated
12.11. Pipe Delimited Data
12.12. SQL Server Create Table
12.13. SQL Server Bulk Insert
12.14. Upload to S3
12.15. Postgres User Access Keys
12.16. S3 Permissions
13.1. Doc 39817.1
13.2. Open File
13.3. Trace Loaded
13.4. Convert Trace
13.5. Trace Converted
13.6. Run Trace
13.7. Multiuser Test
13.8. Bind Variables

List of Tables

1.1. OS Test Matrix
1.2. Database Test Matrix
1.3. 3rd party libraries
4.1. Oracle Build Options
4.2. SQL Server Build Options
4.3. Db2 Build Options
4.4. MySQL Build Options
4.5. PostgreSQL Build Options
4.6. Redis Build Options
4.7. Driver Script Options
4.8. Virtual User Options
5.1. Autopilot Options
8.1. CLI commands
9.1. Query Streams and Scale Factors
10.1. Oracle Build Options
10.2. SQL Server Build Options
10.3. Db2 Build Options
10.4. MySQL Build Options
10.5. PostgreSQL Build Options
10.6. Driver Script Options
10.7. Virtual User Options