Chat now with support
Chat with Support

Benchmark Factory for Database 8.3 - User Guide

Getting Started Licensing Overview of Benchmark Factory Benchmark Factory Components Agents Create and Edit Connections Create and Edit Tests and Jobs Test Results and Run Reports Troubleshooting The Benchmark Factory REST API

TPC-C Benchmark

To learn how to create a TPC-C benchmark test in Benchmark Factory, see Create Industry Standard Benchmark Test.

Overview

Find a detailed overview of the TPC-C Benchmark at: http://www.tpc.org/tpcc/default.asp.

The TPC-C benchmark is an online transaction processing benchmark that simulates environments that have a number of terminal operators that send transactions to a database. This benchmark is focused on the concept of an order-entry type environment with transaction that include orders, payment recording, order status, and stock level monitoring. This benchmark portrays the activities of a wholesale supplier. However, the TPC-C is not limited to one particular business segment. It can represent numerous categories of a business that sell or distribute products and services.  

The TPC-C benchmark simulates a wholesale parts dealer operating out of warehouses. This Benchmark scales as a company, in theory, expands their business or number of facilities. As the TPC-C benchmark scales, so do the number components for the benchmark, for example, the sales districts and customers.

TPC-C Tables

The scale factor determines the amount of information initially loaded into the benchmark tables. For the TPC-C benchmark, each scale factor represents one warehouse as per TPC-C specification. The TPC-C benchmark involves a mix of five concurrent transactions of different types and complexity. The database is comprised of nine tables with a wide range of records.

A maximum of 10 users should be run against each warehouse. For example, user loads of 1, 5, and 10, set the scale to 1. If using other user load values, change the scale factor accordingly.

The TPC-C database consists of the following tables:

 

 

 

 

 

 

  • Warehouse
  • District
  • Customer
  • History
  • New_Order
  • Order
  • Order_Line
  • Item
  • Stock

 

 

Certification of Transaction Processing Council (TPC) Testing Results

Transaction Processing Council  testing results cannot be published as certified unless the testing procedure is audited and approved by the TPC organization. If not certified, the testing results can be published as a "TPC-C like" test.

Best Practices

The following provides best practices for the TPC-C Benchmark.

Load-testing against production servers

Do not load-test against a production server if possible.  Load-testing and benchmarking on a production server significantly degrades performance.  In some cases, load-testing can cause a server to fail.  However, if testing against a production server, take the following precautions:

  • Perform the testing when no other users are on the system and no automated processes are running.  Users and automated processes can adversely affect testing results
  • Have a recovery plan and backup all data prior to testing
  • Determine how long it will take to restore a production server if it went down during load-testing
  • Perform manual testing. Manual testing ensures that no unexpected outside activity takes place during the testing process

Reinitialize the Database

To reinitialize a testing database, run a job containing a Benchmark Object node.  

There are two ways to create a Benchmark Object node:

  • Run the Benchmark Object Wizard to add the Delete Benchmark objects for TPC-C node to a job as needed.  
  • Run the Load Scenario Wizard to create a new script containing the Create Objects for the Benchmark, Associated Load Scenarios for the Benchmark, and Delete Objects for the Benchmark. Running the delete objects for 'TPC-C' job will clean the environment.
Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating