盘点Greenplum 6.0六大新特性及展望

共 2771字,需浏览 6分钟

 ·

2022-01-23 14:39

导读:本文介绍Greenplum 6.0的新特性。


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





Greenplum 6.0于2019年9月4日正式发布,内核版本从PostgreSQL 8.3升级到PostgreSQL 9.4,数据库的功能和性能得到了巨大的提升,HTAP能力也得到了进一步加强。


除了内核版本升级,还增加了大量新特性,包括基于WAL日志的mirror同步、分布式死锁检测、复制表、在线扩容、磁盘限额、自动Master切换、Zstandard压缩、GP-GP集群间高效查询等。



01 Postgre SQL版本升级


Greenplum基于PostgreSQL 8.3(开发时的最新版本)已经有近10年的时间(PostgreSQL 8.3版本发布于2008年)。在此期间,PostgreSQL的演进速度是非常快的,尤其是在2015年之后,每年一个大版本的迭代更新,在性能和功能上都有重要的提升,各种特性层出不穷。


而这些特性却无法在Greenplum上直接体现,原因在于,Greenplum是在PostgreSQL 8.3内核的基础上修改代码实现的,而不是类似CitusDB等采取了插件的方式。


Greenplum这样设计的好处是,能够充分修改优化器、执行器、事务、存储等各个模块,达到最优的效果。坏处也很明显:与PostgreSQL社区长期脱节,无法充分利用社区红利。


基于上述原因,在Greenplum中升级PostgreSQL版本是一件非常痛苦的事。随着Greenplum的开源和越来越多PostgreSQL社区资深贡献者的参与,Greenplum终于在6.0版本中完成了PostgreSQL内核的升级。


升级PostgreSQL内核,让Greenplum实现了安全性、权限管理增强、JSONB、GIN索引、SP-GiST索引、并行Vacuum、CTE等用户比较期待的功能。



02 HTAP性能大幅提升


这里所说的性能提升主要是PostgreSQL升级带来的好处,PostgreSQL从8.3版到9.4版本积累了非常多的性能优化经验,在OLAP和OLTP方面都有成倍的提升。


特别是原来比较弱势的OLTP功能得到了大幅提升,单节点查询达到80000TPS(Transactions Per Second,数据库每秒处理事务数),插入操作达到18000TPS,更新操作约7000TPS(来自Greenplum官方测试数据)。



03 支持复制表


这是一个很实用的功能,可以用空间换时间。一个典型的应用场景就是维度表。这类数据表的特点是,数据量不大、很多查询/分析都会与此关联,导致这类表在查询时经常被分发到各个节点中去。而采用复制表功能就不需要进行数据的移动和交换了,减少了网络开销和CPU开销,显著提高了查询效率。




04 引入了在线扩容和一致性哈希


一致性哈希的引入,在一定程度上缓解了数据倾斜问题,更大的好处在于扩容更方便了。新版本的Greenplum在进行扩容时,无须停止数据库服务,扩容不影响正在执行的查询,扩容时只移动部分数据,扩容速度得到了大幅提升。



05 支持Zstandard压缩算法


Zstandard是Facebook开源的压缩算法,压缩效率高,在性能和压缩率之间取得了较好的平衡。



06 基于流复制的全新高可用机制


复制是PostgreSQL连续研发多年的功能,在高可用、备份、恢复(到时间点)等诸多场景中必不可少,提供了非常高的灵活度。


除了上述影响比较大的新特性之外,Greenplum 6.0还支持Kubernetes、磁盘配额管理、Master节点自动Fail-Over机制等新开发或者持续完善中的功能。


总结完Greenplum 6.0的新特性,我们对Greenplum 7.0充满了期待。Greenplum 7.0会将PostgreSQL升级到PostgreSQL 12,在查询优化器增强、向量执行引擎、多核性能提升等方面都会有较大的提升。


Greenplum 7.0最重要的特性就是向量执行引擎,这也是用户最期待的特性。向量化执行已经在ClickHouse和DorisDB中实现,展现了强大的性能优势。向量化执行可以提高CPU的利用率,提升Greenplum单个Segment实例的查询性能,对并发较低、低延迟要求高的查询场景有较明显的提升。


除此之外,多阶段聚合、支持复制多副本、支持Upsert(更新与插入的合并操作)等功能也将进一步增加Greenplum数据库的HTAP性能。


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

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

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

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



刷刷视频👇



干货直达👇



更多精彩👇

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

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

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

手机扫一扫分享

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

手机扫一扫分享

分享
举报