2024年9月26日: PostgreSQL 17 发布!
支持版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:devel
不支持版本:11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2

36.1. 可扩展性工作原理 #

PostgreSQL 是可扩展的,因为它的操作是目录驱动的。如果您熟悉标准关系型数据库系统,您就会知道它们将有关数据库、表、列等的信息存储在通常称为系统目录的地方。(有些系统称之为数据字典。)目录对用户来说看起来像其他任何表一样,但DBMS在其中存储其内部簿记信息。PostgreSQL 和标准关系型数据库系统之间的主要区别之一是,PostgreSQL 在其目录中存储了更多信息:不仅包括有关表和列的信息,还包括有关数据类型、函数、访问方法等的信息。这些表可以由用户修改,并且由于 PostgreSQL 基于这些表进行操作,这意味着 PostgreSQL 可以由用户扩展。相比之下,传统数据库系统只能通过更改源代码中的硬编码过程或加载由DBMS供应商。

此外,PostgreSQL 服务器可以通过动态加载将用户编写的代码合并到自身中。也就是说,用户可以指定一个实现新类型或函数的对象代码文件(例如,共享库),PostgreSQL 将根据需要加载它。用SQL编写的代码更易于添加到服务器中。这种“动态”修改其操作的能力使得 PostgreSQL 独具特色,适合于快速原型化新的应用程序和存储结构。

提交更正

如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用 此表格 报告文档问题。