自治数据库是什么?

自治数据库是一个云端数据库,它使用机器学习消除了与数据库调优、安全性、备份、更新相关的人工操作,以及传统上由数据库管理员 (DBA) 执行的其他常规管理任务。

Oracle 自治数据库: 工作原理

Oracle 自治数据库: 工作原理视频缩略图
观看视频 (14:32)

与传统数据库技术相比,自治数据库云具有更高的可用性和安全性且运营成本更低。

自治数据库相关的其他行业术语有自治驾驶数据库、自治修复和自治安全。

自治驾驶表示数据库可以自动供应或部署数据库,且能够对数据库执行监视、备份、恢复和故障排除。 这还意味着它可以在不停机的情况下即时增加和减少计算或存储。

自治安全指基于 AI 的自适应性威胁检测和修复,以及自动数据加密。 自治安全数据库还可以自动应用安全补丁。

自治修复数据库通过自动保护防止停机。 自治修复数据库实现了高达 99.995% 的可用性,每月总停机(包括计划维护)时间少于 2.5 分钟。

企业数据库的使用

企业数据库的使用视频缩略图
观看视频 (0:58)

数据库存储着重要的业务信息,对现代组织的有效运作至关重要。 如果数据库不安全,企业可能面临被入侵的风险。 如果数据库运行缓慢或不可用,员工生产力会受到影响,客户可能会感到沮丧。

存储在数据库管理系统中的信息可以是高度结构化的,也可以是非结构化的。 数据可以由客户和员工直接访问,也可以通过其他企业软件、网站或移动应用间接访问。

存储在数据库中的结构化信息示例
  • 会计记录
  • 客户信息
  • 员工信息
  • 维修记录
  • 网络流量日志
  • 定价信息
  • 产品库存
  • 销售交易
  • 社会媒体互动
  • 供应链信息
存储在数据库中的非结构化信息示例
  • 数字图像、声音和视频文件
  • 编程源码
  • 电子表格
  • 网页
  • 文字处理文档
对存储在数据库中的信息进行存储和访问的软件
  • 会计
  • 由客户开发的定制企业软件
  • 客户关系管理 (CRM)
  • 数据分析和商务智能 (BI)
  • 企业资源计划 (ERP)
  • 人力资源 (HR) / 人力资本管理 (HCM)
  • 产品生命周期管理 (PLM)
  • 安全性和日志管理
  • 供应链管理 (SCM)
  • 网络服务器

业务应用可以将新记录添加到现有数据库中,或使用数据库信息创建报告、分析趋势或发现异常。

由于数据库的复杂性,其规模可以增长到 TB 级,而 DBA 通常难以通过管理、保护和调优来获得有色的性能。

数据库管理员的角色

数据库管理员的角色视频缩略图
观看视频 (0:49)

在传统上,企业数据库数据库管理员 (DBA) 来管理,包括创建、修改和调优数据库,以便在将新数据存储到数据库中以及检索这些数据时能够确保高性能。

通常,从数据库中检索数据的过程是通过一个应用的复杂查询来启动的。 运行查询会消耗大量计算和磁盘访问资源。 查询结果可以包含很多数据库记录,这些记录必须被发送回查询应用。

在 DBA 的工作中,一个劳动密集型的部分是组织数据库,以便频繁执行的查询能尽快执行,同时消耗更少的资源。 这就需要研究数据库上运行的查询类型,并识别模式以进行改进调优。 性能调优是数据库维护中一个持续进行的部分。 与之相关的任务是数据规范化,这需要重构数据以减少冗余和提高数据完整性。

DBA 还负责其他任务,其中许多必须每天或定期在所有企业数据库上执行,通常可能有数十或数百个。 这些任务包括:

  • 在发生灾难或数据丢失时备份数据库
  • 测试备份以确保数据库可以恢复
  • 在事故发生时恢复丢失的数据
  • 检查安全日志以确保数据库没有被不适当地访问
  • 监视数据库软件的供应商信息源,以获取安全警报、补丁和升级
  • 根据需要安排和应用补丁和升级
  • 调整数据库安全设置以应对威胁
  • 授权新用户和应用来访问数据库
  • 监视数据库服务器的处理器和内存利用
  • 创建和管理模式 — 即数据分类
  • 协助软件开发人员解决数据库问题
  • 管理提取、转换和加载 (ETL) 工具
  • 监视数据库服务器的磁盘利用情况
  • 如果有必要,增加或迁移存储
  • 规划数据库未来的容量需求
  • 针对错误和其他数据库问题进行故障排除
  • 与业务用户和开发人员一起为新应用或模块定义数据模型

DBA 已不堪重负,这可能导致人为错误

据估计,目前大约 40% 的 DBA 每天要管理 50 个或更多的数据库。 同时,78% 的 DBA 表示在他们的职业生涯中会经历某些类型的计划外停机,而他们大多难以协调多种管理和备份工具。

同时,72% 的 IT 预算仅用于维护现有的信息系统,只剩 28% 用于创新。 显然,需要减少维护数据库的工作,同时还要缩短停机时间并提高性能。

繁重的工作可能导致 DBA 出错 — 而这些错误在正常运行时间、性能和安全性方面可能是灾难性的。 例如,不应用补丁或安全更新可能会导致漏洞 — 错误地应用补丁实际上会削弱或消除安全保护。

在新闻中报道过的错误几乎都是由人为错误造成的,包括云数据库缺少密码或加密的保护,因此数据被黑客窃取。

自治数据库的目标

自治数据库的目标视频缩略图
观看视频 (0:37)

自治数据库有三个首要目标:

  • 确保数据库的超长正常运行时间和出色的性能
  • 确保数据库(包括补丁和修复程序)的高安全性
  • 通过自动化来消除容易出错的人工管理任务
  • 让 DBA 能够将他们的专业知识应用于更高级别的职能

使用自治数据库可以减少 DBA 执行的常规任务,而组织可以将 DBA 的工作重点转移到更高级的工作上,比如数据建模,帮助程序员建立数据架构和规划未来容量,从而创造更大的业务价值。

在一些情况下,自治数据库可以减少管理数据库所需的 DBA 人数,或将 DBA 重新部署到被认为更具战略性的任务中,从而帮助企业节省资金。

云端数据库技术

实施自治数据库需要一些基础技术,这些技术可以处理日常维护、可扩展性、安全性、数据库调优和其他任务,而无需 DBA 的干预。

  • 增加或减少资源: 基于云的数据库服务器可以根据需要立即增加或减少其计算和内存资源。 例如,在季度末处理期间,客户可以将用于数据库计算的内核从 8 个扩展到 16 个,之后还可以再恢复到费用更低的 8 内核。 您甚至可以在周末关闭所有的计算资源来降低成本,然后在周一早上重新启动。
  • 数据库打补丁: 很多数据入侵都是由于系统漏洞造成的,而这些漏洞已经有了可用的安全或漏洞补丁,但却未被应用到系统中。 自治数据库云将按顺序以滚动打补丁的方式将补丁应用到云端服务器中,以避免业务中断。
  • 机器学习: 自治数据库集成了基于机器学习和人工智能技术的监视、管理和分析功能。 其目标是实现数据库调优自动化,防止应用中断,并加强整个数据库应用的安全性。

自治数据库和人工智能算法所使用的技术应包括查询优化、自动内存管理和自动存储管理,以提供一个完全自主调优的数据库。

机器学习算法通过分析大量的记录数据,并标记异常值和异常模式,帮助企业提高数据库安全性,防止入侵者造成破坏。 机器学习还可以在系统运行的同时自动、连续地对系统进行打补丁、调整、备份和升级,而无需人工干预。 这将尽可能减少发生人为错误或恶意行为的可能性,避免影响数据库运作或安全性。

云中的自治数据仓库

自治数据库技术要求企业数据库采用云服务来存储到云中。 在云中实现自治,组织就可以利用云资源更有效地部署数据库、管理数据库负载和保护数据库。 A 数据库云服务实现了可随时随处按需使用的在线数据库功能。

与位于客户数据中心内的传统数据库相比,云数据库服务的优势包括:

快速 只要几分钟(而不是几天或几周)就可以在云中创建数据库和数据仓库。
轻松 可将云端数据库设置为完全自治,并且可随时通过应用编程接口 (API) 被云或本地部署应用使用。
弹性 根据业务增长的需要,云数据库可以独立添加新的计算和/或存储资源,而不需要停机。 当不再需要这些资源时,还可以动态、独立地减少资源,以节省资金。
安全 云端数据库安全功能通过多层控制和实施优秀实践来锁定内部和外部的恶意访问。
合规 对云端数据库的访问会得到监视和记录,以便随时进行审计和控制。

选择自治数据库

这些特性可在企业选择自治数据库产品的过程中提供指导。

自动化 数据库在执行升级、打补丁和调优的同时保持运行。 无需停机即可安装安全补丁。
高可用性 服务水平协议 (SLA) 应保证至少 99.995% 的可靠性和可用性,将每年的计划停机和计划外停机控制在 30 分钟内。
自治安全 自治数据库应自行安装所有软件补丁和更新,并保护数据库免遭未经授权的访问,且不会中断操作或影响可用性。
自动数据库调优 这可以确保数据库消耗更少的计算、内存和 I/O 资源,同时向查询和数据存储/检索操作快速交付结果。