Add new comment

HammerOra Quick Start...

Its time to test some IO.

I have used OraBM/OraStress in the past to throw a load at an Oracle server.

(DMann 08-APR-2015 Note: Hammerora has been renamed HammerDB and is available at : http://www.hammerdb.com/ - This post may not be up to date with current versions. )

This time I wanted to see what else was out there. I had seen mention of HammerOra on forums and listserves so I figured I'de give it a shot. Here's what it took to get it running on a Windows server.

1) Download and Install HammerOra

Their home page is here: http://hammerora.sourceforge.net/

2) Create Schemas

Login as system and run the following script:

CREATE TABLESPACE TPCCTAB LOGGING DATAFILE
'C:\oracle\oradata\TPCCTAB0.DBF'
SIZE 128M AUTOEXTEND ON NEXT 2M MAXSIZE 4000M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE BLOCKSIZE 8k;

CREATE USER TPCC
PROFILE DEFAULT
IDENTIFIED BY tpcc
DEFAULT TABLESPACE TPCCTAB
TEMPORARY TABLESPACE TEMP
ACCOUNT UNLOCK;

GRANT CONNECT, DBA TO TPCC;

CREATE TABLESPACE TPCHTAB LOGGING DATAFILE
'C:\oracle\oradata\TPCHTAB0.DBF'
SIZE 128M AUTOEXTEND ON NEXT 2M MAXSIZE 4000M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE BLOCKSIZE 8k;

CREATE USER TPCH
PROFILE DEFAULT
IDENTIFIED BY tpch
DEFAULT TABLESPACE TPCHTAB
TEMPORARY TABLESPACE TEMP
ACCOUNT UNLOCK;

GRANT CONNECT, DBA TO TPCH;

3) Edit Config.xml

Open C:\Program Files\hammerora-2.0\config.xml

1) Change the system_password

2) Change to instance

3) Change the connect_string for the Transaction Counter

4) Create schema objects
Start HammerOra.

Click the 3-box icon to create the schema.

This only needs to be done once.

5) Load a script and run it

Select TPC -> TPC-C -> TPC-C Driver Script

Select "Load virtual users" icon.
Virtual users will populate the middle pane.

Select "Run Hammerora Load test" icon.
The Virtual Users will start their work.

You can hit the "Transaction Counter" icon to get statistics on current transaction load.

If you want to look at resources used by the system, the hammerora process name is WISH84T . The Oracle process name is of course ORACLE.EXE .

Now what?

If you were able to successfully get 1 virtual user creating transactions, time to turn it up to 11. Or 111. Or 1111.

Stop the current test, select Virtual Users -> Vuser Options. Set the Number of Virtual Users to 100 or more and retry a test. Alternately you can modify the config.xml to set it up permanently.

My Impressions:

Overall I am very impressed by this tool.

Pros:
Open source.
Can create custom scripts to exercise the database using Oratcl.
Can create custom scripts using TclCurl. These can be used to test Web applications (GET, PUT, POST, etc).
Built-in scripts for TPC-C and TPC-H.
Possibility for master/slave configuration for load generation (not tested).
Cons:
Interface is a little cumbersome.
Permanent config done through manually editing XML file.
Documentation is sparse, could use a Quick Start guide for quickly getting up and running.

-- Dave