畅谈《Greenplum从大数据战略到实现》著作

作为大数据分析平台,Greenplum无疑是开源大数据分析平台的佼佼者,它基于MPP架构,主要在内置分布式存储、并行通信、并行计算和机器学习方面做了大量的工作,是大数据工程师和数据科学家的福音。作为大数据平台研发领域的一个老兵,从云计算,大数据到后面的人工智能、机器学习等在国内兴起,我一直追逐着这股潮流(从2014年开始),从最初的Hadoop 1.x、Spark 1.x到后面使用Greenpum 4.x和5.x,对于这些平台我都有所涉猎。总体上而言,这些平台各自有各自的优势,企业也会根据自己的业务需求进行平台的选择。


从2016年初开始接触Greenplum,当时的资料特别少,只能依赖官方英文文档来进行学习。在Greenplum基础上做了近二年的研发工作,我们对GIS方面做了一些底层工作,尤其是对空间数据的支持和一些经典GIS算法进行了优化。另外,在平台部署、运维、空间数据分布式存储和并行计算方面也做了如下工作,具体是:


  • 平台可在物理机、虚拟机、阿里云以及现在兴起的容器等平台上自动化部署;
  • 在运维方面,做了可视化界面,可以以Web界面形式对集群进行管理;
  • 对空间数据分布式存储、时空索引和并行计算,我们对其GIS经典算法例如九交模型等方面做了测试,并将平台向一些企事业单位进行了推广,收集和解决了他们在生产中遇到的一些技术问题。


在这个过程中,得到了Pivotal中国研发中心副总经理、Greenplum研发总监姚延栋和Greenplum团队的支持。并且参与了Greenplum团队组织的关于Greenplum的技术讨论会。另外姚总后面建立Greenplum中国社区、翻译群和社区志愿者群,我也有幸得到邀请,参与了整个过程。这里我特别感谢Greenplum团队的辛勤付出及为行业所作的贡献。


对Greenplum平台研发过程中,我还对Postgres-xc、Postgres-xl、HAWQ和Deepgreen等大数据分析平台从各个方面进行了调研和分析,最终还是选择在生产和项目中采用Greenplum平台。在这个过程中,我一直希望业界大佬们能够出版一本Greenplum方面的书。在等待了漫长的八个月之后,终于在年初,我购买到鲜度版,并在拿到手之后,迫不及待花费了三周时间对其进行了研读。八月中旬拿到了纸质版,我又从头到尾对其进行了阅读。现在我将姚总团队写的《Greenplum从大数据战略到实现》这本书的所观所感形成文章,供行业朋友参考。


《Greenplum从大数据战略到实现》这本书主要分为四部分,其内容非常丰富,涉及到了Greenplum的数据采集、存储、计算、机器学习、平台运维和数据迁移等方方面面,基本上涵盖了Greenplum的所有内容。


第一部分,作者以帮助企业数字化转型的领袖视角介绍了大数据、人工智能和云计算之间的关系,并对大数据战略实施和未来发展趋势提出了自己的观点。这部分对从事这块的工程师来说,能让他们以更大的格局来对这个行业进行审视和思考。弥补了以往只能从事某些技术的缺憾,让工程师以主人公的身份来建设这个行业,对推动Greenplum开源技术发展来说具有很大的意义,也让工程师具备了一定的使命感。


第二部分,主要介绍了大数据的演变过程和发展趋势,还有Greenplum平台架构,数据加载、联邦、数据虚拟化和混合负载。作者紧紧抓紧了目前企业在大数据战略实施过程中遇到的瓶颈和痛点,并展开了自己的讨论,让工程师从全貌对Greenplum进行了深入了解。


第三部分,组件部分。主要介绍了在Greenplum基础上进行过程化语言开发、MADlib机器学习库使用,以及文本挖掘和时空数据分析处理,最后介绍了在Greenplum上面做图计算。这部分内容丰富,企业对机器学习、文本挖掘和图计算等方面需求很大,对于数据科学家来说,也是一份很好的福利。


第四部分,主要是Greenplum平台运维和数据迁移,对于运维工程师来说,这部分内容是非常有价值的,平台安全高效运维是企业永远追求的目标。


以上是我对本书每部分内容进行了客观评价。以下是我对本书的一些主观感想,或者从一个Greenplum应用者的角度来说一说自己的想法,也可以看作是我们在使用Greenplum过程中在的痛点。


《Greenplum从大数据战略到实现》主要只是对Greenplum基本操作和使用进行了介绍。对于企业而言,可能需要根据自己的业务需求,需要对Greenplum内核进行深入地研究,并对其源代码进行改进,用于满足自己的业务需求。希望后续可以在Greenplum内核源码方面写一些干货。


现在企业的发展,不仅仅需要大数据工程师对平台进行部署、运维。还需要遇到问题能够快速定位问题,并解决问题,这对工程师提出了很高的要求。希望后续能够在介绍内核源码基础之上,还能写一些内核源码改进和优化的干货。毕竟Greenplum源码有上百万行,对很多工程师来说,短时间内很难下手。如果各个企业工程师这块有所掌握,完全可以把自己项目中的代码抽取出来,提交到开源社区,供大家学习和使用,那无疑会大大促进社区的健康发展。


目前本书主要停留在了自有产品介绍,对于一些第三方产品兼容案例很少。同时作为一个开源产品研发组织写的书,希望将来能介绍一些本产品的接口,让更多的工程师发挥想象力来发挥集成的空间。


此外,可能是因为篇幅原因,本书涉及的实际运维过程中的填坑案例较少。建议把在研发或者企业使用过程中遇到的技术问题进行整理,并以解决方案的形式提取出来,写进书中,尽可能地解放从事Greenplum工作的工程师。


最后一点,但不是最重要的。以上对本书提出的不足部分,仅仅只是个人阅读之后的一点点心得体会。希望写出来能够提供同行参考。


祝Greenplum越做越好,也祝Greenplum社区能够良好发展,为行业贡献自己的力量。


作者简介:


郭涛,Turing Institute of Technology(TIT Lab)创始人,大数据研发工程师。目前致力于大数据平台研发、数据挖掘与分析和机器学习等与微服务web平台的整合研究。精通Hadoop、Spark、Greenplum 、Apache HAWQ®和新一代Kubernetes等大数据和云计算平台。



 

 

关于Greenplum


Greenplum 是全球领先的开源大数据平台,是能够提供包含实时处理、弹性扩容、弹性计算、混合负载、云原生和集成数据分析等强大功能的大数据引擎。


Greenplum 基于MPP(大规模并行处理)架构构建,具有良好的弹性和线性扩展能力,并内置并行存储、并行通讯、并行计算和优化技术。同时,Greenplum还兼容 SQL 标准,具备强大、高效、安全的PB级结构化、半结构化和非结构化数据存储、处理和实时分析能力,可部署于企业裸机、容器、私有云和公有云中。值得一提的是,作为OLAP型的大数据平台, Greenplum同时还能够支持涵盖OLTP型业务的混合负载,从而帮助客户真正打通业务-数据-洞见-业务的闭环。


目前,Greenplum 已经为国内外各行各业客户所广泛使用,支撑着全球各大行业的核心生产系统,其涉及领域涵盖金融、保险、证券、通信、航空、物流、零售、媒体、政府、医疗、制造、能源等。


如果你对分布式数据库内核感兴趣,希望成为贡献者或commiter,可以从这儿开始!Greenplum社区期待您的参与!

 

关注微信公众号

VMware 中国研发中心