Newsflash

Cygnus-X1 Consulting Limited is pleased to announce it has entered into a contract to provide consultancy services to AstraZeneca for a further 6 months.
 
Database Performance Tuning PDF Print E-mail
Written by Administrator   
Thursday, 15 March 2007

Database Performance Tuning

Performance tuning is a vital part of the management and administration of successful database systems. By setting a priority on database performance management, you can:

  • improve customer service
  • optimize your investment in system hardware and software
  • prevent performance crises

However, database performance tuning is technically challenging. It requires a detailed understanding of how all the components of a database system operate and interact. The documentation and tuning books provide basic guidelines only. This basic tuning information is adequate for many databases, but an increasing number of systems need to overcome complex performance problems, or need to meet extremely demanding response time requirements.

When a complex distributed software system (for example, a multi-tier Web application) does not meet its business-critical performance requirements, the next step - improvement of its performance - often turns into a whole sub-project.

 

 

The more developed the system is at such point, the more difficult it can be to achieve performance improvement quickly and inexpensively. Sometimes the situation can be even more dramatic: with all functionality already in place, the system just "does not want" to perform well enough, no matter how much hardware power is made available to it.

 

 

 

Comprehensive performance testing is merely a first step toward the solution. Any bottleneck exposed by performance testing usually boils down to some hardware resource (RAM, CPU, disk I/O throughput, or network bandwidth) being exhausted. However, the seemingly obvious remedy - to upgrade the throttling hardware - does not always work. The real questions that should be raised at this point are:

  • Is the software system optimized? Does it use the currently available hardware resources in the most effective way?
  • Is the software system scalable? Is it capable to take advantage of additional hardware resources to improve its current performance under the same load?

 

Finding answers on these questions is not an easy task, especially for distributed software systems that consist of many interoperating components - starting from your own code and ending with such commonly used components as Web servers, database servers, libraries, device drivers, and so on and so forth. And when the answer on any of these questions happens to be "no", the next challenge is to find the best way to improve the situation - to optimize some components or to rewrite others to make them scalable.

If you acknowledge the problem, but your development team does not have either time or enough experience required to find the optimum solution, Cygnus-X1 can help you pull your project out of the critical state quickly and with minimum expenses.

The solution

Performance improvement process conducted by Cygnus-X1 is iterative. Generally it consists of step-by-step detection, analysis, and elimination of performance bottlenecks. At each step, we consider different ways to remove a given bottleneck and, taking into account all important project's constraints (such as timeline and budget), choose the optimum solution.

The solutions we may recommend and implement include:

  • Tuning operating system performance on computers running all versions of MS Windows.
  • Tuning performance of database servers (including MS SQLServer, Sybase, Oracle, MySQL and DB2).
  • Optimization of database structures and schemas.
  • Optimization of SQL queries sent to the SQL-based database servers.
  • Optimization of your source code responsible for utilization of database servers (including the code using such APIs as JDBC, ODBC, DAO, ADO, OLE DB, and others).
  • General optimization of Java, VB, PowerBuilder and C/C++ code.
  • Optimization of input/output using asynchronous I/O techniques. Optimization of multi-threaded code.
  • Optimization of hardware configurations (including RAID systems and networking devices).
  • Hardware upgrade planning.

The benefits

Performance tuning services from Cygnus-X1 can substantially reduce the cost of your product. Our expertise in performance and scalability of software systems guarantees that your will spend money in a most efficient way: we will address the most crucial performance problems first and always attack the real causes of such problems, not the symptoms.

Skills transfer

At Cygnus-X1 we believe in sharing knowledge. We work with our clients, not just for them. We explain each diagnostic step, and make sure that our clients understand the reasons for their performance problems, as well as the relative merits of each solution option.

Cost estimates

For accurate estimates prospective clients should provide a clear description of their problem including representative performance statistics and other relevant history and attachments, but not large trace files. We will reply with our time estimate, rates and availability

Last Updated ( Thursday, 15 March 2007 )
 
< Prev   Next >
original solarflare design by rhuk
joomla templates by joomlashack
download joomla cms download joomla cms