PostgreSQL 可扩展,因为它的操作以目录为驱动。如果您熟悉标准关系数据库系统,您知道它们将有关数据库、表格、列等信息存储在通常称为系统目录的内容中。(某些系统将其称为数据词典。)对于用户来说,目录与其他类似的表格类似,但DBMS在其中存储其内部簿记。 PostgreSQL 和标准关系数据库系统之间的一个主要区别是, PostgreSQL 在其目录中存储更多信息:不仅存储有关表格和列的信息,还存储有关数据类型、函数、访问方法等的信息。这些表格可以由用户修改,并且因为 PostgreSQL 依据这些表格进行操作,这意味着 PostgreSQL 可以由用户扩展。相比之下,传统数据库系统只能通过更改源代码中的硬编码过程或加载供应商专门编写的模块来扩展。DBMS供应商。
另外, PostgreSQL 服务器还可以通过动态加载将用户编写的代码纳入自身。也就是说,用户可以指定一个实现新类型或函数的对象代码文件(比如,共享库), PostgreSQL 将根据需要加载该文件。用SQL编写的代码甚至更容易添加到服务器中。这种“动态”修改其操作的能力使 PostgreSQL 非常适合快速制作新应用程序和存储结构的原型。