What Is an Autonomous Database?

An autonomous database is a cloud database that uses machine learning to eliminate the human labor associated with database tuning, security, backups, updates, and other routine management tasks traditionally performed by database administrators (DBAs).

Oracle Autonomous Database: How It Works

Oracle Autonomous Database: How It Works video thumbnail
Watch the video (14:32)

Compared to traditional database technology, an autonomous database cloud has greater availability greater security, and lower operating costs.

Other industry terms for autonomous database are self-driving database, self-repairing and self-securing.

Self-driving means that the database can automatically provision, or deploy databases; and monitor, back-up, recover, and troubleshoot those databases. It also means to instantly grow and shrink compute or storage without downtime.

Self-securing refers to adaptive AI-enabled threat detection and remediation, along with automatic data encryption. A self-security database can also apply security patches automatically.

Self-repairing databases are automatically protected from downtime. With up to 99.995 percent availability, a self-repairing database experiences less than 2.5 minutes of downtime per month, including planned maintenance.

The Uses of Enterprise Databases

The Uses of Enterprise Databases video thumbnail
Watch the video (0:58)

Databases store critical business information and are essential for the efficient operation of modern organizations. If the database is not secure, the enterprise can be at risk of breaches. If the database is running slowly or is unavailable, employee productivity can suffer, and customers can be frustrated.

Information stored in a database management system can be highly structured or the data can be unstructured. The data may be directly accessible by customers and employees or accessed indirectly through other enterprise software, websites, or mobile apps.

Examples of Structured Information Stored in Databases
  • Accounting records
  • Customer information
  • Employee information
  • Maintenance records
  • Network traffic logs
  • Pricing information
  • Product inventory
  • Sales transactions
  • Social media interactions
  • Supply chain information
Examples of Unstructured Information Stored in Databases
  • Digital images, sound, and video files
  • Programming source code
  • Spreadsheets
  • Website pages
  • Word-processing documents
Software That Stores and Accesses Information Stored in Databases
  • Accounting
  • Custom enterprise software developed by the customer
  • Customer relationship management (CRM)
  • Data analytics and business intelligence (BI)
  • Enterprise resource planning (ERP)
  • Human resources (HR) / Human capital management (HCM)
  • Product lifecycle management (PLM)
  • Security and log management
  • Supply chain management (SCM)
  • Web server

Business applications can add new records to existing databases or use database information to create reports, analyze trends, or look for anomalies.

Databases can grow to become many terabytes in size and are traditionally difficult for DBAs to manage, secure, and tune for maximum performance due to the database’s complexity.

The Role of the Database Administrator

The Role of the Database Administrator video thumbnail
Watch the video (0:49)

Enterprise databases are traditionally managed by database administrators (DBAs), who create, modify, and tune databases to ensure maximum performance both when storing new data in a database, and then retrieving that data.

Often, the process of retrieving data from a database is initiated through an application’s complex query. Running the query can consume a lot of compute and disk-access resources. The results can consist of many database records, which must be sent back to the querying application.

One labor-intensive portion of the DBA’s job is to organize the database so that frequently run queries can execute as quickly as possible, while consuming minimal resources. This requires studying the types of queries being run on the database and discerning patterns that will lead to improved tuning. Performance tuning is an ongoing part of database maintenance. A related task is data normalization, which restructures data to reduce redundancy and improve data integrity.

The DBA is responsible for other tasks, many of which must be executed on a daily or other regular basis on all enterprise databases, of which there could be dozens or hundreds. That list of tasks includes:

  • Backing up the database in case of disaster or data loss
  • Testing the backups to make sure the database can be recovered
  • Recovering lost data in the event of an incident
  • Reviewing security logs to ensure that the database has not been accessed inappropriately
  • Monitoring the database software’s vendor information feeds for security alerts, patches, and upgrades
  • Scheduling and applying patches and upgrades when required
  • Adjusting the security settings of the databases to respond to threats
  • Authorizing new users and applications to access the database
  • Monitoring processor and memory utilization of the database server
  • Creating and managing schemas—that is, categorization of data
  • Assisting software developers with database questions
  • Managing extract, transform, and load (ETL) tools
  • Monitoring disk utilization of the database server
  • Adding more storage or migrating the storage, if necessary
  • Planning for future capacity requirements for the database
  • Troubleshooting errors and other database problems
  • Working with business users and developers to define data models for new applications or modules

DBAs Are Overloaded; This Can Result in Human Error

By some estimates, roughly 40 percent of DBAs today are managing 50 or more databases every day. Meanwhile, 78 percent of DBAs say they experience some type of unplanned downtime over the course of their careers, and most of these individuals struggle to coordinate multiple management and backup tools.

Meanwhile, 72 percent of IT budgets are spent simply maintaining existing information systems, leaving only 28 percent for innovation. Clearly, the need exists to reduce the effort needed to maintain databases, while also reducing downtime and improving performance.

Current workloads can lead to errors on the part of DBAs—and those errors can be catastrophic for uptime, performance, and security. For example, failing to apply a patch or security update can create vulnerabilities—but failing to apply the patch correctly can actually weaken or eliminate security protections.

The errors seen in the news, where cloud databases are left unsecured by passwords or by encryption, and data was stolen by hackers, are almost always caused by human error.

Autonomous Database Goals

Autonomous Database Goals video thumbnail
Watch the video (0:37)

An autonomous database has three overarching goals:

  • Ensure maximum uptime and performance of the database
  • Ensure maximum security of the database, including patches and fixes
  • Eliminate manual, error-prone management tasks with automation
  • Allow DBAs to apply their expertise to higher level functions

By reducing the number of routine tasks performed by a DBA who is working with an autonomous database, the organization can refocus the DBA’s efforts to higher-level work that creates greater business value, such as data modeling, assisting programmers with data architecture and planning for future capacity, and planning for future capacity.

In some cases, an autonomous database can help the business save money by reducing the number of DBAs needed to manage its databases, or re-deploy them to a variety of tasks that are deemed more strategic.

Database Technology in the Cloud

Several fundamental technologies are necessary to implement autonomous databases, which can handle routine maintenance, scalability, security, database tuning, and other tasks without a human DBA. This can be especially beneficial to developers.

  • Grow or Shrink Resources: A cloud-based database server can grow or shrink its compute and memory resources instantly, as needed. A customer could, for example, go from 8 cores of database computing to 16 cores to scale up for end-of-quarter processing, then back down to the less expensive 8 cores. One could even shut down all the compute resources over the weekend to reduce costs, and then start them up again on Monday morning.
  • Database Patching: Many data break-ins happen through system vulnerabilities for which there was a security or vulnerability patch already available, but not yet applied. An autonomous database cloud will apply patches by rolling these patches against the servers in that cloud in a sequence designed to eliminate downtime for the business.
  • Machine Learning: An autonomous database integrates monitoring, management, and analytics capabilities that leverage machine learning and artificial intelligence techniques. The goal is to automate database tuning, prevent application outages, and harden security across the entire database application.

Techniques used by the autonomous database’s machine learning and artificial intelligence algorithms should include query optimization, automatic memory management, and automatic storage management to provide a completely self-tuning database.

Machine learning algorithms can help companies improve database security by analyzing reams of logged data and flagging outliers and anomalous patterns before intruders can do damage. Machine learning can also automatically and continuously patch, tune, back up, and upgrade the system without manual intervention, all while the system is running. This minimizes the possibility that either human error or malicious behavior will affect database operations or security.

Autonomous Data Warehouse in the Cloud

Autonomous database technology requires that enterprise databases be stored in the cloud, using a cloud service. Being autonomous in the cloud allows the organization to leverage cloud resources to more effectively deploy databases, manage database workloads, and secure the database. A database cloud service makes database capabilities available online, when and where those capabilities are needed.

Cloud database service advantages over legacy databases located in a customers’ data center include:

Fast Databases and data warehouses can be created in the cloud in mere minutes—instead of days or weeks.
Easy Cloud databases can be set up to be fully autonomous, and can be readily utilized by cloud or on-premises applications via application programming interfaces (APIs).
Elasticity Cloud databases can add new compute and/or storage resources independently, as required by business growth, without requiring downtime. Similarly, those resources can dynamically reduce (saving money) independently when no longer needed.
Secure Security in a cloud database locks out both internal and external bad actors through multi-layered controls and best practices implementations.
Compliance Cloud database access is monitored and recorded for audit and control at all times.

Choosing an Autonomous Database

These features should guide an organization’s selection process for autonomous database products.

Automation Database performs upgrades, installs patches, and tunes itself while running. Security updates are installed with no downtime window required.
High availability Service-level agreements (SLAs) should guarantee at least 99.995% reliability and availability to minimize costly planned and unplanned downtime to fewer than 30 minutes a year.
Self-securing The autonomous database should perform all software patches and updates by itself and ensure that the database is protected from unauthorized access, without disrupting operations or affecting availability.
Automated database tuning This ensures that the database consumes fewer compute, memory, and I/O resources, while delivering quick results to queries and data storage/retrieval operations.