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).
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.
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||
||Examples of Unstructured Information Stored in Databases||
|Software That Stores and Accesses Information Stored in Databases||
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.
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:
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.
An autonomous database has three overarching goals:
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.
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.
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 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.|
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.|