大数据被称为“未来的新石油”,那么如何开采“新石油”是各个领域处理大数据面临的核心问题。工欲善其事,必先利其器。大数据编程为处理大数据提供了最有效的“器”,本书全面介绍了大数据编程基础。Apache Spark已经成为大数据处理的首选平台,因此本书的大数据编程将基于Spark平台进行。本书成体系地介绍了Spark大数据编程技术。
本书分为三个部分共10章,从介绍Spark 开发环境开始,再以Spark编程入门基础为承接,最后具体到每一个Spark编程组件。这三部分内容由浅入深自成体系,可以方便地学习Spark编程的每个具体知识点。
本书分为三个部分共10章,从介绍Spark 开发环境开始,再以Spark编程入门基础为承接,最后具体到每一个Spark编程组件。这三部分内容由浅入深自成体系,可以方便地学习Spark编程的每个具体知识点。
第二部分包含第3~5章,讲述了Spark编程入门基础部分,重点介绍了Scala编程基础和弹性分布式数据集(resilient distributed dataset, RDD)编程。本书采用Scala编程语言,第3章和第4章分别介绍了Scala语言基础和Scala面向对象编程。RDD是Spark对数据的核心抽象,第5章介绍了RDD编程。
第三部分包含第6~10章,讲述了Spark编程组件部分,重点介绍了Spark SQL、Spark Streaming、 Spark GraphXSpark ML四个组件的编程。其中,第6章介绍Spark SQL,它可以高效地处理结构化数据;第7章介绍了Spark Streaming,它可以高效地处理流式数据;第8章介绍了Spark GraphX,它可以高效地处理图数据;第9章和第10章介绍了Spark ML,它们分别以Spark机器学习原理和Spark机器学习模型为重点进行介绍。
本书在编写过程中力求深入浅出、重点突出、简明扼要,尽可能方便不同专业背景和知 识层次的读者阅读。本书编写过程中,中南大学研究生杜宏亮、田玲、熊帆、高俊、吕腾飞、蒋志怡、应晓婷等做了大量的资料收集整理、书稿校对等工作,在此,对这些同学的辛勤工作表示感谢。
本书配套的官方网站是http://aibigdata.csu.edu.cn,免费提供全部课件资源、源代码和数据集。相关资料也可以从中南大学出版社的网站下载。另外,本书部分内容参考了大量的公开资料和网络上的资源,对他们的工作致以衷心的感谢。需要指出的是,数据科学与大数据技术是一个全新的专业,因此编写一本完美的大数据编程教材绝非易事。由于水平有限,书中难免存在疏漏或者错误,希望广大读者不吝赐教。如有任何建议、意见或者疑问,请及时联系作者,以期在后续版本中加以改进和完善。
编者
2013年9月