osdba 发表于 2011-04-15 19:23

PostgreSQL数据库介绍PPT

本帖最后由 osdba 于 2011-04-15 19:25 编辑

附件中是一篇介绍PostgreSQL数据库的PPT。,此篇文章也可见我的blog: http://blog.osdba.net/?post=48

    PostgreSQL数据库是一款非常优秀的开源数据库,有丰富的的功能,在功能上是全面超越MySQL的一个开源数据库,在性能上也不比MysQL差,同时PostgreSQL与Oracle一样,都是进程架构,能更好的发挥出多CPU的性能。
大家可能都知道MySQL数据库,但很多人可能不是很清楚PostgreSQL数据库,这其实是有历史原因的。在互联网兴起之初,由于MySQL的MyIsam引擎没有事务,性能很好,而那时的PostgreSQL还在7.X版本之前,虽然功能上强大,但由于有了事务,性能上比MySQL有一定的差距,另PostgreSQL之初是做为教学数据库推出的,有很多先进的功能,但易用性上不如MySQL,所以在互联网之初,很多小网站都是使用MySQL的,很多开源的建站源码如博客系统、cms系统都是基于MySQL了。所以直到现在MySQL的人气是比PostgreSQL旺的。特别在中国,MySQL的流行程度是远超PostgreSQL的,但在近几年,这个情况在慢慢改观,如日本,PostgreSQL的流行程度是超过MySQL的,日本的很多大公司都在使用PostgreSQL数据库。

    在PostgreSQL数据库进入8.X版本后,易用性得到了大大改善,PostgreSQL也不再是教学数据库了。目前PostgreSQL最新版本是9.0.3。

    PostgreSQL支持hash join,sort merge join,有极其先进的SQL优化器,轻松处理复杂的SQL,支持丰富的数据类型。PostgreSQL有丰富的统计信息,可以很方便的定位性能问题。

    基于PostgreSQL的高可用方案和集群方案也是比MySQL多的,如在PostgreSQL中逻辑复制的软件有slony、bucardo,slony是master-slave架构,bucardo还能支持双master架构,基本中间件的软件如pgpool,pgpool是类似mysql下的mysql proxy的软件,但功能上比mysql proxy强大很多,有连接池、数据复制、failover、数据shard的功能。通过改告数据库形成的同步多master架构有cybercluster 、pgcluster。做数据水平拆分的有plproxy。

   在数据仓库领域的基于PostgreSQL有greenplum和gridsql,这两个软件都实现的跨节点的join功能,而且对性能做了很多的优化。

   如果说MySQL是一把锋利的匕首,那么PostgreSQL就是瑞士军刀。MySQL功能简单,适应特定业务场景,而PostgreSQL数据库,功能强大,几乎能适应全部数据库场景。在很多公司,把MySQL当做存储使用,但没有听说那个公司把Oracle和PostgreSQL当做存储使用,原因是MySQL功能少,很难在数据库层面上实现复杂业务,所以很多公司把MySQL当存储使用后,更多的复杂业务功能都是由开发写代码来实现,这其实是大大增加了开发成本。

    PostgreSQL最大的缺点就是了解PostgreSQL数据库的人不是很多,特别是在中国。目前我们公司在PostgreSQL数据库运行的最成功的案例,就是数据仓库的实时数据中心系统,这个系统由PostgreSQL+cobar的组成(cobar是一个我们公司开发的类似pgpool的软件,主要做数据shard),这个系统目前已上线正式运行了。这个系统是取代原先的一个oracle数据库系统的。

    这篇PPT就是我在公司技术部做的一个分享。现在放到网上,以便更多的人员了解PostgreSQL数据库。

renxiao2003 发表于 2011-04-16 08:09

不错。是原创吗?

osdba 发表于 2011-04-16 09:18

回复 2# renxiao2003

是的,是我写的。

axlrose 发表于 2011-04-16 10:28

感谢楼主分享,pgsql的资料少,应用案例也不多

tanfeng3 发表于 2011-04-18 21:55

写得不错啊,多谢分享!

hhp00149 发表于 2011-04-27 16:01

受教了~~很全面的介绍

renxiao2003 发表于 2011-05-03 09:30

楼主为什么不出本书。合作如何?

yuyanchao2005 发表于 2011-05-10 21:54

赞,作为一个初学者,感觉现在来说postgreSQL入门确实比较容易

tony_trh 发表于 2011-05-13 13:53

为何不用现有成熟的连接池,而要自己开发一个呢?

kevinwqw 发表于 2011-05-16 12:26

顶一下,准备把现有的一个项目,迁移到PostgreSQL数据库
页: [1] 2 3 4 5 6
查看完整版本: PostgreSQL数据库介绍PPT