spark数据分析基于python语言 中文版pdf_Spark数据分析(基于Python语言英文版)/经典原版书库...

导语

内容提要

Spark是当今大数据革命的核心,帮助数据从业人员提高各种数据处理、分析任务的效率和性能。在杰夫瑞·艾文著的《Spark数据分析(基于Python语言英文版)/经典原版书库》中,大数据专家Jeffrey Aven介绍了使用Spark及其扩展、子项目,以及更广的生态系统所需的所有知识。

本书讲解了语言无关的Spark基本概念,并使用常用而且直观的PySpark开发环境提供了编程示例。本书专注于Python,因此广大的数据从业人员、分析师和开发人员,即使几乎没有Hadoop或Spark经验,也可以轻松上手。

本书包括从Spark基本编程到高级编程,再到Spark SQL和机器学习的广泛内容。你会学到如何使用Spark高效管理各种形式的数据:流式数据、结构化数据、半结构化数据,还有非结构化数据。在全书中,精准的主题可以让你快速掌握知识点,而扩展性的实践练习可以让你为解决真实问题做好准备。

作者简介

杰夫瑞·艾文(Jeffrey Aven),是一名云计算和大数据方面的咨询师和讲师,常驻澳大利亚,拥有多年在主要的企业级大数据项目中运用Hadoop、NoSQL和Spark等技术的经验。他著有《Teach Yourself Apache Spark in 24 Hours))和《Teach Yourself Hadoop in 24 Hours)),并且获得了CIoudera颁发的亚太及日本地区(APJ)年度Hadoop讲师奖项。

目录

第一部分  Spark基础

第1章  大数据、Hadoop、Spark介绍

1.1  大数据、分布式计算、Hadoop简介

1.1.1  大数据与Hadoop简史

1.1.2  Hadoop详解

1.2  Apache Spark简介

1.2.1  Apache Spark背景

1.2.2  Spark的用途

1.2.3  Spark编程接口

1.2.4  Spark程序的提交类型

1.2.5  Spark应用程序的输入输出类型

1.2.6  Spark中的RDD

1.2.7  Spark与Hadoop

1.3  Python函数式编程

1.3.1  Python函数式编程用到的数据结构

1.3.2  Python对象序列化

1.3.3  Python函数式编程基础

1.4  本章小结

第2章  部署Spark

2.1  Spark部署模式

2.1.1  本地模式

2.1.2  Spark独立集群

2.1.3  基于YARN运行Spark

2.1.4  基于Mesos运行Spark

2.2  准备安装Spark

2.3  获取Spark

2.4  在Linux或Mac OS X上安装Spark

2.5  在Windows上安装Spark

2.6  探索Spark安装目录

2.7  部署多节点的Spark独立集群

2.8  在云上部署Spark

2.8.1  AWS

2.8.2  GCP

2.8.3  Databricks

2.9  本章小结

第3章  理解Spark集群架构

3.1  Spark应用中的术语

3.1.1  Spark驱动器

3.1.2  Spark工作节点与执行器

3.1.3  Spark主进程与集群管理器

3.2  使用独立集群的Spark应用

3.3  在YARN上运行Spark应用的部署模式

3.3.1  客户端模式

3.3.2  集群模式

3.3.3  回顾本地模式

3.4  本章小结

第4章  Spark编程基础

4.1  RDD简介

4.2  加载数据到RDD

4.2.1  从文件创建RDD

4.2.2  从文本文件创建RDD的方法

4.2.3  从对象文件创建RDD

4.2.4  从数据源创建RDD

4.2.5  从JSON文件创建RDD

4.2.6  通过编程创建RDD

4.3  RDD操作

4.3.1  RDD核心概念

4.3.2  基本的RDD转化操作

4.3.3  基本的RDD行动操作

4.3.4  键值对RDD的转化操作

4.3.5  MapReduce与单词计数练习

4.3.6  连接操作

4.3.7  在Spark中连接数据集

4.3.8  集合操作

4.3.9  数值型RDD的操作

4.4  本章小结

第二部分  基础拓展

第5章  Spark核心API高级编程

5.1  Spark中的共享变量

5.1.1  广播变量

5.1.2  累加器

5.1.3  练习:使用广播变量和累加器

5.2  Spark中的数据分区

5.2.1  分区概述

5.2.2  掌控分区

5.2.3  重分区函数

5.2.4  针对分区的API方法

5.3  RDD的存储选项

5.3.1  回顾RDD谱系

5.3.2  RDD存储选项

5.3.3  RDD缓存

5.3.4  持久化RDD

5.3.5  选择何时持久化或缓存RDD

5.3.6  保存RDD检查点

5.3.7  练习:保存RDD检查点

5.4  使用外部程序处理RDD

5.5  使用Spark进行数据采样

5.6  理解Spark应用与集群配置

5.6.1  Spark环境变量

5.6.2  Spark配置属性

5.7  Spark优化

5.7.1  早过滤,勤过滤

5.7.2  优化满足结合律的操作

5.7.3  理解函数和闭包的影响

5.7.4  收集数据的注意事项

5.7.5  使用配置参数调节和优化应用

5.7.6  避免低效的分区

5.7.7  应用性能问题诊断

5.8  本章小结

第6章  使用Spark进行SQL与NoSQL编程

6.1  Spark SQL简介

6.1.1  Hive简介

6.1.2  Spark SQL架构

6.1.3  DataFrame入门

6.1.4  使用DataFrame

6.1.5  DataFrame缓存、持久化与重新分区

6.1.6  保存DataFrame输出

6.1.7  访问Spark SQL

6.1.8  练习:使用Spark SQL

6.2  在Spark中使用NoSQL系统

6.2.1  NoSQL简介

6.2.2  在Spark中使用HBase

6.2.3  练习:在Spark中使用HBase

6.2.4  在Spark中使用Cassandra

6.2.5  在Spark中使用DynamoDB

6.2.6  其他NoSQL平台

6.3  本章小结

第7章  使用Spark处理流数据与消息

7.1  Spark Streaming简介

7.1.1  Spark Streaming架构

7.1.2  DStream简介

7.1.3  练习:Spark Streaming入门

7.1.4  状态操作

7.1.5  滑动窗口操作

7.2  结构化流处理

7.2.1  结构化流处理数据源

7.2.2  结构化流处理的数据输出池

7.2.3  输出模式

7.2.4  结构化流处理操作

7.3  在Spark中使用消息系统

7.3.1  Apache Kafka

7.3.2  练习:在Spark中使用Kafka

7.3.3  亚马逊Kinesis

7.4  本章小结

第8章  Spark数据科学与机器学习简介

8.1  Spark与R语言

8.1.1  R语言简介

8.1.2  通过R语言使用Spark

8.1.3  练习:在RStudio中使用SparkR

8.2  Spark机器学习

8.2.1  机器学习基础

8.2.2  使用Spark MLlib进行机器学习

8.2.3  练习:使用Spark MLlib实现推荐器

8.2.4  使用Spark ML进行机器学习

8.3  利用笔记本使用Spark

8.3.1  利用Jupyter(IPython)笔记本使用Spark

8.3.2  利用Apache Zeppelin笔记本使用Spark

8.4  本章小结

你可能感兴趣的:(中文版pdf)