The Health Check for IBM UniVerse is a carefully crafted program designed to review the efficiency as well as effectiveness of a IBM UniVerse-based database management system.
The efficiency of the system is evaluated by determining the extent to which the IBM UniVerse products have been utilized; essentially, is the system “firing on all cylinders”?
The efficiency of a system takes into consideration issues such as:
- Is the database and operating system properly configured?
- Are there sufficient hardware resources for the various applications?
- Is the UniVerse database correctly sized?
- Are indexes being used to best advantage?
- Are critical administrative utilities run regularly?
- Does the staff have the requisite skills needed to maintain an efficient system?
In a complex computing environment, the extent to which these issues and others are addressed will affect the overall efficiency and effectiveness of the systems in place. The Health Check for IBM UniVerse addresses these issues of efficiency and effectiveness by having a skilled UniVerse engineer assess your UniVerse-based computing environment over a one-to-five day period.
Ideal System Performance
To achieve the optimal performance for a given system one must ensure the optimal performance of each component of the system. The components addressed in this performance analysis are:
- Hardware utilization including CPU, I/O, Memory
- Operating System Configuration
- UniVerse Database Server
- Client Communications
- Application Implementation
- Operations and Maintenance including backup, recovery, consistency checks and others.
Each of these components is critically important to the optimal performance of the overall system.
The following are some of the issues related to each system component.
The server hosting your IBM UniVerse database relies primarily on three hardware
subsystems for efficient performance – CPU, Memory, and I/O.
A well-architected system will show optimal CPU utilization without queues. A fully utilized CPU is ideal, but the additional check of the number of processes waiting for the CPU is required.
The I/O subsystem of the database server is critical to the performance of the database and its applications. Ideally, the disks in the system will be responding to requests quickly and there will be no queues forming on those disks. Additionally, for large decision support queries, the controllers will be analyzed for bottlenecks and limitations. If RAID is being used, this will be analyzed for its effect on the database and applications.
A large server may contain several gigabytes of main memory. The use of that memory has to be carefully divided among the functions of the server: applications, database, and operating system. The goal is to have ample free-memory to meet the peak demands of the workload, while maintaining good cache hit rates in the database.
UniVerse uses a file of configuration parameters that determines its operating characteristics and utilization of operating system resources. These will be analyzed and recommendations provided in order assure optimum performance, database integrity, and high system availability. Location and use of the UniVerse temporary workspace directory, used during all selects and sorts, will also be evaluated.
UniVerse Database Server:
There are an enormous number of items that relate to database performance. However, key elements of this score will reflect the use of indexes, file sizing, group buffer overflow and oversized records, lock table configuration, semaphore collisions, and others. These areas will be investigated extensively based on the overall behavior of the database. If distributed files are being used, the partitioning algorithms will be reviewed to determine their effects on disk cache utilization. Each component of the analysis will be detailed in the report that is delivered at the completion of the service.
Database applications can often be enhanced through techniques that may have been introduced after the application was originally designed. The use of internal field cache pointers in accessing the elements of dynamic arrays, for example, is a common way to gain performance in applications. A discussion with the on-site application developers will lead the engineer to make recommendations for improving the application, or simply stating the application is well written.
While the above analysis strives to leverage hardware and software to its fullest potential, this area of the assessment strives to provide operational stability to the environment. Looking at batch jobs, backup and recovery strategies, logging strategies, upgrade strategies, and test platform capability will enable the engineer to provide recommendations for improving availability of the environment.
During the Performance Analysis, you will need to provide access to your systems and key personnel if this evaluation is to be thorough and meaningful. Key individuals in your environment will be the DBA, the System Administrator, the Application Team Leader, and others you identify as being able to provide insight to the design and workings of the current system.
Health Check for UniVerse (pdf/137kb)