首页 > 开发 > 综合 > 正文

PostgreSQL数据库的特点

2024-07-21 02:13:47
字体:
来源:转载
供稿:网友


  postgresql 可以说是最富特色的自由数据库管理系统,甚至我们也可以说是最强大的自由软件数据库管理系统。 事实上, postgresql 的特性覆盖了 sql-2/sql-92 和 sql-3/sql-99,首先,它包括了可以说是目前世界上最丰富的数据类型的支持,其中有些数据类型可以说连商业数据库都不具备, 比如 ip 类型和几何类型等;其次,postgresql 是全功能的自由软件数据库,很长时间以来,postgresql 是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统。直到最近才有 inprise 的 interbase 以及 sap 等厂商将其原先专有软件开放为自由软件之后才打破了这个唯一。最后,postgresql拥有一支非常活跃的开发队伍,目前的提交人员已经超过三十人, 而且在许多黑客的努力下,postgresql 的质量日益提高,也从另外一个侧面上增加了人们使用 postgresql 的信心,毕竟数据库管理系统不能象桌面操作系统那样 一天宕一次还让人觉得挺满意 :-p。

  从技术角度来讲,postgresql 采用的是比较经典的 c/s (client/server)结构,也就是一个客户端对应一个服务器端守护进程的模式,这个守护进程分析客户端来的查询请求,生成规划树,进行数据检索并最终把结果格式化输出后返回给客户端。为了便于客户端的程序的编写,由数据库服务器提供了统一的客户端 c 接口。而不同的客户端接口都是源自这个 c 接口,比如 odbc,jdbc,python,perl ,tcl,c/c++,esql 等, 同时也要指出的是,postgresql 对接口的支持也是非常丰富的,几乎支持所有类型的数据库客户端接口。这一点也可以说是 postgresql 一大优点。

  说完优点,不能不说几句缺点,不能因为是自由软件而偏袒 postgresql,从 postgres 开始,postgresql 就经受了多次变化。

  首先,早期的 postgresql 继承了几乎所有 ingres, postgres, postgres95 的问题:过于学院味,因为首先它的目的是数据库研究,因此不论在稳定性, 性能还是使用方便方面,长期以来一直没有得到重视,直到 postgresql 项目开始以后,情况才越来越好,目前,postgresql 已经完全可以胜任任何中上规模范围内的应用范围的业务。目前有报道的生产数据库的大小已经有 tb 级的数据量,已经逼近 32 位计算的极限。不过学院味也给 postgresql 带来一个意想不到的好处:大概因为各大学的软硬件环境差异太大的缘故,它是目前支持平台最多的数据库管理系统的一种,所支持的平台多达十几种,包括不同的系统,不同的硬件体系。至今,它仍然保持着支持平台最多的数据库管理系统的称号。

  其次,postgresql 的确还欠缺一些比较高端的数据库管理系统需要的特性,比如联机热备份,数据库集群,更优良的管理工具和更加自动化的系统优化功能 等提高数据库性能的机制等。 但是,话说回来,postgresql 拥有极其强大的扩展能力,你可以很容易地扩展数据类型,内部函数,聚集,操作符等等,而且,别忘了,你拥有所有的源程序,理论上你可以做任何你可以做的事情。因此,很多缺点,在转瞬之间就会消失也是很正常的。

  总而言之,postgresql的特性已经完全可以满足绝大部分用户的需要,而且其质量和特性仍然在日新月异地进步着,所以, 我们有理由相信在不远的将来,postgresql 肯定能够成为一种优秀的,自由的,商业数据库的替代产品。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表