Testing application databases on Oracle Exadata Database Machine
How to carry out the testing
Contact FORS ExaStack Studio
Receive and complete an application form
Prepare a database dump
Make a list of tests
Record the existing DBMS load with the help of Oracle Real Application Testing (preferable but not obligatory)
If the application is developed by an Independent Software Vendor (ISV), ask the vendor to contact ExaStack Studio.
Application database testing is necessary to estimate the capabilities and advantages of a new hardware and software complex Oracle Exadata Database Machine in practice, as well as the degree of readiness and compliance of the client’s systems to certain technical requirements needed for optimum performance of the machine.
FORS ExaStack Studio experts can do the testing divided into following stages:
determination of testing purposes;
development of a testing plan;
transfer of testing data by means of:
setting selection criteria for testing data,
determining means of transferring testing data,
masking confidential information,
selection and loading data from the application database,
loading data to Oracle Exadata;
selection of a testing environment;
load testing and analyzing the results;
development of recommendations on application database modification in order to ensure best results of working on Oracle Exadata.
It is important to bear in mind that testing results will be to a considerable extent determined by the version of Oracle DBMS in use.
Oracle Exadata works under the newest version, 11gR2. If the software version that the original DBMS uses is lower than 11gR2, then for the comparison to be accurate it has to be transferred to 11gR2, and only then the testing and comparison with Exadata can be done. Therefore, application testing on Exadata can serve as a valid argument in favor of transferring to the newer version of DBMS.
Testing purposes and scenarios
If the purpose of the testing is comparison of productivity of an application on the current platform versus Exadata (Exadata Proof of Value), then first there has to be an evaluation of required labor and a comparison with available resources. If the resources are sufficient, it’s possible to do testing with complete transfer of data (with masking confidential information) and infrastructure of the application on tested hardware and software using Exadata as a back end DBMS.
If the resources are limited, then it’s possible to transfer only part of the data and carry out the testing in maximum load conditions, e.g. during simultaneous operation of several most consuming SQL applications and then compare the statistics. Between these two extreme testing options there are a large number of interim ones. The most important factor is the experience and creative approach of the people administrating the applications.
The experience that the client’s employees will gain during testing will prove very useful in the event of acquisition and further operation of Exadata.
Transfer of data for testing
Data selection criteria
While selecting data for testing it is preferable to single out “hot” tables, meaning those that create productivity-related problems for the users.
The most effective and convenient method, however, is to transfer all data from the database that the application uses, and handling them in the process of testing on Exadata.
Methods of data transfer for testing
For the transfer of data to Oracle Exadata the requirements are not as strict as for migration, but nevertheless time requirements need to be taken into consideration.
The optimal method is to transfer the DB files. Here you can clone table spaces or the whole database. If it is impossible to do so (different endians or incompatible versions), then export and import of data is used.
Masking confidential information
If for security reasons real data cannot be transferred to Exadata, then serious work related to masking confidential data has to be undertaken. For this purpose Oracle Data Masking Pack (DMP) can be used. The interfaces of this package are determined by the database version. Prior to version 11gR1 DMP is recalled from Oracle Enterprise Manager Grid Control. In 11gR2 DMP can be accessed through EM DB Control.
If the company is experiencing or expecting any current or potential problems related to:
maintaining confidentiality of the data submitted for external or internal audit,
submitting real data to the developers for the enhancement and adjustment of existing application systems or for the development of new ones,
any difficulties with meeting the standards in the field of ensuring confidentiality (PCI, SO, ...),
then using DMP might prove very useful in resolving these issues. Therefore, the efforts put into transferring the data for testing on Exadata can be of good service in further operation of application systems.
Selection of the testing environment — RAC or Single Instance
If the tested system operates in RAC environment, then testing it on Exadata should also be done in RAC environment. In that case we need to take into consideration the number of nodes (hosts) at the original computing system and on Exadata. If the original system works on a single instance DB, then several options need to be considered.
It is a customary understanding that the operation of Exadata in RAC environment is preferable because it ensures maximum productivity. This is explained by the fact that RAC configuration allows for simultaneous operation of several servers, while with single instance there is only one. In truth both variants are possible, everything depends on the particularities of the given system. When the testing is done it would be useful to evaluate the system’s operating results in both cases, identify the advantages and/or disadvantages of transferring to the RAC environment. Such information will help to see the strong and weak points in the operation of the application system and draw conclusions on its further development opportunities.
In the conclusion it has to be noted that before starting the load testing of your application system on Exadata, the testing scenario has to be clearly elaborated and all particularities of a given application need to be taken into consideration.