关系型数据库 50 年成功的秘诀:创新、与时俱进

当收到Oracle Connect给我推送的这篇文章时,我即决定第一时间与大家分享。这篇文章表达了两个重要的观点,我深以为然。一是关系型数据模型一直是作为组织、管理、分析、分发和共享关键业务数据的首选方式,并且经过了时间的考验;第二是Oracle数据库一直是与时俱进的,从Exadata,自治数据库到AI,向量数据库,Oracle创新的脚步从不曾停歇。如果你浏览DB-Engines网站,你可以看到在数据库流行度排行榜的前5位中,有4个都是关系型数据库,这其中就包括Oracle。当然,Oracle数据库还支持JSON,Graph,地理空间,图形图像,区块链,内存列式,向量等多种数据类型,多模式,功能全面的融合数据库使得Oracle非常适合于构建用户的企业级数据平台,赋能企业数字化转型。关系模型被广泛认为是20世纪伟大的技术成就之一,其许多术语源自数学的集合论和一阶谓词逻辑,有严谨的数学理论基础。在关系模型方面做出开创性贡献的Edgar F. Codd,不仅是一位计算机科学家,更是一位数学家。Codd使数据库管理成为一门科学,并凭借其在关系模型上的突出贡献获得了英国计算机学会院士和计算机协会图灵奖。谨以此文向Edgar F. Codd致敬。关系型数据库已经达到了一个黄金里程碑——自 IBM 基于 EF Codd 的开创性论文开发第一个原型关系型数据库,已经过去了 50 年。随后,Oracle 于1979 年率先推出了商业关系型数据库管理系统 (DBMS),即 Oracle 版本 2。这些都是现代数据管理道路上的历史性步骤。

自企业计算早期以来,发生了很多变化。当时,系统内存和磁盘存储分别以千字节和兆字节为单位。如今,一些大型组织拥有包含 EB 级(即数万亿兆字节)的数据资产。

然而,有一点没有改变,那就是已有 50 年历史的关系型数据库模型一直是作为组织、管理、分析、分发和共享关键业务数据的首选方式。事实上,即使其他数据库技术(包括面向对象数据库、图数据库和文档数据库)已经进入市场,关系型数据库仍然是非常流行的数据库管理系统。

与时俱进

关系型数据库为何长盛不衰?在首席信息官和首席技术官的眼中,其技术架构中战略平台的下一步是什么?

关系型数据库几十年来取得成功的因素包括易于理解的表、列和行模型;使用 SQL、Java 和其他语言进行基于标准的编程;支持ACID(原子性、一致性、隔离性、持久性)事务,保证数据一致性;以及支持在线事务处理(OLTP) 和业务分析的能力。

然而,我相信关系型数据库长寿的真正秘密在于它能够不断发展,以跟上云中和本地的数据、应用程序、工作负载和部署方式的不断变化。自 Oracle V2 发布以来,Oracle 数据库中已内置了数百项新功能。包括客户端/服务器支持 (1985)、真正应用集群(2001)、数据库云服务 (2013)、Oracle 自治数据库 (2018) 和 AI 向量搜索(2023)。

虽然结构化数据自 20 世纪 70 年代以来一直是常态,并且仍占据着大部分极有价值的业务数据(例如金融交易和客户记录),但 Oracle 数据库和其他类似的关系数据库已经演变成可以容纳对象、空间数据、文档、图和其他非结构化数据类型的多模式数据库。

多语言、云原生开发人员

这是思考关系型数据库历史的另一种方式:50 年大致相当于两代人。因此,您可能会问,我们祖父使用的数据库技术是否会继续吸引新一代用户、管理员、数据科学家和开发人员?

鉴于关系型数据库经过验证的适应性,我认为它在未来许多年里仍会成为领先的数据管理平台。Oracle 近期在 Oracle Database 23c 中引入了对向量数据和向量搜索的原生支持,以及为其 APEX 和 SQL Developer 工具提供的生成式 AI 功能。

还有其他一些新功能,例如JSON 关系二元性视图,它将关系表中的数据展现为 JSON 文档,反之亦然;以及对检索增强生成 (RAG) 的支持,它允许大语言模型使用企业自身的数据来提高响应准确性。我认为所有这些新功能可以为客户和开发团队提供面向未来的数据库。这种对前沿研究和开发的投资对于关系模型,尤其是 Oracle 数据库来说是个好兆头。

不过较大的问题是,新晋开发人员在为移动、人工智能、金融科技和其他场景构建新应用程序时是否会采用关系型数据库。

几年前,当我在Oracle 工作时,我们有时将这一新兴群体称为“多语言、云原生”开发人员。新一代技术人员使用多种编程语言和工具(包括云数据库)来构建和部署应用程序。在Oracle 开发者网站,充满了这种工作方式的语言、SDK、文档和代码示例。

所有这些都有助于解释为什么 Oracle 采取了史无前例的举措,在 2023 年 9 月(在Oracle CloudWorld 上正式发布 Database 23c 之前整整六个月)就推出了 Oracle Database
23c 免费开发者版本。值得注意的是,这是 Oracle 首次在全面发布之前向开发人员社区发布其数据库新版本。

Oracle 产品管理高级总监 Gerald Venzl 在一篇博客文章中解释道:“开发人员现在可以利用创新的 23c 功能,在构建新应用程序和增强现有应用程序方面占据先机,这些功能可以简化现代数据驱动应用程序的开发。”

在 Database
23c 中,Oracle 引入了“声明意图”的理念,与手动编码相比,这是一种更快、更好、更简单的应用程序构建方法。支持这种自动化的新技术包括自然语言命令、AI 向量搜索、Oracle 的低代码APEX 开发框架和 JSON 关系二元性视图。Oracle表示,这种革命性的方法代表了“数据和应用程序开发的未来”。

多云的未来

自从早期 Oracle
V2 在 DEC PDP-11 小型机上运行以来,关系型数据库已经取得了长足的进步。如今,Oracle 数据库已成为全球数十万企业的记录系统。

Oracle 数据库在私有、公共、混合和多云环境中的现代计算机硬件上运行,并提供高级部署选项,为客户提供更多选择和灵活性。例如,Oracle Database@Azure 服务现已在 Microsoft Azure 美国东部区域推出。Oracle 将运营和管理 Oracle Exadata 数据库服务,这是计划在 Azure 数据中心的Oracle 云基础设施(OCI)上运行的多项Oracle 数据库服务中的第一个。

关系型数据库已经从 20世纪 70 年代的基本查询和简单连接发展成为 2020 年代支持人工智能应用程序开发的安全、高性能平台。我们可以展开想象,再过 50 年关系模型的未来会怎样。

编辑与翻译:萧宇