TimesTen In-Memory OLTP (Transactional) Load Testing

Similar documents
TimesTen Auditing Using ttaudit.java

Oracle OLTP (Transactional) Load Testing

Run your own Oracle Database Benchmarks with Hammerora

HammerDB v2.18 Installation and Troubleshooting Guide

How-to configure Auditing for IDENTIKEY Authentication Server 3.2 to a remote Oracle Database on a standalone Microsoft machine.

Oracle TimesTen IMDB - An Introduction

RTI Database Integration Service. Getting Started Guide

SQL Server Instance-Level Benchmarks with HammerDB

Evaluation of in-memory database TimesTen

Microsoft SQL Server OLTP (Transactional) Load Testing

Redis OLTP (Transactional) Load Testing

MySQL OLTP (Transactional) Load Testing

HammerDB DB2 Quick Start

Oracle Enterprise Manager

The First Example of TimesTen with Oracle on Windows

Microsoft SQL Server OLTP Best Practice

CASE STUDY: Oracle TimesTen In-Memory Database and Shared Disk HA Implementation at Instance level. -ORACLE TIMESTEN 11gR1

ORACLE BUSINESS INTELLIGENCE WORKSHOP. Prerequisites for Oracle BI Workshop

HOUG Konferencia Oracle TimesTen In-Memory Database and TimesTen Application-Tier Database Cache. A few facts in 10 minutes

1 Changes in this release

Querying Databases Using the DB Query and JDBC Query Nodes

TIBCO ActiveMatrix BusinessWorks SmartMapper Plug-in Release Notes

Microsoft SQL Server Decision Support (DSS) Load Testing

Matisse Installation Guide for MS Windows. 10th Edition

Matisse Installation Guide for MS Windows

Oracle TimesTen In-Memory Database

MICROSTRATEGY 9.3 Supplement Files Setup Transaction Services for Dashboard and App Developers

Configuring and Integrating Oracle

Using TimesTen between your Application and Oracle. between your Application and Oracle. DOAG Conference 2011

HammerDB Metrics. Introduction. Installation

Architecting the Future of Big Data

PowerSchool Student Information System

Tips and Tricks for Using Oracle TimesTen In-Memory Database in the Application Tier

StoreGrid Backup Server With MySQL As Backend Database:

Using SQL Developer. Copyright 2008, Oracle. All rights reserved.

Sage Intelligence Financial Reporting for Sage ERP X3 Version 6.5 Installation Guide

HYPERION ESSBASE SYSTEM 9

Database migration using Wizard, Studio and Commander. Based on migration from Oracle to PostgreSQL (Greenplum)

How to Configure SQL Developer on Windows for TimesTen Connections

OTM Performance OTM Users Conference Jim Mooney Vice President, Product Development August 11, 2015

CA Unified Infrastructure Management

Postgres Plus Migration Guide

Architecting the Future of Big Data

FileNet Business Activity Monitor (BAM) Release Notes

Wavelink Avalanche Mobility Center Linux Reference Guide

PostgreSQL OLTP (Transactional) Load Testing

Introduction to Decision Support, Data Warehousing, Business Intelligence, and Analytical Load Testing for all Databases

Integration Service Database. Installation Guide - Oracle. On-Premises

Simba XMLA Provider for Oracle OLAP 2.0. Linux Administration Guide. Simba Technologies Inc. April 23, 2013

TIBCO Spotfire Server Migration. Migration Manual

Oracle EXAM - 1Z Oracle Weblogic Server 11g: System Administration I. Buy Full Product.

Architecting the Future of Big Data

Setting Up Specify to use a Shared Workstation as a Database Server

Programa de Actualización Profesional ACTI Oracle Database 11g: SQL Tuning Workshop

Compiere 3.2 Installation Instructions Windows System - Oracle Database

Compiere ERP & CRM Installation Instructions Windows System - EnterpriseDB

Connect to an SSL-Enabled Microsoft SQL Server Database from PowerCenter on UNIX/Linux

This guide specifies the required and supported system elements for the application.

JAMF Software Server Installation Guide for Windows. Version 8.6

Oracle Database. Products Available on the Oracle Database Examples Media. Oracle Database Examples. Examples Installation Guide 11g Release 2 (11.

WebSphere Application Server security auditing

IBM Unica Campaign Version Publication Date: June 7, Data Migration Guide

HP Web Jetadmin Database Connector Plug-in reference manual

SysPatrol - Server Security Monitor

Oracle 10g ODBC Installation Guide. Voyager Version 9.0+

MS SQL Server Database Management

Canto Integration Platform (CIP)

Birds of a Feather Session: Best Practices for TimesTen on Exalytics

SDK Code Examples Version 2.4.2

Accessing Oracle 11g from SAS on Linux Using DataDirect Connect for ODBC

RTI Real-Time Connect. Release Notes

SSIM Database Extension Pack 4.0 for Oracle on Linux Installation Guide

1z0-102 Q&A. DEMO Version

QuickStart Guide for Managing Computers. Version 9.2

LAE Enterprise Server Installation Guide

Maximizing Performance for Oracle Database 12c using Oracle Enterprise Manager

Oracle Database. New Feature in Oracle Database 11g Release 2 ( ) Products Available on the Oracle Database Examples Media

The manual contains complete instructions on 'converting' your data to version 4.21.

Database Management Reference

Oracle Tools and Bindings with languages

User Guide for VMware Adapter for SAP LVM VERSION 1.2

13.1 Backup virtual machines running on VMware ESXi / ESX Server

Code Estimation Tools Directions for a Services Engagement

Data Warehouse Troubleshooting Tips

ECLIPSE & Faircom ODBC Driver

Postgres Plus xdb Replication Server with Multi-Master User s Guide

How To Use An Org.Org Adapter On An Org Powerbook (Orb) With An Org Idm.Org (Orber) Powerbook With An Adapter (Orbor) With A Powerbook 2 (Orbi) With The Power

Oracle Essbase Integration Services. Readme. Release

Oracle Database 12c: Administration Workshop NEW

Oracle OLTP (Transactional) Load Testing

Connect to MySQL or Microsoft SQL Server using R

MyOra 3.0. User Guide. SQL Tool for Oracle. Jayam Systems, LLC

Envinsa INSTALL GUIDE. Version 4.1. For WebSphere Application Servers

How To Load Data Into An Org Database Cloud Service - Multitenant Edition

Plug-In for Informatica Guide

Oracle Easy Connect Naming. An Oracle White Paper October 2007

Transcription:

TimesTen In-Memory OLTP (Transactional) Load Testing This guide gives you an introduction to conducting OLTP (Online Transaction Processing) workloads on the Oracle TimesTen Database. Introduction... 1 TimesTen Server Installation and Configuration... 1 TimesTen Server Installation... 1 Database and Schema Creation... 4 TimesTen OCI Client Configuration and Test... 6 DSN Configuration... 6 Network Configuration... 7 Driver Options and Test... 8 Conclusion... 10 Support and Discussion... 10 Introduction The Oracle TimesTen in-memory provides close compatibility to the Oracle Database with both OCI connectivity and PL/SQL support. Consequently with minor differences the HammerDB OLTP test for TimesTen can make use of the majority of the Oracle functionality. This guide provides supplementary information on installing, configuring and running an OLTP test against TimesTen where do differences occur compared to running the same test against an Oracle Database. The guide uses examples from TimesTen configuration on Linux systems, refer to the TimesTen installation guide referenced later in this document for differences on Windows platforms. To test TimesTen you only need to install the Oracle TimesTen software, you do not need to install any software from a standard Oracle Database installation in order to enable OCI connectivity for TimesTen. TimesTen Server Installation and Configuration This sections describes the procedure to install and configure the TimesTen server for Oracle OCI connectivity. TimesTen Server Installation To install the TimesTen server as described in the following sections ensure that you pay careful attention to the specification of the client libraries using the libraries provided with TimesTen. Also make sure that the network configuration is correctly configured to allow connectivity on both the client and server side. If using large memory pages configure the /etc/sysctl.conf by setting the vm.nr_hugepages parameter to your desired total value comprised of 2MB pages for example: 1

# Oracle-Validated setting for vm.min_free_kbytes is 51200 to avoid OOM killer vm.min_free_kbytes = 51200 vm.nr_hugepages = 25000 Note that you do not need to set the vm.hugetlb_shm_group parameter in /etc/sysctl.conf however you do need to set the memlock parameter in the file /etc/security/limits.conf to a value above the number of huge pages you wish to use. Once you have started TimesTen and connected to your datastore check /proc/meminfo to ensure that the large pages you configured are being used. HugePages_Total: 25000 HugePages_Free: 21717 HugePages_Rsvd: 17717 HugePages_Surp: 0 Hugepagesize: 2048 kb DirectMap4k: 8192 kb DirectMap2M: 2056192 kb TTadmin User Configuration Create the ttadmin user and groups on the TimesTen Server, configure a bash profile such as follows, paying particular attention to the highlighted section detailing where the TimesTen OCI client libraries are installed. -bash-3.2$ more.bash_profile #.bash_profile if [ -t 0 ]; then stty intr ^C fi if [ -f ~.bashrc ]; then. ~/.bashrc fi umask 022 export ORACLE_BASE=/home/ttadmin export ORACLE_HOME=$ORACLE_BASE/TimesTen/tt1122 export TIMESTEN_INSTALL_ROOT=$ORACLE_HOME source ${TIMESTEN_INSTALL_ROOT}/bin/ttenv.sh export ORACLE_SID=tpcc_1122 export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/ttoracle_home/instantclient_11_2:$ ORACLE_BASE/hammerdb-2.14/lib export ORACLE_LIBRARY=${TIMESTEN_INSTALL_ROOT}/ttoracle_home/instantclient_11_2/libclnt sh.so.11.1 export TNS_ADMIN=$ORACLE_BASE/TimesTen/tt1122/network/admin export DISPLAY=londonmgr1:0.0 Login as ttadmin to check the configured environment variables NOTE: unknown or unsupported java version, setting values for JDK 1.5 LD_LIBRARY_PATH set to /home/ttadmin/timesten/tt1122/lib:/home/ttadmin/timesten/tt1122/ttoracle_home/in stantclient_11_2 ANT_HOME set to /home/ttadmin/timesten/tt1122/3rdparty/ant 2

PATH set to /home/ttadmin/timesten/tt1122/bin:/home/ttadmin/timesten/tt1122/quickstart/sampl e_code/oci:/home/ttadmin/timesten/tt1122/quickstart/sample_code/odbc:/home/ttadm in/timesten/tt1122/quickstart/sample_code/odbc/xla:/home/ttadmin/timesten/tt1122 /quickstart/sample_code/jdbc:/home/ttadmin/timesten/tt1122/quickstart/sample_cod e/odbc_drivermgr:/home/ttadmin/timesten/tt1122/quickstart/sample_code/proc:/home /ttadmin/timesten/tt1122/quickstart/sample_code/ttclasses:/home/ttadmin/timesten /tt1122/quickstart/sample_code/ttclasses/xla:/home/ttadmin/timesten/tt1122/ttora cle_home/instantclient_11_2:/home/ttadmin/timesten/tt1122/ttoracle_home/instantc lient_11_2/sdk:/home/ttadmin/timesten/tt1122/3rdparty/ant/bin:/usr/kerberos/bin: /usr/local/bin:/bin:/usr/bin CLASSPATH set to /home/ttadmin/timesten/tt1122/lib/ttjdbc5.jar:/home/ttadmin/timesten/tt1122/lib/ orai18n.jar:/home/ttadmin/timesten/tt1122/lib/timestenjmsxla.jar:/home/ttadmin/t imesten/tt1122/3rdparty/jms1.1/lib/jms.jar:. TNS_ADMIN set to /home/ttadmin/timesten/tt1122/network/admin TimesTen Installation Follow the Oracle TimesTen In-Memory Database Installation Guide to install TimesTen, in this example TimesTen was installed in the /home/ttadmin directory. Database Configuration If using large memory pages configure the ttendaemon.options file with the total allocation of large pages in MB as shown. # Commented values are default values #-supportlog /home/ttadmin/timesten/tt1122/info/ttmesg.log #-maxsupportlogfiles 10 #-maxsupportlogsize 10485760 #-userlog /home/ttadmin/timesten/tt1122/info/tterrors.log #-maxuserlogfiles 10 #-maxuserlogsize 0x100000 # -linuxlargepagealignment 2 -verbose -tns_admin /home/ttadmin/timesten/tt1122/network/admin -server 53397 Configure the database in the sys.odbc.ini file, in this example it is located in the /home/ttadmin/timesten/tt1122/info directory. The sections in bold have been added to this file. [ODBC Data Sources] TT_1122=TimesTen 11.2.2 Driver tpcc_1122=timesten 11.2.2 Driver [tpcc_1122] Driver=/home/ttadmin/TimesTen/tt1122/lib/libtten.so DataStore=/u01/timesten/DemoDataStore/tpcc_1122 LogDir=/ u02/timesten/logs/ MemoryLock=4 PermSize=32000 #for 1k users, #PermSize=120000 TempSize=4000 3

LogBufMB=4096 LogFileSize=4096 LogBufParallelism=16 PLSQL=1 PrivateCommands=1 DatabaseCharacterSet=US7ASCII ConnectionCharacterSet=US7ASCII RecoveryThreads=16 Network Configuration Configure the tnsnames.ora file for local connectivity, in this example the tnsnames.ora file is located in /home/ttadmin/timesten/tt1122/network/admin. Note that the SERVICE_NAME corresponds to the ODBC Data Source defined previously and also note that SERVER is set to timesten_direct to specify a local connection. # tnsnames.ora Network Configuration File tpcc_1122 = (DESCRIPTION = (CONNECT_DATA = (SERVICE_NAME = tpcc_1122)(server = timesten_direct))) Database and Schema Creation This section details the creation of the TimesTen Database and hammerdb schema. Database Configuration In contrast to the Oracle Database with TimesTen you must manually create the database and user before you create the schema with hammerdb. You must also grant the user you create the necessary permissions as shown to be able to create the required files. The database will be automatically created on the first connection and the subsequent user creation accomplished as follows: oracle@sandep1 bin]$./ttisql Copyright (c) 1996-2011, Oracle. All rights reserved. Type? or "help" for help, type "exit" to quit ttisql. Command> connect "dsn=tpcc_1122"; Connection successful: DSN=tpcc_1122;UID=oracle;DataStore=/hadoop/timesten/DemoDataStore/tpcc_1122;Data basecharacterset=us7ascii;connectioncharacterset=us7ascii;driver=/home/oracle/ti mesten/tt1122/lib/libtten.so;permsize=100;tempsize=100;typemode=0; (Default setting AutoCommit=1) Command> create user tpcc identified by tpcc; User created. Command> grant create table to tpcc; Command> grant create session to tpcc; Command> grant create procedure to tpcc; Command> grant create view to tpcc; Command> Command> connect "dsn=tpcc_1122;uid=tpcc"; Enter password for 'tpcc': Connection successful: 4

DSN=tpcc_1122;UID=tpcc;DataStore=/hadoop/timesten/DemoDataStore/tpcc_1122;Databa secharacterset=us7ascii;connectioncharacterset=us7ascii;driver=/home/oracle/time sten/tt1122/lib/libtten.so;permsize=100;tempsize=100;typemode=0; (Default setting AutoCommit=1) con2: Command> quit Disconnecting from tpcc_1122... Disconnecting from con1... Disconnecting from con2... Done. If the database already exists and you wish to remove completely and recreate it, you can destroy the existing database as follows: -bash-3.2$ ttdestroy tpcc_1122 Schema Creation Follow the standard procedure for an Oracle Database schema configuration. Note that in this example hammerdb has been installed on the same server as the TimesTen Database in order to illustrate local OCI connectivity with the network configuration as previously shown. As shown in figure 1 select the TimesTen Database Compatible checkbox and specify the Oracle Service Name and username and password you created previously. For additional scalability on high CPU core or thread counts you may also opt to partition the order line table. Figure 1 TimesTen Build Options Click OK and build the schema as you would do for an Oracle Database, figure 2 shows the status of a complete TimesTen build. 5

Figure 2 TimesTen build complete TimesTen OCI Client Configuration and Test As with the Oracle Database you will most likely wish to test your TimesTen Database in a client server configuration. To do this firstly install the TimesTen client on the load test client where hammerdb is to be installed. Follow the details described for the server configuration ensuring that the bash profile is correctly configured in order that hammerdb can find the correct client libraries. Note that for TimesTen you must use the TimesTen provided client libraries and not the libraries from an Oracle installation. You must also create the test database as previously described on the server itself. DSN Configuration On the client set up the DSN information in the sys.obc.ini file, for example in/home/ttadmin/timesten/tt1122/info. Add the following information to specify the details of the TimesTen server. In this example the server itself is called sandep1.example.com and the DSN is the name of the database configured on this server. The client name given is tpcccs_1122. -bash-3.2$ more sys.odbc.ini 6

# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. ######################################################################## # This following sample definitions should be in the.odbc.ini file # that is used for the TimesTen 11.2.2 Client. # The Server Name is set in the TTC_SERVER attribute. # The Server DSN is set in the TTC_SERVER_DSN attribute. ######################################################################### [ODBC Data Sources] tpcccs_1122=timesten 11.2.2 Client Driver [tpcccs_1122] TTC_SERVER=sandep1.example.com TTC_SERVER_DSN=tpcc_1122 Set the configuration of the TimesTen hostname defined previously as TTC_SERVER in the sys.ttconnect.ini file also ensuring that this network name can be resolved either through DNS or an entry in the host file. # Copyright (c) 1999, 2009, Oracle and/or its affiliates.all rights reserved. ############################################################### # This is a sample sys.ttconnect.ini file that is used for the # TimesTen Client. It contains entries for each server. ############################################################### [sandep1.example.com] Description=TimesTen Server Network_Address=sandep1.example.com TCP_PORT=53397 Network Configuration Again on the client configure the tnsnames.ora file to specify the details previously configured on the client for the DSN. Note that tpcccs_1122 has been used for the SERVICE_NAME and the SERVER in this case is timesten_client. -bash-3.2$ more tnsnames.ora tpcccs_1122 = (DESCRIPTION = (CONNECT_DATA = (SERVICE_NAME = tpcccs_1122)(server = timesten_client))) You can test the client server connectivity as follows with the ttisqlcs command. -bash-3.2$ ttisqlcs Copyright (c) 1996-2011, Oracle. All rights reserved. Type? or "help" for help, type "exit" to quit ttisql. Command> connect "dsn=tpcccs_1122; uid=tpcc"; Enter password for 'tpcc': Connection successful: DSN=tpccCS_1122;TTC_SERVER=sandep1.example.com;TTC_SERVER_DSN=tpcc_1122;UID=tpcc ;DATASTORE=/hadoop/timesten/DemoDataStore/tpcc_1122;DATABASECHARACTERSET=US7ASCI I;CONNECTIONCHARACTERSET=US7ASCII;PERMSIZE=32000;TEMPSIZE=2000;TYPEMODE=0; (Default setting AutoCommit=1) Command> select count(*) from warehouse; < 120 > 1 row found. 7

If ttisqlcs connectivity is successful and you have correctly configured your bash profile in order that hammerdb can find the correct client libraries you can use the TCL shell located in the hammerdb bin directory to manually test the hammerdb can connect to TimesTen in a client server configuration as shown: -bash-3.2$./tclsh8.6 % package require Oratcl 4.5 % set connect "tpcc/tpcc@tpcccs_1122" tpcc/tpcc@tpcccs_1122 % set lda [ oralogon $connect ] oratcl1 % Driver Options and Test When configuring the options for the driver script ensure that the TimesTen Database Compatible checkbox is selected and the Oracle service name is the name specified in the tnsnames.ora file depending on whether hammerdb is running on the client or server as shown in figure 3. Figure 3 TimesTen Driver Options You should be aware that with an in-memory database checkpointing has different considerations with the Oracle Database and checkpoints at the end of tests may provide an additional overhead. You should consult the Oracle documentation to understand the difference in functionality on the two databases. TimesTen does not currently support AWR functionality or an equivalent method to call statistic snapshotting from within the database itself. For that reason when the AWR Snapshot Driver Script is selected to run against TimesTen a timed test will be performed and a message displayed that statistics can be gathered externally using the ttstats utility as shown in figure 4. An example of running ttstats externally is shown: $./ttstats -latchstats on -snapshot -xml 1.xml tpcc_1122 8

$ sleep 300 $./ttstats -latchstats on -snapshot -xml 2.xml tpcc_1122./ttstats -report 1.xml 2.xml -html stats.html There is also a utility ttstatscs for running in a client server configuration. Figure 4 TimesTen Test You can now proceed to test your TimesTen in-memory database in exactly the same way as you would do for an Oracle database including for example the ability to automate a test sequence with autopilot as shown in figure 5. 9

Figure 5 TimesTen Autopilot Conclusion This guide provides supplementary information for administrators experienced in load testing Oracle with hammerdb how to install and configure an Oracle TimesTen Client and Server configuration in order to run the same tests as performed against Oracle on TimesTen. Support and Discussion Need help? Try the Hammerora Sourceforge forum Want to discuss your results or have tips on tuning and configuration? open a discussion topic 10