Database administration is the function of managing and maintaining
database management systems (DBMS) software. Mainstream DBMS software such as
Oracle,
IBM Db2 and
Microsoft SQL Server
Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which ...
need ongoing management. As such, corporations that use DBMS software often hire specialized
information technology
Information technology (IT) is the use of computers to create, process, store, retrieve, and exchange all kinds of Data (computing), data . and information. IT forms part of information and communications technology (ICT). An information te ...
personnel called
database administrator
Database administrators (DBAs) use specialized software to store and organize data. The role may include capacity planning, installation, configuration, database design, migration, performance monitoring, security, troubleshooting, as well as ba ...
s or DBAs.
Responsibilities
* Installation, configuration and upgrading of Database server software and related products.
* Evaluate Database features and Database related products.
* Establish and maintain sound backup and recovery policies and procedures.
* Take care of the
Database design and implementation.
* Implement and maintain database security (create and maintain users and roles, assign privileges).
*
Database tuning
Database tuning describes a group of activities used to optimize and homogenize the performance of a database. It usually overlaps with query tuning, but refers to design of the database files, selection of the database management system (DBMS) ...
and performance monitoring.
* Application tuning and performance monitoring.
* Setup and maintain documentation and standards.
* Plan growth and changes (capacity planning).
* Work as part of a team and provide 24/7 support when required.
* Do general technical troubleshooting and give cons.
* Database recovery
Types
There are three types of DBAs:
#Systems DBAs (also referred to as physical DBAs, operations DBAs or production Support DBAs): focus on the physical aspects of database administration such as DBMS installation, configuration, patching, upgrades, backups, restores, refreshes, performance optimization, maintenance and disaster recovery.
#Development DBAs: focus on the logical and development aspects of database administration such as
data model
A data model is an abstract model that organizes elements of data and standardizes how they relate to one another and to the properties of real-world entities. For instance, a data model may specify that the data element representing a car be c ...
design and maintenance, DDL (
data definition language) generation, SQL writing and tuning, coding
stored procedures, collaborating with developers to help choose the most appropriate DBMS feature/functionality and other pre-production activities.
#Application DBAs: usually found in organizations that have purchased
3rd party
3rd Party was an American three-member dance-pop group that released one album in 1997. They are best known for their ''Billboard'' Hot 100 charting dance hits "Can U Feel It" and "Love Is Alive".
Background
Lead singer Maria Christensen was ...
application software
Application may refer to:
Mathematics and computing
* Application software, computer software designed to help the user to perform specific tasks
** Application layer, an abstraction layer that specifies protocols and interface methods used in a ...
such as ERP (
enterprise resource planning
Enterprise resource planning (ERP) is the integrated management of main business processes, often in real time and mediated by software and technology. ERP is usually referred to as a category of business management software—typically a sui ...
) and CRM (
customer relationship management
Customer relationship management (CRM) is a process in which a business or other organization administers its interactions with customers, typically using data analysis to study big data, large amounts of information.
CRM systems data collectio ...
) systems. Examples of such application software includes
Oracle Applications
Oracle Applications comprise the applications software or business software of the Oracle Corporation both in the cloud and on-premises. The term refers to the non-database and non-middleware parts. The suite of applications includes enterprise re ...
, Siebel and
PeopleSoft
PeopleSoft, Inc. is a company that provides human resource management systems (HRMS), Financial Management Solutions (FMS), supply chain management (SCM), customer relationship management (CRM), and enterprise performance management (EPM) software ...
(both now part of Oracle Corp.) and SAP. Application DBAs straddle the fence between the DBMS and the application software and are responsible for ensuring that the application is fully optimized for the database and vice versa. They usually manage all the
application components that interact with the database and carry out activities such as application installation and patching, application upgrades, database cloning, building and running data cleanup routines, data load
process management, etc.
While individuals usually specialize in one type of database administration, in smaller organizations, it is not uncommon to find a single individual or group performing more than one type of database administration.
Automation of database administration
The degree to which the administration of a database is automated dictates the skills and personnel required to manage databases. On one end of the spectrum, a system with minimal automation will require significant experienced resources to manage; perhaps 5-10 databases per DBA. Alternatively an organization might choose to automate a significant amount of the work that could be done manually therefore reducing the skills required to perform tasks. As automation increases, the personnel needs of the organization splits into highly
skilled worker
A skilled worker is any worker who has special skill, training, knowledge which they can then apply to their work. A skilled worker may have attended a college, university or technical school. Alternatively, a skilled worker may have learned thei ...
s to create and manage the automation and a group of lower skilled "line" DBAs who simply execute the automation.
Database administration work is complex, repetitive, time-consuming and requires significant training. Since databases hold valuable and mission-critical data, companies usually look for candidates with multiple years of experience. Database administration often requires DBAs to put in work during off-hours (for example, for planned after hours downtime, in the event of a database-related outage or if performance has been severely degraded). DBAs are commonly well compensated for the long hours.
One key skill required and often overlooked when selecting a DBA is database recovery (a part of disaster recovery). It is not a case of “if” but a case of “when” a database suffers a failure, ranging from a simple failure to a full catastrophic failure. The failure may be data corruption, media failure, or user induced errors. In either situation the DBA must have the skills to recover the database to a given point in time to prevent a loss of data.
Database administration tools
Often, the DBMS software comes with certain tools to help DBAs manage the DBMS. Such tools are called native tools. For example, Microsoft SQL Server comes with SQL Server Management Studio and Oracle has tools such as
SQL*Plus
SQL Plus is the most basic Oracle Database utility, with a basic command-line interface, commonly used by users, administrators, and programmers.
Command types
SQL Plus understands five categories of text:
# SQL statements
# PL/SQL blocks
# SQL ...
and Oracle Enterprise Manager/Grid Control. In addition, 3rd parties such as BMC,
Quest Software
Quest Software, also known as Quest, is a privately held software company headquartered in Aliso Viejo, California, United States. Quest provides cloud management, software as a service, security, workforce mobility, and backup & recovery. The c ...
,
Embarcadero Technologies
Embarcadero Technologies, Inc. is an American computer software company that develops, manufactures, licenses, and supports products and services related to software through several product divisions. It was founded in 1993, went public in 2000, ...
, patchVantage and SQL Maestro Group offer GUI tools to monitor the DBMS and help DBAs carry out certain functions inside the database more easily.
Another kind of database software exists to manage the provisioning of new databases and the management of existing databases and their related resources. The process of creating a new database can consist of hundreds or thousands of unique steps from satisfying prerequisites to configuring backups where each step must be successful before the next can start. A human cannot be expected to complete this procedure in the same exact way time after time - exactly the goal when multiple databases exist. As the number of DBAs grows, without automation the number of unique configurations frequently grows to be costly/difficult to support. All of these complicated procedures can be modeled by the best DBAs into database automation software and executed by the standard DBAs. Software has been created specifically to improve the reliability and repeatability of these procedures such as
Stratavia
Stratavia, formerly known as ExtraQuest, was a software company that specialized in enterprise Database and Data Center Automation, and private cloud computing enablement. Stratavia was founded by Venkat Devraj and Rainier Luistro in 2001.
The co ...
's
Data Palette
In the pursuit of knowledge, data (; ) is a collection of discrete values that convey information, describing quantity, quality, fact, statistics, other basic units of meaning, or simply sequences of symbols that may be further interpreted ...
and
GridApp Systems
GridApp Systems, Inc. was a database automation software company. It was purchased by BMC Software in December, 2010.
Founded in 2002 and headquartered in New York City
New York, often called New York City or NYC ...
Clarity.
The impact of IT and cloud automation
Automated Database operations has grown since 2009, following
Amazon Web Services
Amazon Web Services, Inc. (AWS) is a subsidiary of Amazon that provides on-demand cloud computing platforms and APIs to individuals, companies, and governments, on a metered pay-as-you-go basis. These cloud computing web services provide d ...
introduction of AWS RDS, providing automated and managed database as a service.
Microsoft Azure launched a similar automated database as a service in 2010, with SQL Azure, providing automated backups, with geo-replication and high availability. The introduction of
docker (software) containers has enhanced support for fast delivery of containerized database instances, and both Amazon Web Services and
Microsoft Azure have enhanced automated support for containers in their respective services.
Third party support for database container images has grown, including MongoDB,
PostgreSQL, MySQL from
Oracle, and
Microsoft SQL Server
Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which ...
from
Microsoft
Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washin ...
, and from independent port's of
docker (software) from Windocks
Kubernetes
Kubernetes (, commonly stylized as K8s) is an open-source container orchestration system for automating software deployment, scaling, and management. Google originally designed Kubernetes, but the Cloud Native Computing Foundation now maintains ...
, and the development of the Kubernetes Operator pattern by CoreOS, further extended the ability to orchestrate database container. Kubernetes Operators have been used by third parties to enable the ability to automate database administration, including deployment of instances of a database, upgrade database versions, or perform backups.
Newer technologies such as
Stratavia
Stratavia, formerly known as ExtraQuest, was a software company that specialized in enterprise Database and Data Center Automation, and private cloud computing enablement. Stratavia was founded by Venkat Devraj and Rainier Luistro in 2001.
The co ...
's
Data Palette
In the pursuit of knowledge, data (; ) is a collection of discrete values that convey information, describing quantity, quality, fact, statistics, other basic units of meaning, or simply sequences of symbols that may be further interpreted ...
suite and
GridApp Systems
GridApp Systems, Inc. was a database automation software company. It was purchased by BMC Software in December, 2010.
Founded in 2002 and headquartered in New York City
New York, often called New York City or NYC ...
Clarity have begun to increase the automation of databases causing the reduction of database related tasks. However at best this only reduces the amount of mundane, repetitive activities and does not eliminate the need for DBAs. The intention of DBA automation is to enable DBAs to focus on more proactive activities around database architecture, deployment, performance and service level management.
Every database requires a database owner account that can perform all schema management operations. This account is specific to the database and cannot log into Data Director. You can add database owner accounts after database creation. Data Director users must log in with their database-specific credentials to view the database, its entities, and its data or to perform database management tasks. Database administrators and application developers can manage databases only if they have appropriate permissions and roles granted to them by the organization administrator. The permissions and roles must be granted on the database group or on the database, and they only apply within the organization in which they are granted.
Learning database administration
There are several education institutes that offer professional courses, including late-night programs, to allow candidates to learn database administration. Also, DBMS vendors such as Oracle, Microsoft and IBM offer certification programs to help companies to hire qualified DBA practitioners. College degree in Computer Science or related field is helpful but not necessarily a prerequisite.
See also
*
Column-oriented DBMS
A column-oriented DBMS or columnar DBMS is a database management system (DBMS) that stores data tables by column rather than by row. Benefits include more efficient access to data when only querying a subset of columns (by eliminating the need to r ...
*
Data warehouse
In computing, a data warehouse (DW or DWH), also known as an enterprise data warehouse (EDW), is a system used for reporting and data analysis and is considered a core component of business intelligence. DWs are central repositories of integra ...
*
Directory service
In computing, a directory service or name service maps the names of network resources to their respective network addresses. It is a shared information infrastructure for locating, managing, administering and organizing everyday items and network ...
*
Distributed database management system
In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases spa ...
*
Hierarchical model
A hierarchical database model is a data model in which the data are organized into a tree-like structure. The data are stored as records which are connected to one another through links. A record is a collection of fields, with each field containin ...
*
Navigational database
A navigational database is a type of database in which records or objects are found primarily by following references from other objects. The term was popularized by the title of Charles Bachman's 1973 Turing Award paper, ''The Programmer as Navig ...
*
Network model
The network model is a database model conceived as a flexible way of representing objects and their relationships. Its distinguishing feature is that the schema, viewed as a graph in which object types are nodes and relationship types are arcs, ...
*
Object model
In computing, object model has two related but distinct meanings:
# The properties of objects in general in a specific computer programming language, technology, notation or methodology that uses them. Examples are the object models of ''Java'', ...
*
Object database
An object database or object-oriented database is a database management system in which information is represented in the form of objects as used in object-oriented programming. Object databases are different from relational databases which a ...
(OODBMS)
*
Object–relational database
An object–relational database (ORD), or object–relational database management system (ORDBMS), is a database management system (DBMS) similar to a relational database, but with an object-oriented database model: objects, classes and inherit ...
(ORDBMS)
*
Run Book Automation
In a computer system or network, a runbook is a compilation of routine procedures and operations that the system administrator or operator carries out. System administrators in IT departments and NOCs use runbooks as a reference.
Runbooks ca ...
(RBA)
*
Relational model (RDBMS)
*
Comparison of relational database management systems
The following tables compare general and technical information for a number of relational database management systems. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are ba ...
*
Comparison of database tools
The following tables compare general and technical information for a number of available :Database administration tools, database administrator tools. Please see individual product articles for further information. This article is neither all-incl ...
*
SQL is a language for database management
References
External links
*
*
{{Databases, state=expanded
Database management systems
Data management