Preface 前 言
本书讲解了Apache Spark和Hadoop的基础知识,以及如何通过简单的方式将它们与最常用的工具和技术集成在一起。所有Spark组件(Spark Core、Spark SQL、DataFrame、Dataset、Conventional Streaming、Structured Streaming、MLlib、GraphX和Hadoop核心组件)、HDFS、MapReduce和Yarn 都在 Spark + Hadoop 集群的实现示例中进行了深入的探讨。
大数据分析行业正在从 MapReduce 转向Spark。因此,本书深入讨论了 Spark 相比 MapReduce 的优势,从而揭示出它在内存计算速度方面的好处。我们还会讲解如何运用 DataFrame API、Data Sources API,以及新的 Dataset API 来构建大数据分析应用程序。书中还讲解了如何使用 Spark Streaming 配合 Apache Kafka 和 HBase 进行实时数据分析,以帮助构建流式应用程序(streaming application)。新的结构化流(Structured Streaming)概念会通过物联网(Internet of Things,IOT)用例来解释。在本书中,机器学习技术会使用 MLLib、机器学习流水线和 SparkR 来实现;图分析则会利用Spark的GraphX 和GraphFrames 组件包来进行。
本书还介绍了基于Web的笔记本(如Jupyter和Apache Zeppelin)和数据流工具Apache NiFi,它们用于分析和可视化数据,以及利用 Livy 服务器把Spark作为一个服务提供给用户。
目录
第1章 从宏观视角看大数据分析
1.1 大数据分析以及 Hadoop 和 Spark 在其中承担的角色
1.2 大数据科学以及Hadoop和Spark在其中承担的角色
1.3 工具和技术
1.4 实际环境中的用例
1.5 小结
第2章 Apache Hadoop和Apache Spark入门
2.1 Apache Hadoop概述
2.2 Apache Spark概述
2.3 为何把 Hadoop 和 Spark 结合使用
2.4 安装 Hadoop 和 Spark 集群
2.5 小结
第3章 深入剖析Apache Spark
3.1 启动 Spark 守护进程
3.2 学习Spark的核心概念
3.3 Spark 程序的生命周期
3.4 Spark 应用程序
3.5 持久化与缓存
3.6 Spark 资源管理器:Standalone、YARN和Mesos
3.7 小结