A database administrator (DBA) is a person who is responsible for the environmental aspects of a database. In general, these include:
Although not strictly part of a database administrator's duties, logical and physical design of databases is sometimes part of the job. These functions are traditionally thought of as being the duties of a database analyst or database designer.
In a strictly technical sense, for any database to be defined as a "Truly Relational Model Database Management System," it should, ideally, adhere to the twelve rules defined by Edgar F. Codd, pioneer in the field of relational databases. To date, while many come close, it is admitted that nothing on the market adheres 100% to those rules, any more than they are 100% ANSI-SQL compliant.
While IBM and Oracle technically were the earliest on the RDBMS scene, many others have followed, and while it is unlikely that miniSQL still exist in their original form, Monty's MySQL is still extant and thriving, along with the Ingres-descended PostgreSQL. Microsoft Access - the 1995+ versions, not the prior versions - was, despite various limitations, technically the closest thing to being a 'Truly Relational' DBMS for the desktop PC, with Alpha5, Visual FoxPro, and many other desktop products marketed at that time far less compliant with Codd's Rules.
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 to the messaging protocol 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, also sometimes called "disaster recovery," takes two primary forms. First the backup, then recovery tests.
The backup of the database consists of data with timestamps combined with database logs to change the data to be consistent to a particular moment in time. It is possible to make a backup of the database containing only data without timestamps or logs, but the DBA must take the database offline to do such a backup.
The recovery tests of the database consist of restoring the data, then applying logs against that data to bring the database backup to consistency at a particular point in time up to the last transaction in the logs. Alternatively, an offline database backup can be restored simply by placing the data in-place on another copy of the database.
If a DBA (or any administrator) attempts to implement a recoverability plan without the recovery tests, there is no guarantee that the backups are at all valid. In practice, in all but the most mature RDBMS packages, backups rarely are valid without extensive testing to be sure that no bugs or human error have corrupted the backups.
Techniques for database performance tuning have changed as DBA's have become more sophisticated in their understanding of what causes performance problems and their ability to diagnose the problem.
In the 1990's, DBA's often focused on the database as a whole, and looked at database-wide statistics for clues that might help them find out why the system was slow. Also, the actions DBA's took in their attempts to solve performance problems were often at the global, database level, such as changing the amount of computer memory available to the database, or changing the amount of memory available to any database program that needed to sort data.
Around the year 2000, many of the most fundamental assumptions about database performance tuning were discovered to be myths. Most famously, the database buffer cache hit ratio, once thought to be the most reliable way to measure database performance, was found to be a completely meaningless statistic.
As of 2005, the fog has lifted. DBA's understand that performance problems initially must be diagnosed, and this is best done by examining individual SQL programs, not the database as a whole. Various tools, some included with the database and some available from third parties, provide a behind the scenes look at how the database is handling the SQL program, shedding light on what's taking so long. Oracle's EXPLAIN PLAN utility is somewhat helpful, but Oracle's TKPROF provides a more complete diagnostic report. Every site that licenses Oracle has these utilities, since they are provided along with Oracle's database software.
Having identified the problem, the individual SQL statement can be tuned, and this is usually done by either rewriting it, using hints, adding or modifying indexes, or sometimes modifying the database tables themselves.
Here are some IT roles that are related to the role of database administrator:
Computer specialists | Data management
Administrador de base de datos | Administrateur de bases de données | Administrador de base de datos | Администратор базы данных
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Database administrator".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world