IBMInformix TPC-C-based Linux stress testing

Source: Internet
Author: User
Tags informix
Looking at the flood, the only hope for survival is to trust intuition so that we can survive the disaster. When dealing with annoying application response times, enterprises with hundreds of end users may find themselves in a similar situation as described above. After the application is deployed, there may be a wave of user dissatisfaction at any time, especially when you are not confident in your own infrastructure.

Looking at the flood, the only hope for survival is to trust intuition so that we can survive the disaster. When dealing with annoying application response times, enterprises with hundreds of end users may find themselves in a similar situation as described above. After the application is deployed, there may be a wave of user dissatisfaction at any time, especially when you are not confident in your own infrastructure.

Looking at the flood, the only hope for survival is to trust intuition so that we can survive the disaster. When dealing with annoying application response times, enterprises with hundreds of end users may find themselves in a similar situation as described above. Users may be dissatisfied at any time after the application is deployed, especially when you are not confident about your infrastructure and do not take the time to run the relevant stress tests before deployment.

Recent trends and technical articles 1 show that if an enterprise chooses a relational Management System (RDBMS) but does not know how or whether DRDs can be upgraded normally, as user load increases, problems may arise. However, many software editors (including Cisco Systems and SugarCRM) are now considering adding IBM to their supported platforms®Informix®Because other RDBMS editors cannot provide sufficient performance and stability. Today, in the Technical Forum, problems related to migrating various RDBMS implementation projects to Informix are becoming increasingly frequent.

Enterprises running IBM Informix have found that product upgrades are effective, but in fact there are still some users who have never paid attention to the CPU consumption of the stressed Informix. In recent years, no real statistics have been published. Why not? Is it because competitors need to "bury" Informix, lack of actual performance comparison data with competitors, or is it generally the market indifference? The answer is irrelevant; it is important to determine the average number of terminal sessions that each online transaction processing (OLTP) Application of IBM Informix in the basic version can withstand.

The transaction processing performance (TPC) committee is responsible for releasing the specifications, scenarios, and results of the DBMS benchmark evaluation. The organization will follow the principle of "stay as close as possible to real life" and develop different types of DBMS benchmarks to set levels.

The current TPC baselines include TPC-C, TPC-E, and TPC-H, but the TPC-C is the most representative of OLTP activity baselines. Although users can find a large number of open source TPC-C running programs on the Internet, but most of them are written in Java language. The running procedures used in the following tests were developed by the Spanish team at the University of vallide and managed by professor Diego Llanos to perform a comparative test with IBM Informix.

Test Objectives

This test cannot be used as an official benchmark for the TPC-C as a copy of the formal TPC-C issued by the TPC board has not been approved by the TPC board. However, all rules set for the TPC-C benchmark are strictly observed during the testing process. Basically, this operation has run a stress test on Informix Innovator-C to indicate how many terminal sessions can be run simultaneously on a single Informix server (that is, the TPC-C user session that runs in the transaction Monitor ).

Preparation steps and selected configurations

First, use the source code to start the operation, which requires little cost. The following are the necessary preparation steps for the benchmark test:

1) install Linux-based servers based on the following specifications (Fedora 14, kernel 2.6.35.14 x86_64 ):
Intel quad-core Q9400 (four 2.66 Ghz processors)
Memory 16 Gb DDR-2 RAM
✓ Four 500 Gb sata ii, 7,200 rpm disk drives
Note that the above configuration cost is less than 900 euros.

2) install and configure IBM Informix Innovator-C Edition on the Linux server.
Innovator-C Edition is free, so there is no cost. The selected version is 11.70 FC4.

3) Run IBM Informix using the TPC-C application (initially developed in PostgreSQL ESQL/C) launched by the University of barliadore. This task is relatively easy, because modifying PostgreSQL Based on the Informix server mechanism is the main modification of the entire task. In addition, the initial database creation statements have been optimized to make full use of RAW tables and preprocessing statements. Similarly, this benchmark does not measure Database loading statements, so the shorter the loading time, the better.

4) Compile and debug applications.

5) Optimize Informix.

6) run the test and gradually increase the pressure until the system performance declines. Strictly abide by TPC-C rules to ensure test passes.

Benchmark rules

Even unofficial tests must follow the following rules:

 Do not modify the database mode. The TPC-C database contains nine tables, each containing a predefined structure, validated indexes, and integrity constraints. You cannot modify, add, or delete any element.

Do not modify the base number of a table. The table base has strict rules. For example, a repository hosts 100,000 projects and a partition contains 3,000 customers.

Do not modify the application code of the transaction. The TPC-C uses five different transactions to reflect the running status of typical OLTP applications: new orders, payments, deliveries, order statuses, and inventory levels. The last index contains the number of queries (different) for non-index columns and the WHERE clause. Therefore, you need to place a little pressure on the database engine.

Each transaction class specifies the maximum allowed response time. For each transaction type, at least 90% of the transactions must be executed as follows. If a negative value exists, the test fails.

 Each test contains the wait (or push) time and measurement time (performance measurement interval ). The waiting time helps the server adapt to the increasing load, so that the measurement time can be transitioned to the stable performance.

There are no exact rules for the  checkpoint interval, except that at least one checkpoint must be tested during the measurement period. This does not matter when Informix Innovator-C is used, because the checkpoint only blocks a very small number of transactions. This test uses a 15-minute interval, which is also used by the real system.

There are no rules for disk compaction. All four sata ii 7,200 rpm disks on the same SATA controller are applied to balance the locations of tables and indexes as accurately as possible.

The shared memory of all Informix Innovator-C instances on the same computer is limited to 2 Gb. This test fully uses the 2 Gb, and also reserves the shm1_size space for sorting and similar operations.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.