PySpark实战指南:利用Python和Spark构建数据密集型应用并规模化部署

内容简介:

本文从Spark的基本特点出发,借助大量例子详细介绍了如何使用Python调用Spark新特性、处理结构化及非结构化数据、使用PySpark中基本可用数据类型、生成机器学习模型、进行图像操作以及阅读串流数据等新兴技术内容。

资源目录:

译者序

前言

关于作者

第1章 了解Spark 1

1.1 什么是Apache Spark 1

1.2 Spark作业和API 2

1.2.1 执行过程 2

1.2.2 弹性分布式数据集 3

1.2.3 DataFrame 4

1.2.4 Dataset 5

1.2.5 Catalyst优化器 5

1.2.6 钨丝计划 5

1.3 Spark 2.0的架构 6

1.3.1 统一Dataset和DataFrame 7

1.3.2 SparkSession介绍 8

1.3.3 Tungsten Phase 2 8

1.3.4 结构化流 10

1.3.5 连续应用 10

1.4 小结 11

第2章 弹性分布式数据集 12

2.1 RDD的内部运行方式 12

2.2 创建RDD 13

2.2.1 Schema 14

2.2.2 从文件读取 14

2.2.3 Lambda表达式 15

2.3 全局作用域和局部作用域 16

2.4 转换 17

2.4.1 .map(…)转换 17

2.4.2 .filter(…)转换 18

2.4.3 .flatMap(…)转换 18

2.4.4 .distinct(…)转换 18

2.4.5 .sample(…)转换 19

2.4.6 .leftOuterJoin(…)转换 19

2.4.7 .repartition(…)转换 20

2.5 操作 20

2.5.1 .take(…)方法 21

2.5.2 .collect(…)方法 21

2.5.3 .reduce(…)方法 21

2.5.4 .count(…)方法 22

2.5.5 .saveAsTextFile(…)方法 22

2.5.6 .foreach(…)方法 23

2.6 小结 23

第3章 DataFrame 24

3.1 Python到RDD之间的通信 24

3.2 Catalyst优化器刷新 25

3.3 利用DataFrame加速PySpark 27

3.4 创建DataFrame 28

3.4.1 生成自己的JSON数据 29

3.4.2 创建一个DataFrame 29

3.4.3 创建一个临时表 30

3.5 简单的DataFrame查询 31

3.5.1 DataFrame API查询 32

3.5.2 SQL查询 32

3.6 RDD的交互操作 33

3.6.1 使用反射来推断模式 33

3.6.2 编程指定模式 34

3.7 利用DataFrame API查询 35

3.7.1 行数 35

3.7.2 运行筛选语句 35

3.8 利用SQL查询 36

3.8.1 行数 36

3.8.2 利用where子句运行筛选语句 36

3.9 DataFrame场景——实时飞行性能 38

3.9.1 准备源数据集 38

3.9.2 连接飞行性能和机场 39

3.9.3 可视化飞行性能数据 40

3.10 Spark数据集(Dataset)API 41

3.11 小结 42

第4章 准备数据建模 43

4.1 检查重复数据、未观测数据和异常数据(离群值) 43

4.1.1 重复数据 43

4.1.2 未观测数据 46

4.1.3 离群值 50

4.2 熟悉你的数据 51

4.2.1 描述性统计 52

4.2.2 相关性 54

4.3 可视化 55

4.3.1 直方图 55

4.3.2 特征之间的交互 58

4.4 小结 60

第5章  MLlib介绍 61

5.1 包概述 61

5.2 加载和转换数据 62

5.3 了解你的数据 65

5.3.1 描述性统计 66

5.3.2 相关性 67

5.3.3 统计测试 69

5.4 创建最终数据集 70

5.4.1 创建LabeledPoint形式的RDD 70

5.4.2 分隔培训和测试数据 71

5.5 预测婴儿生存机会 71

5.5.1 MLlib中的逻辑回归 71

5.5.2 只选择最可预测的特征 72

5.5.3 MLlib中的随机森林 73

5.6 小结 74

第6章 ML包介绍 75

6.1 包的概述 75

6.1.1 转换器 75

6.1.2 评估器 78

6.1.3 管道 80

6.2 使用ML预测婴儿生存几率 80

6.2.1 加载数据 80

6.2.2 创建转换器 81

6.2.3 创建一个评估器 82

6.2.4 创建一个管道 82

6.2.5 拟合模型 83

6.2.6 评估模型的性能 84

6.2.7 保存模型 84

6.3 超参调优 85

6.3.1 网格搜索法 85

6.3.2 Train-validation 划分 88

6.4 使用PySpark ML的其他功能 89

6.4.1 特征提取 89

6.4.2 分类 93

6.4.3 聚类 95

6.4.4 回归 98

6.5 小结 99

第7章 GraphFrames 100

7.1 GraphFrames介绍 102

7.2 安装GraphFrames 102

7.2.1 创建库 103

7.3 准备你的航班数据集 105

7.4 构建图形 107

7.5 执行简单查询 108

7.5.1 确定机场和航班的数量 108

7.5.2 确定这个数据集中的最长延误时间 108

7.5.3 确定延误和准点/早到航班的数量对比 109

7.5.4 哪一班从西雅图出发的航班最有可能出现重大延误 109

7.5.5 西雅图出发到哪个州的航班最有可能出现重大延误 110

7.6 理解节点的度 110

7.7 确定最大的中转机场 112

7.8 理解Motif 113

7.9 使用PageRank确定机场排名 114

7.10 确定最受欢迎的直飞航班 115

7.11 使用广度优先搜索 116

7.12 使用D3将航班可视化 118

7.13 小结 119

第8章 TensorFrames 120

8.1 深度学习是什么 120

8.1.1 神经网络和深度学习的必要性 123

8.1.2 特征工程是什么 125

8.1.3 桥接数据和算法 125

8.2 TensorFlow是什么 127

8.2.1 安装PIP 129

8.2.2 安装TensorFlow 129

8.2.3 使用常量进行矩阵乘法 130

8.2.4 使用placeholder进行矩阵乘法 131

8.2.5 讨论 132

8.3 TensorFrames介绍 133

8.4 TensorFrames快速入门 134

8.4.1 配置和设置 134

8.4.2 使用TensorFlow向已有列添加常量 136

8.4.3 Blockwise reducing操作示例 137

8.5 小结 139

第9章 使用Blaze实现混合持久化

截图:

PySpark实战指南:利用Python和Spark构建数据密集型应用并规模化部署

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理