盘点 Greenplum 数据库的十大特点

共 4690字,需浏览 10分钟

 ·

2022-01-09 22:01

导读:本文简单介绍Greenplum具备的特性。


作者:王春波
来源:大数据DT(ID:hzdashuju)





01 开放源代码


Greenplum数据库于2015年由Pivotal公司开源,遵循Apache Licence 2.0协议,官方网站为:


http://greenplum.org


代码托管在GitHub上,链接为:


https://github.com/greenplum-db/gpdb


开放源码一方面可以为数据库用户和开发人员提供Greenplum数据库源码级的实现参考,另一方面可以吸引更多的数据库开发者参与到Greenplum社区维护中。



02 高扩展性


Greenplum数据库采用大规模无共享架构,将多台服务器组装成强大的计算平台,实现高效的海量并行运算。Greenplum数据库可以支持1000个以上的集群,管理的数据规模从TB级到PB级,可以满足多数企业的数据处理需求。



03 高查询性能


Greenplum的高性能不仅来自高效的并行处理框架,还有查询引擎的优化。Greenplum数据库除了支持基于PostgreSQL的查询优化之外,还专门开发了一个新的查询优化器ORCA。


ORCA是一款自顶向下的基于Cascades框架的查询优化器,目前已经成为企业版Greenplum数据库的默认优化器。相比基于PostgreSQL的查询优化器,ORCA查询优化器能使部分查询的性能提升10~1000倍。



04 高可用


Greenplum提供多级容错机制,确保整个系统的高可用性。Master节点通过Standby Master节点进行备份,每个数据节点的Primary Segment实例分别配置一个Mirror Segment实例作为备份,同时确保同一组Primary Segment实例和Mirror Segment实例不在同一物理机上,从而降低因为宕机而导致数据丢失的风险。



05 高效资源管理


Greenplum提供了高效的资源管理机制,根据用户的业务逻辑将资源合理地分配给查询任务,避免查询任务因查询资源不足而得不到响应。


Greenplum资源管理主要包括对并发查询数量的限制,查询执行时内存、CPU资源使用的限制等。Greenplum数据库提供了资源队列(Resource Queue)和资源组(Resource Group)两种资源管理方式,一般使用场景下采用默认配置即可。




06 多态存储


用户可以根据数据热度或者访问模式的不同使用不同的存储方式,以获得更好的查询性能。用户可以为一张表按照一定的规则(比如日期、月份)创建分区表,一张表的各个子分区表可以使用不同的物理存储方式。


支持的存储方式包括:


  • 行存储,数据以行的形式存储在数据页里,适合频繁更新的查询;

  • 列存储,数据以列的形式存储在数据页里,适合OLAP分析型查询;

  • 外部表,数据保存在其他文件系中,如HDFS、S3,数据库只保留元数据信息。



07 生态完整


Greenplum数据库拥有完善的SQL标准支持,包括SQL92、SQL99、SQL2003以及OLAP扩展,是对SQL标准支持最好的开源商用数据库系统之一。同时,由于Greenplum数据库基于PostgreSQL,因此也继承了PostgreSQL对于JDBC、ODBC、C、Python API等接口的支持。



08 高效数据加载


Greenplum还有一个非常神奇的功能——GPload并行加载数据,即允许数据从多个文件系统通过多个主机上的多个网卡加载数据,从而达到非常高的数据传输率。笔者曾经在3个节点的集群上并行加载50GB、2亿行记录的数据,仅用时90s。


此外,Greenplum数据库可以读取和写入多种类型的外部数据源,包括文本文件、XML文件、S3平台文件、Gemfire、Web服务器以及Hadoop生态系统中的HDFS、Hive、HBase、Kafka、Spark等,同时支持数据压缩以及字符集间的自动转换。



09 高级数据分析功能


Greenplum数据库支持各种过程化编程语言,包括PL/PostgreSQL、PL/R、PL/Python、PL/Java、PL/Perl等语言扩展。在高级数据分析方面,通过Greenplum数据库的MADlib扩展模块,用户可以很方便地利用MPP架构完成大规模并行分析。



10 良好的监控管理和运维体验


Greenplum数据库提供基于Web的可视化工具—Greenplum Command Center(简称GPCC)。GPCC可以监控Greenplum数据库系统的性能、集群健康状态、查询执行及系统资源使用情况,如图2-4所示。


▲图2-4 Greenplum数据库资源监控中心界面


关于作者:王春波,资深架构师和数据仓库专家,现任上海启高信息科技有限公司大数据架构师,Apache Doris和openGauss贡献者,Greenplum中文社区参与者。具有十多年的数据仓库、数据集市、数据中台项目实战经验,对大数据主流技术架构、产品选型与解决方案有深入研究,尤其擅长用优雅的SQL实现复杂的逻辑。 

本文摘编自高效使用Greenplum:入门、进阶与数据中台》,经出版方授权发布。(ISBN:9787111696490)

高效使用Greenplum:入门、进阶与数据中台
点击上图了解及购买
转载请联系微信:DoctorData

推荐语:资深数据架构师和数仓专家10余年经验总结,全面、深入讲解Greenplum以及如何用它构建数仓和数据中台。



刷刷视频👇



干货直达👇



更多精彩👇

在公众号对话框输入以下关键词
查看更多优质内容!

读书 | 书单 | 干货 | 讲明白 | 神操作 | 手把手
大数据 | 云计算 | 数据库 | Python | 爬虫 | 可视化
AI | 人工智能 | 机器学习 | 深度学习 | NLP
5G | 中台 | 用户画像 数学 | 算法 数字孪生

据统计,99%的大咖都关注了这个公众号
👇
浏览 8
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报