第1章 开始使用Apache Spark

在本章中,我们将介绍安装和配置Spark,包括如下内容。

  • 通过二进制可执行文件安装Spark。
  • 通过Maven构建Spark源码。
  • 在Amazon EC2上安装Spark。
  • 在集群上以独立模式部署Spark。
  • 在集群上使用Mesos部署Spark。
  • 在集群上使用YARN部署Spark。
  • 使用Tachyon作为堆外存储层。

Apache Spark是一个用于处理大数据工作流的多功能集群计算系统。Spark在速度、易用性以及分析能力上都强于它的前辈们(如MapReduce)。

Apache Spark最初在2009年,由加州大学伯克利分校的AMPLab实验室研发,在2010年按照BSD协议实现开源,并在2013年转为Apache 2.0协议。到2013年下半年,Spark的创始人建立了Databricks,专注于Spark的研发和未来的公开发行。

谈到速度,Spark大数据工作流的处理可以达到亚秒级别的延迟。为了达到如此低的延迟,Spark充分利用了内存。在MapReduce中,内存仅仅用于实际计算,而Spark不仅使用内存进行计算,而且还用于存储对象。

Spark也提供一个连接各种大数据存储源的统一运行时接口,例如HDFS、Cassandra、Hbase和S3。它同时也提供大量的用于不同的大数据计算任务的顶层库,例如机器学习、SQL处理、图像处理以及实时数据流。这些库加快了开发速度,可以任意组合。

虽然Spark是用Scala所写,本书也只关注Scala部分的教程,但是Spark也支持Java和Python语言。

Spark是一个开源社区产品,每个人都是用Apache纯开源分布部署,不像Hadoop,有大量开发商改进的分布部署。 ...

Get Spark Cookbook (中文版) now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.