IBM中国研究院高级研究员陈冠诚主要从事Big Data on Cloud,大数据系统性能分析与优化方面的技术研发。负责和参与过SuperVessel超能云的大数据服务开发,Hadoop软硬件协同优化,MapReduce性能分析与调优工具,高性能FPGA加速器在大数据平台上应用等项目。在puting(SC),IEEE BigData等国际顶级会议和期刊上发表过多篇大数据数据处理技术相关的论文,并拥有八项大数据领域的技术专利。曾在《程序员》杂志分享过多篇分布式计算,大数据处理技术等方面的技术文章。以下为媒体针对陈冠诚的专访:
问:首先请介绍下您自己,以及您在Spark 技术方面所做的工作。
陈冠诚:我是IBM中国研究院的高级研究员,大数据云方向的技术负责人。我们围绕Spark主要做两方面的事情:第
一,在IBM研究院的SuperVessel公有云上开发和运维Spark as a Service大数据服务。第
二,在OpenPOWER架构的服务器上做Spark的性能分析与优化。
问:您所在的企业是如何使用Spark 技术的?带来了哪些好处?
陈冠诚:Spark作为新一代的大数据处理引擎主要带来了两方面好处:
相比于MapReduce在性能上得到了很大提升。
在一个统一的平台上将批处理、SQL、流计算、图计算、机器学习算法等多种范式集中在一起,使混合计算变得更加的容易。
问:您认为Spark 技术最适用于哪些应用场景?
陈冠诚:大规模机器学习、图计算、SQL等类型数据分析业务是非常适合使用Spark的。当然,在企业的技术选型过程中,并不是说因为Spark很火就一定要使用它。例如还有很多公司在用Impala做数据分析,一些公司在用Storm和Samaza做流计算,具体的技术选型应该根据自己的业务场景,人员技能等多方面因素来做综合考量。
问:企业在应用Spark 技术时,需要做哪些改变吗?企业如果想快速应用Spark 应该如何去做?
陈冠诚:企业想要拥抱Spark技术,首先需要技术人员改变。是否有给力的Spark人才会是企业能否成功应用Spark最重要的因素。多参与Spark社区的讨论,参加Spark Meetup,给upstrEAM贡献代码都是很好的切入方式。如果个人开发者想快速上手Spark,可以考虑使用SuperVessel免费的Spark公有云服务,它能快速创建一个Spark集群供大家使用。
问:您所在的企业在应用Spark 技术时遇到了哪些问题?是如何解决的?
陈冠诚:我们在对Spark进行性能调优时遇到很多问题。例如JVM GC的性能瓶颈、序列化反序列化的开销、多进程好还是多线程好等等。在遇到这些问题的时候,最好的方法是做好Profiling,准确找到性能瓶颈,再去调整相关的参数去优化这些性能瓶颈。
另一方面,我们发现如果将Spark部署在云环境里(例如OpenStack管理的Docker Container)时,它的性能特征和在物理机上部署又会有很大的不同,目前我们还在继续这方面的工作,希望以后能有机会跟大家继续分享。
问:作为当前流行的大数据处理技术,您认为Spark 还有哪些方面需要改进?
陈冠诚:在与OpenStack这样的云操作系统的集成上,Spark还是有很多工作可以做的。例如与Docker Container更好的集成,对Swift对象存储的性能优化等等。
问:您在本次演讲中将分享哪些话题?
陈冠诚:我将分享的话题是“基于OpenStack、Docker和Spark打造SuperVessel大数据公有云”:
随着Spark在2014年的蓬勃发展,Spark as a Service大数据服务正成为OpenStack生态系统中的新热点。另一方面,Docker Container因为在提升云的资源利用率和生产效率方面的优势而备受瞩目。在IBM中国研究院为高校和技术爱好者打造的SuperVessel公有云中,我们使用OpenStack、Docker和Spark三项开源技术,在OpenPOWER服务器上打造了一个大数据公有云服务。本次演讲我们会向大家介绍如何一步一步使用Spark、Docker和OpenStack打造一个大数据公有云,并分享我们在开发过程中遇到的问题和经验教训。
问:哪些听众最应该了解这些话题?您所分享的主题可以帮助听众解决哪些问题?
陈冠诚:对如何构造一个大数据云感兴趣的同学应该会对这个话题感兴趣,开发SuperVessel的Spark as a Service服务过程中我们所做的技术选型、架构设计以及解决的问题应该能对大家有所帮助。(来源:CSDN)