Mysql && POSTGRES && GREENPLUM(GP)

Mysql,postgres和greenplum

最近项目中使用的是GP,但是GP是基于postgres开发的,想看看postgres,现在又想想,这些sql语句都是类似mysql语句的,所以也就整理整理一些mysql,postgres和gp的异同,当然我只是将网上的东西撸一下,希望码一遍后能变成自己的.....

 

简要概念理解:

POSTGRESQL支持大部分SQL标准并且提供了许多其他现在特性:复杂查询.外键,触发器.视图.事务完善性.MVCC.同样,PostgreSQL可以用许多方法扩展,比如,通过增加新的数据类型.函数.操作符.聚集函数,索引方法.过程语言.并且,因为许可证的灵活,任何个人都可以以任何目的免费试用.修改,和分发postgresql.

GREENPLUM当前试用的OLTP程序中,用户访问一个中心数据库,如果采用SMP系统结构,他的效率比采用MPP结构要快得多.而MPP系统在决策支持和数据挖掘方面显示了优势,可以这样说,如果操作相互之间没有什么关系,处理单元之间需要进行的通信比较少,那采用MPP系统就要好.相反就不合适了....

 

 性能学习成本兼容
mysqlmysql更加灵活,用户量广.较低 
postgresSQLpostgreSQL的社区非常活跃,有来自于独立厂商的商业支持.以坚如磐石的品质和良好的工程化而闻名,支持高事务.任务关键型应用POSTGRESQL的文档维护非常精良,社区非常活跃,支持海量数据存储.sql语句类似mysq语句;数据类型较多.需要学习了解.postgres不支持嵌入式应用,依然坚守在传统的客户端/服务端架构上,和mysql相比,学习成本更高,配置上更复杂,很多组喜欢使用postgres,因为他的可靠性好,在保护数据方面很擅长,而且是个社区项目,不会陷入厂商的牢笼之中.
GreenPlumgreenplum基于postgresql关系型数据库,语言基本和mysql相似,发现同等资源配比条件下,GP的性能远好于Mysql.有部分原因得益于GP本身采用了更高效的算法,比如说做多表JOIN时,采用hash join方式.GP 是在开源的POSTGRESSQL基础上开源.GP不是开源的,是商业版本的.线性扩散是GP的一大特点.GP与其他分布式大数据产品如Yonghong Z-DataMart一样采用了通用的MPP并行处理架构,在MPP架构中增加节点就可以线性提高系统的存储容量和处理能力.GP在扩展节点时操作简单,在很短时间内就能完成数据的重新分布.GP:基于postgresql开发的分布式关系型数据库;GP是一个底层是多台postgressql分表分库的分布式数据库,特点有:支持标准SQL,几乎所有postgresSQL支持的SQL,GP都支持;支持ACID.分布式事务;支持上百台集群(数量是少于hadoop的上万台);只能在linux上安装使用,安装比较复杂,学习成本高.

 

Mysql优点:

  • 多语言支持: mysql为c.c++,py,java.perl,php,ruby等多种编程语言提供API,访问和使用方便.
  • 可以移植性好.mysql是跨平台的
  • 免费开源(目前是)
  • 高效: mysql的核心程序采用完全的多线程编程.
  • 支持大量数据查询和存储:mysql可以承受大量的并发访问.

POSTGRESQL优点:

  • 完全免费;基于BSD协议,开源社区活跃.oracle本身就是收费的;mysql重要的innoDB引擎被Oracle控制,隶属于Oracle公司的产品,收不收费就是Oracle公司的一句话.
  • POSTGRES配合的开源软件多.很多分布式集群软件,入pgpool.pgcluster.slony.plploxy等等,很容易做读写分离,负载均衡.数据水平拆分等方案,而在mysql上很难实现.
  • POSTGRES代码维护清晰.易读性由于mysql.基于postgres做二次开发方便.
  • POSTGRESQL在很多方面比mysql强..如复杂的SQL执行.存储过程,触发器,索引.同时postgres是多进程的,而mysql是单线程的,并发不高时,mysql处理速度较快,但高并发执行时,postgress性能明显碾压mysql.对于现在多核的单台机器上,msyql的线程无法充分利用cpu的能力.

 

GP优点

  • 数据存储 采取MPP架构的数据库系统能对海量数据进行管理.GP支持50PB(1PB=1000TB)级海量数据的存储和处理,GP将来自不同源系统的,不同部门.不同平台的数据集成到数据库中集中存放,并且存放详尽历史的数据轨迹,业务用户不用再面对一个又一个信息孤岛,也不再困惑于不同版本数据导致的偏差,同时对于IT人员也降低管理维护工作的复杂度.
  • 高并发  利用强大并行处理能力提供并发支持.提供资源管理功能来管理数据库资源,利用资源队列管理可实现用户组的进行资源分配,入seesion同时激活数.最大资源值等.通过资源管理功能,可以按用户级别进行资源分配和管理用户SQL查询优先级别,同时也防止低质量SQL(如没有条件的多表join等)对系统资源的消耗.
  • 线性扩展 GP采用MPP架构,在MPP架构中增加节点可以线性提高系统的存储容量和处理能力.GP扩展节点时操作简单,在很短时间内就能完成数据的重新分布.GP线性扩展支持为数据分析系统将来的扩展给予了技术上的保障,用户可根据实施需要进行容量和性能的扩展.
  • 高性价比  GP数据库软件系统节点基于业界各种开放式硬件平台,如sun/hp/dell等厂商的pc server都能达到很高的性能.GP没TB的投资是前者的1/5甚至更低.同样GP产品的维护成本相比同类厂商也低很多.
  • 反应速度  GP通过准实时.实时的数据加载方式,实现数据仓库的实时更新,进而实现动态数据仓库(ADW).基于动态数据仓库,业务用户能对当前业务数据进行BI实时分析--"JUST IN TIME BI",能够让企业敏锐感知市场的变化,加快决策支持反应速度.
  • 高可用性  GP是高可用的系统,GP已有案例中实现了96台机器的集群MPP环境.除了硬件级的Raid技术外,GP还提供数据库层Mirror机制保护,即每个节点数据在另外的节点中同步镜像,单个节点的错误不影响整个系统的使用..对于主节点,GP提供master/standby机制进行主节点发生错误时,可以切换到stand by节点继续服务.
  • 系统易用  GP是基于postgresql之上开发,几乎所有的postgresql客户端工具及postgresql应用都能运行在gp平台上.

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值