Recoverability Integrity Security Availability Performance Development and testing support
The duties of a database administrator at a particular site vary, depending on the policies in place and the database management system’s (DBMS’s) capabilities for carrying them out.
Before going on, we need to briefly define and describe “database.” A database is a collection of related information, accessed and managed by its DBMS. After experimenting with hierarchical and networked DBMSs during the 1970’s , the IT industry became dominated by relational DBMSs such as Oracle Server.
A relational DBMS manages information about types of real-world things (entities) in the form of tables that represent the entities. A table is like a spreadsheet; each row represents a particular entity (instance), and each column represents a type of information about the entity (domain). Sometimes entities are made up of smaller related entities, such as orders and order lines; and so one of the challenges of a multi-user DBMS is provide data about related entities from the standpoint of an instant of logical consistency.
Properly managed relational databases minimize the need for application programs to contain information about the physical storage of the data they access. To maximize the isolation of programs from data structures, relational DBMSs restrict data access messaging protocol to SQL, a nonprocedural language that limits the programmer to specifying desired results. This message-based interface was a building block for the decentralization of computer hardware, because a program and data structure with such a minimal point of contact become feasible to reside on separate computers.
Recoverability means that, if a data entry error, program bug or hardware failure occurs, the DBA can bring the database backward in time to its state at an instant of logical consistency before the damage was done. Recoverability activities include making database backups and storing them in ways that minimize the risk that they will be damaged or lost, such as placing multiple copies on removable media and storing them outside the affected area of an anticipated disaster. Recoverability is the DBA’s most important concern.
Integrity means that the database, or the programs that create its content, embody means of preventing users who provide data from breaking the system’s business rules. For example, a retailer may have a business rule that only individual customers can place orders; and so every order must identify one and only one customer. Oracle Server and other relational DBMSs enforce this type of business rule with constraints, which are configurable implicit queries. To continue the example, in the process of inserting a new order the database may query its customer table to make sure that the customer identified by the order exists.
Security means that users’ ability to access and change data conforms to the policies of the business and the delegation decisions of its managers. Like other metadata, a relational DBMS manages security information in the form of tables. These tables are the “keys to the kingdom” and so it is important to protect them from intruders.
Availability means that authorized users can access and change data as needed to support the business. Increasingly, businesses are coming to expect their data to be available at all times (“7x24”, or seven days a week, 24 hours a day). The IT industry has responded to the availability challenge with hardware and network redundancy and increasing online administrative capabilities.
Performance means that the database does not cause unreasonable online response times, and it does not cause unattended programs to run for an unworkable period of time. In complex client-server and three-tier systems, the database is just one of many elements that determine the performance that online users and unattended programs experience. Performance is a major motivation for the DBA to become a generalist and coordinate with specialists in other parts of the system outside of traditional bureaucratic reporting lines.
Development and testing support is typically what the database administrator regards as his or her least important duty, while results-oriented managers consider it the DBA’s most important duty. Support activities include collecting sample production data for testing new and changed programs and loading it into test databases; consulting with programmers about performance tuning; and making table design changes to provide new kinds of storage for new program functions.
Here are some IT roles that are related to the role of database administrator:
Application programmer System administrator Data administrator Data architect