Craig S. Mullins

Return to Home Page

July 2003





The DBA Corner
by Craig S. Mullins  


DBAs Need Different Skills in Development and Production

One useful way to look at database administration is in terms of the type of support being delivered to applications. You can paint a broad brush stroke across the duties of the DBA and divide them into two categories: those that support development work and those that support the production systems.

Development DBAs support the application development lifecycle. There is no immediate impact to business, because the application/database is not yet operational. The development DBA focuses on building an effective, usable database environment to support business applications. As programs and systems are built, the development DBA lends assistance and support -- which includes building and maintaining the proper database structures required by applications.

Development DBAs need skill in data modeling and normalization to ensure that databases are designed to promote data integrity. The development DBA must be able to translate the logical data model into a physical database implementation.

Once the test database is created, the development DBA will assist programmers in building and editing test data. Test data generation, editing, and loading are required processes to ensure that appropriate data is available to test applications as they are built. The development DBA needs to be able to provide tools to facilitate database testing and data refresh. He or she also needs to work with the application team to ensure that proper methods are used to embed data access and modification logic into application programs. Finally, the development DBA must work with the application team to create and maintain effective database-coupled application logic - stored procedures, triggers, and user-defined functions (UDFs). These are programs that are under the control of the DBMS. The development DBA will help to build, test, and maintain stored procedures, triggers, and UDFs.

By contrast, the production DBA supports completed applications as they run your business operations. Production DBA work focuses on assuring availability, optimizing efficiency, and promoting usability. Once the database applications are operational, the key task becomes making sure they stay that way. It all boils down to keeping databases running up to PAR, an acronym that defines the three primary DBA responsibilities have for managing databases and applications: performance, administration, and recovery.

Database performance management is the optimization of resource usage to increase throughput and minimize contention, enabling the largest possible workload to be processed. Performance needs to be managed across the IT infrastructure. Administration refers to the day-to-day tasks of keeping databases up and running including change management, reviewing database structures, security and authorization, and like tasks. And backup and recovery is the process of taking appropriate database backups of the appropriate type at the proper time to ensure recoverability. When the production DBA focuses on PAR, applications will be performing according to the service level agreements, databases will be administered appropriately assuring optimal design and good organization, and data will be sufficiently backed up such that it can be recovered in the event of an error or downtime.

You will need to define, plan for, and staff both development and production DBA roles to create useful database applications.



From Database Trends and Applications, July 2003.

2003 Craig S. Mullins,  All rights reserved.