优势何在

壹 、 PostgreSQL 的平稳极强, Innodb
等引擎在崩溃、断电之类的横祸场景下抗打击能力有了长足升高,可是无数 MySQL
用户都际遇过Server级的数据库丢失的气象——mysql系统库是MyISAM的,比较之下,PG数据库这上边要好一些。
贰 、任何系统都有它的性格极限,在高并发读写,负载逼近极限下,PG的质量指标仍能保持双曲线甚至对数曲线,到终点然后不再下落,而
MySQL
明显现身三个波峰后下跌(5.5版本之后,在合营社级版本中有个插件能够革新广大,不过需求付费)。
叁 、PG 多年来在 GIS
领域处于优势地位,因为它有加上的几何类型,实际上不止几何类型,PG有大批量字典、数组、bitmap
等数据类型,比较之下mysql就差很多,instagram正是因为PG的空中数据库扩大POSTGIS远远强于MYSQL的my
spatial而接纳PGSQL的。

www.27111.com,④ 、PG 的“无锁定”本性格外杰出,甚至包罗 vacuum
那样的整治数据空间的操作,那几个和PGSQL的MVCC完毕有关系。
伍 、PG
的能够动用函数和规格索引,那使得PG数据库的调优十分灵活,mysql就没有那几个意义,条件索引在web应用中很主要。
六 、PG有极致大胆的 SQL 编制程序能力(9.x
图灵完备,帮忙递归!),有卓殊丰盛的计算函数和总括语法扶助,比如分析函数(ORACLE的叫法,PG里叫window函数),还足以用两种语言来写存款和储蓄进程,对于CR-V的支持也很好。那或多或少上MYSQL就差的很远,很多剖析效用都不补助,腾讯之中数据存款和储蓄重假使MYSQL,然而多少解析主借使HADOOP+PGSQL。
7、PG 的有种种集群架构能够选取,plproxy
能够支撑语句级的镜像或分片,slony 能够展开字段级的联合设置,standby
能够营造WAL文件级或流式的读写分离集群,同步频率和集群策略调整惠及,操作相当不难。
八 、一般关系型数据库的字符串有限制长度8k左右,无限长 TEXT
类型的成效受限,只好当作外部大数量访问。而 PG 的 TEXT
类型能够一贯访问,SQL语法内置正则表明式,能够索引,还足以全文字笔迹检验索,或应用xml
xpath。用PG的话,文档数据库都足以省了。
九,对于WEB应用来说,复制的特点很重要,mysql到目前也是异步复制,pgsql可以成功同步,异步,半协同复制。还有mysql的一路是基于binlog复制,类似oracle
golden
gate,是依据stream的复制,做到一起很难堪,那种方法尤其吻合异地复制,pgsql的复制基于wal,能够形成一起复制。同时,pgsql还提供stream复制。
十,pgsql对于numa架构的扶助比mysql强一些,比MYSQL对于读的质量更好有的,pgsql提交能够完全异步,而mysql的内部存款和储蓄器表不够实用(因为表锁的来头)

末尾说一下笔者感到 PG 不如 MySQL 的地点。
先是,MySQL有一些实用的运转协助,如 slow-query.log
,这么些pg肯定可以定制出来,不过要是得以安排利用就更好了。
其次是mysql的innodb引擎,能够丰硕优化利用系统具备内部存款和储蓄器,超大内部存款和储蓄器下PG对内部存款和储蓄器使用的不那么固然,
其三点,MySQL的复制可以用一类别从库,可是在9.2此前,PGSQL不能用从库带从库。
第5点,从测试结果上看,mysql
5.5的性质提高十分的大,单机质量强于pgsql,5.6相应会强更多.
第六点,对于web应用来说,mysql 5.6 的内置MC
API作用很好用,PGSQL差不离。

除此以外一些:
pgsql和mysql都是私下有生意店铺,而且都不是3个同盟社。超过四分之二开发者,都以拿薪金的。
说mysql的推行进度比pgsql快很多是畸形的,速度接近,而且许多时候取决于你的配置。
对此仓库储存进程,函数,视图之类的功效,以往多少个数据库都得以支撑了。
别的二十四线程架构和多进度架构之间一直不相对的高低,oracle在unix上是多进度架构,在windows上是八线程架构。
无数pg应用也是24/7的运用,比如skype. 近期多少个版本VACUUM基本不影响PGSQL
运行,8.0自此的PGSQL不需求cygwin就足以在windows上运营。
至于说对于事情的支撑,mysql和pgsql都并未问题。

原来的小说地址:http://www.zhihu.com/question/20010554 

PostgreSQL运转在CentOS时必要修改的操作系统配置

初识PostgreSQL

发表评论

电子邮件地址不会被公开。 必填项已用*标注