高效使用Greenplum:入门、进阶与数据中台
上QQ阅读APP看书,第一时间看更新

前言

为什么要写这本书

2012年我步入企业数据分析领域,一度聚焦于银行业管理会计系统。管理会计系统是银行业最重要的数据分析与应用系统。在上线管理会计系统之前,银行业只能通过简单的统计报表应对各种业务统计需求。管理会计系统帮助银行实现了经营数据的汇总整合、数据质量的提升、精细化管理的转变,一跃成为银行业最核心的数据应用系统。

银行业的管理会计系统通常构建在数据仓库之上,是一个面向应用的数据集市,虽然整体架构和数据仓库类似,但是系统的数据容量略小。早期的管理会计系统都是基于Oracle、DB2、SQL Server实现的。2017年年底,我第一次接触到了大数据平台,参与了银行业第一个基于Hadoop平台的管理会计系统项目建设。

身为传统数据库开发工程师,我在Oracle和DB2数据库上积累的经验在Hive上完全无用武之地。在完成Hive数据分析项目的同时,我一边恶补Hadoop的相关知识,一边深入理解Hive执行过程和执行原理,终于在项目后期掌握了Hive数据仓库的优化策略和调优参数。尽管已经有了Hive的优化经验,我仍然很难认可Hive的数据仓库领导者地位。即使后面用到了Tez、Hive on Spark等更加快速的查询引擎,脚本式的开发过程和大表关联的性能瓶颈,仍然让我对Hive很不满意。

直到有一天,我发现了Greenplum数据库,才知道分布式数据库其实还有更好的选择。MPP架构作为传统数据库架构设计的“正统继承者”,既满足了大数据量查询的性能要求,又解决了SQL语言的兼容性问题。

正是基于Greenplum数据库带给我的惊喜,我才特别想将使用经验分享给大家,从而推动更多企业使用Greenplum数据库,让它们用更省钱、更快捷的方式实现企业级数据仓库和数据中台。

虽然现在ClickHouse和Doris正在崛起,新一代的架构可能会超越Greenplum数据库,但是Greenplum数据库胜在生态成熟、技术稳定,完全可以满足大部分中小企业的数据分析需求。

Greenplum曾经在阿里巴巴作为Oracle集群的替代产品,成为数据仓库的核心数据库(虽然后来被自研产品换掉,但是阿里巴巴当时的数据体量是很多公司未来10年都不可能达到的),而且这些年来,Greenplum数据库技术更加成熟,生态更为完善,性能也得到了大幅提高。

阿里云推出的云原生数据仓库AnalyticDB for PostgreSQL正是基于Greenplum的改进版本。百度云、京东云也陆续推出了基于Greenplum的云上数据仓库平台,腾讯云和华为云则主推自家研发的同类产品(腾讯TBase和华为GaussDB)。这说明各大云厂商都看好MPP架构数据库在OLAP领域的应用趋势。这些数据仓库平台都是基于PostgreSQL研发的,并且都参考了Greenplum的架构体系。因此,深入研究Greenplum可以达到触类旁通的作用。从主推以Hive为核心的大数据平台到回归Greenplum生态,说明云厂商的产品定位在发生转变。对于广大中小型企业,Greenplum才是最适合它们的数据库产品。

读者对象

本书适合以下读者。

  • 商业智能分析领域的工程师。Greenplum作为一款简单易用、性能卓越的OLAP分析数据库,非常适合作为数据分析的底层数据库。通过阅读本书,读者可以快速掌握Greenplum的使用,并可以从其他环境抽取数据到Greenplum进行数据分析,进一步提升工作效率。
  • 数据分析领域的ETL工程师。MPP数据库的原理是数据分析领域的ETL工程师必须掌握的技术知识点。通过本书,读者不仅可以学习并掌握MPP架构的开源数据库,以及PostgreSQL和Greenplum数据库语法,还可以基于Greenplum构建完整的数据仓库、数据中台系统。
  • 系统架构师。OLAP数据库选型一直是系统架构领域的难点,通过本书,读者可以全面认识Greenplum数据库的优点和缺点,从而务实地在Hadoop和Greenplum中做出明智的选择。此外,Greenplum会大幅降低开发成本,提高开发效率,提升企业的信息服务水平。
  • 计算机专业的高校学生。如今,很多高校都开设了数据库和大数据相关的课程,然而Hadoop的复杂性和不稳定性让入门者胆怯,基于PostgreSQL的MPP数据库Greenplum会是这部分读者最好的选择。

本书特色

本书结合数据中台的建设,从建设思路、接口实战、建模实战到数据中台管理和应用,全方位解读基于Greenplum数据库实现数据中台的过程,并辅之以零售行业数据中台的案例,深入剖析数据中台建设的全过程,帮助读者掌握数据中台的实战要领。

在行文方面,本书尽可能使用浅显易懂的语言,并通过大量的演示案例来引导读者深入学习。在关键环节,本着“有图有真相”的原则,配有大量的截图和示意图帮助读者加深对知识的理解。

如何阅读本书

本书内容分为4部分。

第一部分 大数据平台概述(第1章):主要从应用的角度介绍了大数据技术的发展历程,帮助读者了解时代背景,把握大数据技术的发展方向。

第二部分 Greenplum入门(第2~4章):简单介绍Greenplum数据库的基本原理、安装与部署、入门操作,帮助读者认识Greenplum数据库。没有任何数据库应用经验的读者可以认真学习这部分内容。

第三部分 Greenplum应用(第5~11章):着重讲解了Greenplum数据库的部分高级应用功能,包括SQL语法、ETL工具箱、运维管理与监控、性能优化以及外部生态。

第四部分 数据中台实战(第12~17章):通过对数据中台建设过程进行全面解读和深入实战讲解,帮助读者认识数据中台的全流程。

勘误和支持

由于作者的水平有限,编写时间仓促,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。读者可发送邮件至524427858@qq.com或关注我的公众号“数据中台研习社”与我沟通交流。

致谢

在本书完稿之际,我要感谢启高科技联合创始人兼总经理赵书贤对我工作的指导,是赵总的高瞻远瞩使项目一次又一次拨云见日,变为书中一个个精彩案例。

感谢卡宾服饰CIO陈培兰,是陈总的耐心讲解使我能深入了解零售需求,也是陈总的高要求让我一次又一次突破了Greenplum的性能瓶颈。

感谢项目经理张海静,是她带领我们的团队圆满完成了项目目标。

感谢黎文惠、乔一洺、杨宏武、赵正炎的现场支持,感谢伍晓威、任启强、苏丹、杨健、田红飞、张宇、莫耀权、佘文、焦立岩等同事的配合,感谢客户方郭天琦、王欣芳、黄健等人给予的大力支持。正是大家的精诚合作,才促成了项目的成功,才有了超出客户期望的满意度。也正是这份超出预期的成功,才促使我来编写本书,与大家分享Greenplum数据库。

感谢我的夫人杨慧的大力支持,是她承担了带娃的重任;感谢我的前同事苏丹,她的鼓励和督促使我坚持到现在;感谢杨福川和韩蕊编辑在写作过程中的耐心辅导。

最后还要特别感谢《超级演说家》第二季总冠军刘媛媛,是她的喜马拉雅节目《刘媛媛的晚安电台》带我走出了30岁的焦虑,开始了本书的写作历程。

感谢所有给过我帮助和启发的朋友、亲人,谢谢你们,是你们成就了今天的我!

王春波
2021年9月于厦门