PostgreSQL 是可扩展的,因为它的操作是目录驱动的。如果您熟悉标准关系型数据库系统,您就会知道它们将有关数据库、表、列等的信息存储在通常称为系统目录的地方。(有些系统称之为数据字典。)目录对用户来说看起来像其他任何表一样,但DBMS在其中存储其内部簿记信息。PostgreSQL 和标准关系型数据库系统之间的主要区别之一是,PostgreSQL 在其目录中存储了更多信息:不仅包括有关表和列的信息,还包括有关数据类型、函数、访问方法等的信息。这些表可以由用户修改,并且由于 PostgreSQL 基于这些表进行操作,这意味着 PostgreSQL 可以由用户扩展。相比之下,传统数据库系统只能通过更改源代码中的硬编码过程或加载由DBMS供应商。
此外,PostgreSQL 服务器可以通过动态加载将用户编写的代码合并到自身中。也就是说,用户可以指定一个实现新类型或函数的对象代码文件(例如,共享库),PostgreSQL 将根据需要加载它。用SQL编写的代码更易于添加到服务器中。这种“动态”修改其操作的能力使得 PostgreSQL 独具特色,适合于快速原型化新的应用程序和存储结构。
如果您在文档中看到任何不正确的内容,与您对特定功能的体验不符,或者需要进一步澄清,请使用 此表格 报告文档问题。