Introduction to database change management

Database change management is the process of determining what changes need to be made to a database, specifying those changes, and then deploying them.

Changes to database schemas can be required for a number of reasons, including new business requirements, mergers, legislative changes, and application environment changes. Schema changes can involve changes to both logical database objects (for example, tables, columns, primary keys, constraints) and to physical database objects (for example, databases, table spaces, buffer pools, indexes). Changing database objects, regardless of their type, is often not a trivial operation. Changes often impact dependent objects and sometimes even underlying data. The process of analyzing and maintaining these dependencies is traditionally time-consuming and prone to error.

Consider a typical database environment, shown in Figure 1, in which new applications and database design changes are initially introduced on a dedicated development system, are then validated on a test system, and are finally deployed to the organization's production system.

Figure 1. Typical database environment
The steps required to manage changes to a database are change specification, deployment, and auditing.
Although the overall design of the development, test, and production systems is typically quite similar, the business rules that govern each system are likely to be different. The production database operates under strict business rules and must be running 24 hours a day, 7 days a week. The test database also operates under strict business rules to assure that what is tested will run properly in production; however, the test database does not require the same level of availability that the production system requires. In contrast to the production and test systems, the development database often has fewer business rules because developers need to constantly make changes. The process of managing these disparate database systems often requires a DBA to:
Change management is often a difficult and time-consuming process for a database administrator because it presents the following challenges:

Change management software can make the process of change management easier because it increases reliability and reduces human error.


Feedback

Copyright IBM Corporation 2006, 2007. All Rights Reserved.