Q1 Why choosing java to implement TPC-C Benchmark system?
A1 Java has ability to run the same program on many different systems, by using java TPC-C can easily testing performance for any software systems. Also java allows us to use EJB to provide a standard way to implement the back-end business code typically found in enterprise applications (as opposed to ‘front-end’ interface code). EJB are intended to handle such common concerns as persistence, transactional integrity and security in a standard way, leaving programmers free to concentrate on the particular problem at hand. Java is simply to use: It automatic memory allocation and garbage collection. Easier to compile and debug.
Q2 What components are including in the front- end system to handle users’ inputs and why these components are needed?
A2 There are two major components invade in the front-end system. One is GUI (Graphical user interface) written by java swing. Other one is command line input by java scanner. We design to use these two components because some users may more familiar with using good looking interface and some users may think command line input is easier than using GUI.
Q3 How can we simulate the transactions to measure the system performance?
A3 The TPC-C workload simulates a tiered environment wherein users interact with TPC-C application to enter business transactions (New-Order transaction, Payment transaction, Order Status transaction, Stock Level transaction, Delivery transaction). Transactions are entered by simulated users, business logic and queuing of the transactions are handled by a middle tier server, and then the transactions are passed to the TPC-C database server for processing. By calculate the tpmC value (Transactions-per-Minutes-C) this is the average number of new-order transactions that the system processes per minute and comparing tpmC we can compare the system’s performance.
Q4 How can we calculate the TPC-C throughput (tpmC) and what is throughput used for?
A4 TPC-C throughput = Total New-Order Transaction/Total time taken (in minute) this throughput is also call tpmC means how many new-order transaction that system can handle per minute. Normally we compare system’s performance by comparing their tpmC rates and price/performance scores. However for our project we don’t need to consider about the price/performance scores so we can compare system’s performance easily by just comparing their tpmC.
Q5 How can we associate with Database?
A5 Firstly we got two ideas about how to connect database and retrieve data. One is using JDBC and another is using Himinte. After discuss with Dr. ShiPing Chen on weekly meeting we found JDBC is more familiar for us and we used it a lot before. And it has been designed to allow java developers to maintain the industry- standard independent connectivity between java applications and database server.