性能

学习成本

兼容

MySql

MySQL更加灵活

 

 

postgreSQL

PostgreSQL

的社区支持是非常棒的,还有来自于独立厂商的商业支持。

可靠性是PostgreSQL的最高优先级。它以坚如磐石的品质和良好的工程化而闻名,支持高事务、任务关键型应用

PostgreSQL的文档非常精良,提供了大量免费的在线手册,还针对旧版本提供了归档的参考手册。

Sql语气类似Mysql

 

,数据类型较多,需要学习了解

PostgreSQL不支持嵌入式应用,依然坚守在传统的客户端/服务器架构上,和Mysql的学习成本更高,配置上相对于MySq更加复杂很多组喜欢使用PostgreSQL,因为它的可靠性好,在保护数据方面很擅长,而且是个社区项目,不会陷入厂商的牢笼之中


 

GreenPlum database

greenplum 基于postgresql关系型数据库,语言基本和mysql相似. 发现同等资源配比条件下,GreenPlum的性能远好于Mysql,有部分原因是得益于GreenPlum本身采用了更高效的算法,比如说做多表join时,采用的是hash join方式。

GP是在开源的PostgreSQL基础上开发的。GP不是开源的,是商业版的,PostgreSQL是开源的,支持海量数据存储,

线性扩展

Greenplum与其他分布式大数据产品如Yonghong Z-DataMart一样采用了通用的MPP并行处理架构,在MPP架构中增加节点就可以线性提高系统的存储容量和处理能力。Greenplum在扩展节点时操作简单,在很短时间内就能完成数据的重新分布。

 

GreenPlum:基于PostgreSQL的分布式关系型数据库

GreenPlum是一个底层是多台PostgreSQL分表分库的分布式数据库,它有如下特点

· 支持标准SQL,几乎所有PostgreSQL支持的SQL,greenplum都支持

· 支持ACID、分布式事务

· 支持上百台集群(这一点有点不好,hadoop可以万台)

只能在linux上安装使用,安装比较复杂,学习起来比较困难

 

 

 

PostgreSQL主要优势:
1. PostgreSQL完全免费,而且是BSD协议,如果你把PostgreSQL改一改,然后再拿去卖钱,也没有人管你,这一点很重要,这表明了PostgreSQL数据库不会被其它公司控制。oracle数据库不用说了,是商业数据库,不开放。而MySQL数据库虽然是开源的,但现在随着SUN被oracle公司收购,现在基本上被oracle公司控制,其实在SUN被收购之前,MySQL中最重要的InnoDB引擎也是被oracle公司控制的,而在MySQL中很多重要的数据都是放在InnoDB引擎中的,反正我们公司都是这样的。所以如果MySQL的市场范围与oracle数据库的市场范围冲突时,oracle公司必定会牺牲MySQL,这是毫无疑问的。 
2. 与PostgreSQl配合的开源软件很多,有很多分布式集群软件,如pgpool、pgcluster、slony、plploxy等等,很容易做读写分离、负载均衡、数据水平拆分等方案,而这在MySQL下则比较困难。
      3. PostgreSQL源代码写的很清晰,易读性比MySQL强太多了,怀疑MySQL的源代码被混淆过。所以很多公司都是基本PostgreSQL做二次开发的。
      4. PostgreSQL在很多方面都比MySQL强,如复杂SQL的执行、存储过程、触发器、索引。同时PostgreSQL是多进程的,而MySQL是线程的,虽然并发不高时,MySQL处理速度快,但当并发高的时候,对于现在多核的单台机器上,MySQL的总体处理性能不如PostgreSQL,原因是MySQL的线程无法充分利用CPU的能力。