Java基础、中级、高级、架构面试资料

PostgreSQL和Greenplum两种数据库的比对

SQL herman 5751浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog2,发送下载链接帮助你免费下载!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云

       PostgreSQL和Greenplum这两种数据库在各社区中都没有MySQL火。但是也都有部分公司在使用,其中的一个原因就是,工信部要求的国企使用的数据库不能太单一,即不能太依靠Oracle、MySQL。最近在项目中使用到了PostgreSQL,之前在圆通也使用过Greenplum数据库,同时也创建了一个关于Greenplum数据库的QQ群:9285057。

 PostgreSQL数据库

介绍:PostgreSQL是一种运行在Unix和Linux操作系统(在NT平台借助Cygnus也可以运行)平台上的免费的开放源码的关系数据库。最早是由美国加州大学伯克利分校开发的,开始只是作为一个演示系统发表,但是随着时间的推移,逐步分发,得到很多实际的应用,才逐步流行起来。
网址https://www.postgresql.org/
特点:1.省钱,可以运行在Unix和Lunux操作系统上,Windows Server 什么时候也能高风亮节回。
   2.支持SQL。
   3.有丰富的数据类型。许多数据类型是一些商业数据库都没有提供的。
   4.面向对象,它包含了一些面向对象的技术,如继承和类。
   5.支持大数据,它不同于一般的桌面数据库,能够支持几乎不受限制大小的数据库,而且性能稳定。
    描述:我想这个特点也是觉大多数据考虑使用PostgreSQL数据库的原因之一,当然这种场景应该是有要求的,比如一些并发不高,但涉及统计分析类业务的场景相对比较适合。
   6.方便集成web,提供一些接口方便 PHP,Perl等语言操作数据库。
    描述:重点来了,Npgsql动态库就是为了更好的支持C#的一个强大的类库(后面会有描述)。
   7.事务处理。相对一些其他免费数据库如MySQL,他提供了事务处理,可以满足一些商业领域的数据需要。
    描述:事务对数据库来真的是太重要了,所以PostgreSQL不会遗忘。
   8.PostgreSQL运行速度明显低于MySQL。因为MySQL使用了线程,而PostgreSQL使用的是进程。在不同线程之间的环境转换和访问公用的存储区域显然要比在不同的进程之间要快得多。
   9.PostgreSQL的Sql语法相对更加干净和干练(这个特点的总结来自于公司PostgreSQL专家的现场采访)

Greenplum数据库

介绍:Greenplum是一家总部位于美国加利福尼亚州,为全球大型企业用户提供新型企业级数据仓库(EDW)、企业级数据云(EDC)和商务智能(BI)提供解决方案和咨询服务
网址http://www.oschina.net/p/greenplum(开源社区介绍及引导页)
特点:1.大规模并行处理架构
   2.高性能加载,使用 MPP 技术,提供 Petabyte 级别数据量的加载性能
   3.大数据工作流查询优化
   4.多态数据存储和执行
   5.基于Apache MADLib 的高级机器学习功能
应用场景:大数据量的统计分析类业务(这个也是目前统计分析业务结合考量后所出的选择)。

PostgreSQL和Greenplum的区别

GP是在开源的PostgreSQL基础上开发的。GP不是开源的,是商业版的,PostgreSQL是开源的。

数据存储

当今是个数据不断膨胀的时代,采取MPP架构的数据库系统才能对海量数据进行管理。
Greenplum支持50PB(1PB=1000TB)级海量数据的存储和处理,Greenplum将来自不同源系统的、不同部门、不同平台的数据集成到数据库中集中存放,并且存放详尽历史的数据轨迹,业务用户不用再面对一个又一个信息孤岛,也不再困惑于不同版本数据导致的偏差,同时对于IT人员也降低管理维护工作的复杂度。

高并发方面的区别

随着商业智能在企业内的快速发展,BI 用户对信息分析平台的访问频率和查询复杂度也快速提升,因此要求相应的数据库系统对高并发查询进行支持。Greenplum利用强大并行处理能力提供并发支持。
Greenplum提供资源管理功能(workload managemnt)来管理数据库资源,利用资源队列管理可实现按用户组的进行资源分配,如Session同时激活数、最大资源值等。通过资源管理功能,可以按用户级别进行资源分配和管理用户SQL查询优先级别,同时也能防止低质量SQL(如没有条件的多表join等)对系统资源的消耗。

线性扩展

Greenplum与其他分布式大数据产品如Yonghong Z-DataMart一样采用了通用的MPP并行处理架构,在MPP架构中增加节点就可以线性提高系统的存储容量和处理能力。Greenplum在扩展节点时操作简单,在很短时间内就能完成数据的重新分布。
Greenplum线性扩展支持为数据分析系统将来的拓展给予了技术上的保障,用户可根据实施需要进行容量和性能的扩展。

高性价比

Greenplum数据库软件系统节点基于业界各种开放式硬件平台,如SUN/HP/DELL等厂商的PC Server等,在普通的x86 Server上就能达到很高的性能,因此性价比很高,相比于其他封闭式数据仓库专用系统,Greenplum每TB的投资是前者的1/5甚至更低。同样,Greenplum产品的维护成本相比同类厂商也低许多。

反应速度

我们面对的是一个瞬息变化的市场,谁能首先感知到市场的需求和变化,就能在竞争中先行一步,获得主动权,在竞争中立于不败之地。
Greenplum通过准实时、实时的数据加载方式,实现数据仓库的实时更新,进而实现动态数据仓库(ADW)。基于动态数据仓库,业务用户能对当前业务数据进行BI实时分析-“Just In Time BI”,能够让企业敏锐感知市场的变化,加快决策支持反应速度。

高可用性

Greenplum是高可用的系统,在已有案例中最多使用了96台机器的集群MPP环境。除了硬件级的Raid技术外,Greenplum还提供数据库层Mirror机制保护,即每个节点数据在另外的节点中同步镜像,单个节点的错误不影响整个系统的使用。
对于主节点,Greenplum提供Master/Stand by机制进行主节点容错,当主节点发生错误时,可以切换到Stand by节点继续服务。

系统易用

Greenplum产品是基于流行的PostgreSQL之上开发,几乎所有的PostgreSQL客户端工具及PostgreSQL应用都能运行在Greenplum平台上,在Internet上有着丰富的PostgreSQL资源供用户参考。

版权声明:本文为博主原创文章,未经博主允许不得转载。

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

本文原文出处:业余草: » PostgreSQL和Greenplum两种数据库的比对