Craig S. Mullins
Database Performance Management

Return to Home Page

January 2002


The DBA Corner
by Craig S. Mullins  

Dealing with Downtime

Availability is the eternal quest of the DBA. If the DBMS is down, data cannot be accessed. If the data is not available, your applications cannot run. And if your applications cannot run, your company is losing business. Lost business translates into lower profitability and perhaps even a lower stock valuation for your company. These are all detrimental to the business and therefore, the DBA is called upon to do everything in his or her power to ensure that databases are kept on line and operational. This has been the duty of the DBA since the days of the first DBMS.

But the business need for round-the-clock availability is increasing. The days are gone when organizations enjoyed a long batch window where databases could be offline for extended periods to perform nightly processing and maintenance tasks. Exacerbating this trend is the drive toward e-business. When a business is coupled to the Internet it dramatically alters the way that business operates. Indeed, the Internet has created expectations for businesses to be more connected, more flexible, and most importantly, more available.

When you integrate the Web with database management, heightened expectations are placed on DBAs to keep databases up and running more smoothly and for longer periods of time. When your business is on the World Wide Web, it never closes. People expect full functionality on Web sites they visit regardless of the time of day. Remember that the Web is worldwide. It may be three o’clock in the morning in New York, but it is always prime time somewhere in the world. So an e-business must be available and operational 24 hours a day, 7 days a week, 365 days a year (366 for leap years).

Of course, e-business is not the only driver for increased availability. Other factors include:

  •       The pervasive “fast food” mentality that demands excellent service – and demands it “now!”

  •       The desire to gain a competitive advantage in the marketplace by offering superior services at a time of the customer’s choosing.

  •       The increasing requirement to conduct business in the global market.

  •       The need to react to competitors who offer better service to customers because of higher data availability.

With demands for higher and higher availability, especially for e-commerce, traditional forms of database administration are becoming inadequate. Modern DBAs must learn new techniques to administer, control, and assure the recoverability of the databases they manage.

Downtime and outages are the enemy of availability. There are two general causes of application downtime: planned outage and unplanned outage. Historically, unplanned outages comprised the bulk of application downtime. These outages were the result of disasters, operating system crashes, and hardware failures. However, this is simply not the case any more. In fact, today most outages are planned outages, caused by the need to apply system maintenance or make changes to the application, database, or software components. Studies show that approximately 70 per cent of application downtime is caused by planned outages to the system; only 30 per cent is due to unplanned outages.

What does all of this mean for the DBA? Well, the first thing to take away from this discussion is: "Although it is important to plan for recovery from unplanned outages, it is even more important to minimize downtime resulting from planned outages.” This is so because planned outages occur more frequently and therefore can have a greater impact on availability than unplanned outages."

How can DBAs reduce downtime associated with planned outages? The best way to reduce downtime is to avoid it. Consider the following technology and software to avoid the downtime traditionally associated with planned outages:

  •       Performing critical database maintenance tasks such as reorganization and integrity checking while the database remains online for concurrent read/write activity. Modern database utilities can accomplish this using shadow copies of the data and synchronizing after the maintenance occurs.

  •       Changing DBMS system parameters without recycling the database instance or subsystem. ISV products are available to accomplish this, but many of the DBMS vendors are building such capabilities into the DBMS itself.

  •       Using high speed transaction recovery techniques to recover data while the database remains online. Several ISV products accomplish this by reading the database logs and re-creating anti-SQL – in other words, turning deletes into inserts, inserts into deletes, and reversing the effects of updates.

These are just a few of the techniques that can be used to minimize database downtime. As databases grow in size and complexity, so, too, do the chances that bad transactions will corrupt the data on which your business depends. A prepared DBA group will have an arsenal of techniques, tools, and procedures at its disposal to minimize or eliminate database downtime.


From Database Trends and Applications, January 2002.

© 2002 Craig S. Mullins,  All rights reserved.