今天(2019年3月20日),所有关注开源大数据平台Greenplum的用户和开发人员都会发现:Greenplum的github代码库里面出现了一个新的分支–“6X_STABLE”。这标志着Greenplum大数据平台进入了6.0的时代。
这是继2017年9月 Greenplum 发布5.0版以来,Greenplum 的又一次大版本升级。此次新版本更新了17125的文件,代码和相关测试修改量更是达到了200余万行(git diff –stat 5X_STABLE…6X_STABLE)。 Greenplum 新版本在功能和性能上都实现大幅度的提升,大量测试自动运行保证产品质量,可以更好的帮助客户在公有云或私有云中进行出色的集成数据分析,使客户得以快速构建现代的、基于云的AI(人工智能)应用。
Greenplum 6.0重要特性:
1. 内核升级
Greenplum 6.0的内核升级到PostgreSQL 9.4.20,与Greenplum 5.x的内核(PostgreSQL 8.3)相比,内核版本提升了6个大的版本,集成了来自于PostgreSQL社区的约14000次代码提交,大量PostgreSQL新特性被移植到Greenplum 6.0中,包括:
1.JSONB
2.安全性、权限管理增强
3. Lateral 语法(部分支持)
4.Range数据类型
5.GIN索引、SP-GiST索引
6.并行Vacuum
7.FDW外部表
8.逻辑解码
9.CTE (Common Table Expression)
等等
2. HTAP (OLAP + OLTP)性能大幅提升
Greenplum 6.0 引入了新的全局死锁检查机制,新的机制会动态的收集和分析锁的信息来检查和解除全局死锁。基于此,HEAP表的更新修改操作可以只借助细粒度行锁完成,支持大并发的更改删除查询,从而提高整个系统的并发度和吞吐量。Greenplum 6.0 还对事务锁进行了优化,减少了开始事务和结束事务时的锁竞争。对分区表的插入操作的优化,减少了对其他分区的干扰。结合PostgreSQL合并带来的其他锁优化(例如fastpath),Greenplum 6.0的并发性得到显著改进,OLTP型和混合负载业务尤其受益。
3. 支持复制表(Replicated Table)
复制表(Replicated Table)是Greenplum 6.0支持的一个新的表类型。与普通表不同,复制表会在每个segment节点保存一份全量数据,这样当一个复制表和其他表关联时,将完全不需要segment节点间的数据移动,快速本地完成查询。
4. 在线扩容(Online expand)和一致性哈希(Jump Consistent Hash)
在Greenplum 6.0之前,扩容节点需要短暂停机并将哈希表改为随机表,在6.0中,这两个约束都被消除,集群可以持续在线扩容。一致性哈希的引入,可以极大减少节点间的数据移动,降低扩容期间网络IO和整个系统的负载。
5. 磁盘配额(Disk Quota)
磁盘额度(Disk Quota)支持在数据库的User和Schema级别设置磁盘额度,可以极大的提高对磁盘管理的能力和灵活性。本特性将包括在 GA 版本中。
6. 支持Zstandard压缩算法
Greenplum 6.0添加了对Zstandard压缩算法的支持,压缩比和性能更突出,CPU使用率大幅降低。
7. 灵活数据分布
允许用户自定义operator class,并在创建表时给分布列指定operator class, 借助这些功能扩展,用户可以灵活的控制数据分布。
8. 基于流复制的全新高可用机制
Greenplum 6.0 重新设计了高可用机制,新机制不再使用传统的基于文件IO的 filerep 技术,而是采用了 PostgreSQL 内建的日志流复制技术。这不仅大大提高了 Greenplum 的高可用能力,降低了和 PostgreSQL 代码的分歧程度,提高了代码的可维护性,更是为期待的重量级特性铺平了道路,譬如CDC和DR。
Greenplum 数据库相关产品如备份恢复、机器学习算法库 MADLib、文本分析产品GPText(闭源)、监控管理平台GPCC(闭源)、Greenplum-Kafka 连接器(闭源)、Hadoop 连接器PXF、Greenplum for Kubernetes (闭源)等也有大量新特性更新。
Greenplum社区将用更多博文详细介绍6.0的更多技术细节和应用案例,欢迎大家的持续关注!
Greenplum大数据平台简介
Greenplum 大数据平台基于MPP(大规模并行处理)架构,具有良好的弹性和线性扩展能力,内置并行存储、并行通讯、并行计算和优化技术,兼容 SQL 标准,具备强大、高效、安全的PB级结构化、半结构化和非结构化数据存储、处理和实时分析能力,同时支持涵盖OLTP型业务的混合负载,为客户打通业务-数据-洞见-业务的闭环,可部署于企业裸机、容器、私有云和公有云中,支撑着全球金融、证券、电信、政府、制造、交通运输等各行业的大量核心生产系统。
Greenplum 大数据平台为全球各行各业提供具备实时处理、弹性扩容、弹性计算、混合负载、云原生和集成数据分析能力的强大的大数据引擎,目前广泛的应用于包括金融、保险、证券、通信、航空、物流、零售、媒体、政府、医疗、制造、能源等行业。