书籍详情
Spark数据分析:基于Python语言(英文版)
作者:[澳] 杰夫瑞·艾文(Jeffrey Aven) 著
出版社:机械工业出版社
出版时间:2019-03-01
ISBN:9787111620037
定价:¥79.00
购买这本书可以去
内容简介
本书重点关注Spark项目的基本知识,从Spark核心开始,然后拓展到各种Spark扩展、Spark相关项目、Spark子项目,以及Spark所处的丰富的生态系统里各种别的开源技术,比如Hadoop、Kafka、Cassandra等。
作者简介
暂缺《Spark数据分析:基于Python语言(英文版)》作者简介
目录
第一部分 Spark基础
第1章 大数据、Hadoop、Spark介绍3
1.1 大数据、分布式计算、Hadoop简介3
1.1.1 大数据与Hadoop简史4
1.1.2 Hadoop详解5
1.2 Apache Spark简介11
1.2.1 Apache Spark背景11
1.2.2 Spark的用途12
1.2.3 Spark编程接口12
1.2.4 Spark程序的提交类型12
1.2.5 Spark应用程序的输入输出类型14
1.2.6 Spark中的RDD14
1.2.7 Spark与Hadoop14
1.3 Python函数式编程15
1.3.1 Python函数式编程用到的数据结构15
1.3.2 Python对象序列化18
1.3.3 Python函数式编程基础21
1.4 本章小结23
第2章 部署Spark25
2.1 Spark部署模式25
2.1.1 本地模式26
2.1.2 Spark独立集群26
2.1.3 基于YARN运行Spark27
2.1.4 基于Mesos运行Spark28
2.2 准备安装Spark28
2.3 获取Spark29
2.4 在Linux或Mac OS X上安装Spark30
2.5 在Windows上安装Spark32
2.6 探索Spark安装目录34
2.7 部署多节点的Spark独立集群35
2.8 在云上部署Spark37
2.8.1 AWS37
2.8.2 GCP39
2.8.3 Databricks40
2.9 本章小结41
第3章 理解Spark集群架构43
3.1 Spark应用中的术语43
3.1.1 Spark驱动器44
3.1.2 Spark工作节点与执行器47
3.1.3 Spark主进程与集群管理器49
3.2 使用独立集群的Spark应用51
3.3 在YARN上运行Spark应用的部署模式51
3.3.1 客户端模式52
3.3.2 集群模式53
3.3.3 回顾本地模式54
3.4 本章小结55
第4章 Spark编程基础57
4.1 RDD简介57
4.2 加载数据到RDD59
4.2.1 从文件创建RDD59
4.2.2 从文本文件创建RDD的方法61
4.2.3 从对象文件创建RDD64
4.2.4 从数据源创建RDD64
4.2.5 从JSON文件创建RDD67
4.2.6 通过编程创建RDD69
4.3 RDD操作70
4.3.1 RDD核心概念70
4.3.2 基本的RDD转化操作75
4.3.3 基本的RDD行动操作79
4.3.4 键值对RDD的转化操作83
4.3.5 MapReduce与单词计数练习90
4.3.6 连接操作93
4.3.7 在Spark中连接数据集98
4.3.8 集合操作101
4.3.9 数值型RDD的操作103
4.4 本章小结106
第二部分 基础拓展
第5章 Spark核心API高级编程109
5.1 Spark中的共享变量109
5.1.1 广播变量110
5.1.2 累加器114
5.1.3 练习:使用广播变量和累加器117
5.2 Spark中的数据分区118
5.2.1 分区概述118
5.2.2 掌控分区119
5.2.3 重分区函数121
5.2.4 针对分区的API方法123
5.3 RDD的存储选项125
5.3.1 回顾RDD谱系125
5.3.2 RDD存储选项126
5.3.3 RDD缓存129
5.3.4 持久化RDD129
5.3.5 选择何时持久化或缓存RDD132
5.3.6 保存RDD检查点132
5.3.7 练习:保存RDD检查点134
5.4 使用外部程序处理RDD136
5.5 使用Spark进行数据采样137
5.6 理解Spark应用与集群配置139
5.6.1 Spark环境变量139
5.6.2 Spark配置属性143
5.7 Spark优化146
5.7.1 早过滤,勤过滤147
5.7.2 优化满足结合律的操作147
5.7.3 理解函数和闭包的影响149
5.7.4 收集数据的注意事项150
5.7.5 使用配置参数调节和优化应用150
5.7.6 避免低效的分区151
5.7.7 应用性能问题诊断153
5.8 本章小结157
第6章 使用Spark进行SQL与NoSQL编程159
6.1 Spark SQL简介159
6.1.1 Hive简介160
6.1.2 Spark SQL架构164
6.1.3 DataFrame入门166
6.1.4 使用DataFrame177
6.1.5 DataFrame缓存、持久化与重新分区185
6.1.6 保存DataFrame输出186
6.1.7 访问Spark SQL189
6.1.8 练习:使用Spark SQL192
6.2 在Spark中使用NoSQL系统193
6.2.1 NoSQL简介194
6.2.2 在Spark中使用HBase195
6.2.3 练习:在Spark中使用HBase198
6.2.4 在Spark中使用Cassandra200
6.2.5 在Spark中使用DynamoDB202
6.2.6 其他NoSQL平台204
6.3 本章小结204
第7章 使用Spark处理流数据与消息207
7.1 Spark Streaming简介207
7.1.1 Spark Streaming架构208
7.1.2 DStream简介209
7.1.3 练习:Spark Streaming入门216
7.1.4 状态操作217
7.1.5 滑动窗口操作219
7.2 结构化流处理221
7.2.1 结构化流处理数据源222
7.2.2 结构化流处理的数据输出池223
7.2.3 输出模式224
7.2.4 结构化流处理操作225
7.3 在Spark中使用消息系统226
7.3.1 Apache Kafka227
7.3.2 练习:在Spark中使用Kafka232
7.3.3 亚马逊Kinesis235
7.4 本章小结238
第8章 Spark数据科学与机器学习简介241
8.1 Spark与R语言241
8.1.1 R语言简介242
8.1.2 通过R语言使用Spark248
8.1.3 练习:在RStudio中使用SparkR255
8.2 Spark机器学习257
8.2.1 机器学习基础257
8.2.2 使用Spark MLlib进行机器学习260
8.2.3 练习:使用Spark MLlib实现推荐器265
8.2.4 使用Spark ML进行机器学习269
8.3 利用笔记本使用Spark273
8.3.1 利用Jupyter(IPython)笔记本使用Spark273
8.3.2 利用Apache Zeppelin笔记本使用Spark276
8.4 本章小结277
Contents
I: Spark Foundations
1 Introducing Big Data, Hadoop, and Spark 3
Introduction to
第1章 大数据、Hadoop、Spark介绍3
1.1 大数据、分布式计算、Hadoop简介3
1.1.1 大数据与Hadoop简史4
1.1.2 Hadoop详解5
1.2 Apache Spark简介11
1.2.1 Apache Spark背景11
1.2.2 Spark的用途12
1.2.3 Spark编程接口12
1.2.4 Spark程序的提交类型12
1.2.5 Spark应用程序的输入输出类型14
1.2.6 Spark中的RDD14
1.2.7 Spark与Hadoop14
1.3 Python函数式编程15
1.3.1 Python函数式编程用到的数据结构15
1.3.2 Python对象序列化18
1.3.3 Python函数式编程基础21
1.4 本章小结23
第2章 部署Spark25
2.1 Spark部署模式25
2.1.1 本地模式26
2.1.2 Spark独立集群26
2.1.3 基于YARN运行Spark27
2.1.4 基于Mesos运行Spark28
2.2 准备安装Spark28
2.3 获取Spark29
2.4 在Linux或Mac OS X上安装Spark30
2.5 在Windows上安装Spark32
2.6 探索Spark安装目录34
2.7 部署多节点的Spark独立集群35
2.8 在云上部署Spark37
2.8.1 AWS37
2.8.2 GCP39
2.8.3 Databricks40
2.9 本章小结41
第3章 理解Spark集群架构43
3.1 Spark应用中的术语43
3.1.1 Spark驱动器44
3.1.2 Spark工作节点与执行器47
3.1.3 Spark主进程与集群管理器49
3.2 使用独立集群的Spark应用51
3.3 在YARN上运行Spark应用的部署模式51
3.3.1 客户端模式52
3.3.2 集群模式53
3.3.3 回顾本地模式54
3.4 本章小结55
第4章 Spark编程基础57
4.1 RDD简介57
4.2 加载数据到RDD59
4.2.1 从文件创建RDD59
4.2.2 从文本文件创建RDD的方法61
4.2.3 从对象文件创建RDD64
4.2.4 从数据源创建RDD64
4.2.5 从JSON文件创建RDD67
4.2.6 通过编程创建RDD69
4.3 RDD操作70
4.3.1 RDD核心概念70
4.3.2 基本的RDD转化操作75
4.3.3 基本的RDD行动操作79
4.3.4 键值对RDD的转化操作83
4.3.5 MapReduce与单词计数练习90
4.3.6 连接操作93
4.3.7 在Spark中连接数据集98
4.3.8 集合操作101
4.3.9 数值型RDD的操作103
4.4 本章小结106
第二部分 基础拓展
第5章 Spark核心API高级编程109
5.1 Spark中的共享变量109
5.1.1 广播变量110
5.1.2 累加器114
5.1.3 练习:使用广播变量和累加器117
5.2 Spark中的数据分区118
5.2.1 分区概述118
5.2.2 掌控分区119
5.2.3 重分区函数121
5.2.4 针对分区的API方法123
5.3 RDD的存储选项125
5.3.1 回顾RDD谱系125
5.3.2 RDD存储选项126
5.3.3 RDD缓存129
5.3.4 持久化RDD129
5.3.5 选择何时持久化或缓存RDD132
5.3.6 保存RDD检查点132
5.3.7 练习:保存RDD检查点134
5.4 使用外部程序处理RDD136
5.5 使用Spark进行数据采样137
5.6 理解Spark应用与集群配置139
5.6.1 Spark环境变量139
5.6.2 Spark配置属性143
5.7 Spark优化146
5.7.1 早过滤,勤过滤147
5.7.2 优化满足结合律的操作147
5.7.3 理解函数和闭包的影响149
5.7.4 收集数据的注意事项150
5.7.5 使用配置参数调节和优化应用150
5.7.6 避免低效的分区151
5.7.7 应用性能问题诊断153
5.8 本章小结157
第6章 使用Spark进行SQL与NoSQL编程159
6.1 Spark SQL简介159
6.1.1 Hive简介160
6.1.2 Spark SQL架构164
6.1.3 DataFrame入门166
6.1.4 使用DataFrame177
6.1.5 DataFrame缓存、持久化与重新分区185
6.1.6 保存DataFrame输出186
6.1.7 访问Spark SQL189
6.1.8 练习:使用Spark SQL192
6.2 在Spark中使用NoSQL系统193
6.2.1 NoSQL简介194
6.2.2 在Spark中使用HBase195
6.2.3 练习:在Spark中使用HBase198
6.2.4 在Spark中使用Cassandra200
6.2.5 在Spark中使用DynamoDB202
6.2.6 其他NoSQL平台204
6.3 本章小结204
第7章 使用Spark处理流数据与消息207
7.1 Spark Streaming简介207
7.1.1 Spark Streaming架构208
7.1.2 DStream简介209
7.1.3 练习:Spark Streaming入门216
7.1.4 状态操作217
7.1.5 滑动窗口操作219
7.2 结构化流处理221
7.2.1 结构化流处理数据源222
7.2.2 结构化流处理的数据输出池223
7.2.3 输出模式224
7.2.4 结构化流处理操作225
7.3 在Spark中使用消息系统226
7.3.1 Apache Kafka227
7.3.2 练习:在Spark中使用Kafka232
7.3.3 亚马逊Kinesis235
7.4 本章小结238
第8章 Spark数据科学与机器学习简介241
8.1 Spark与R语言241
8.1.1 R语言简介242
8.1.2 通过R语言使用Spark248
8.1.3 练习:在RStudio中使用SparkR255
8.2 Spark机器学习257
8.2.1 机器学习基础257
8.2.2 使用Spark MLlib进行机器学习260
8.2.3 练习:使用Spark MLlib实现推荐器265
8.2.4 使用Spark ML进行机器学习269
8.3 利用笔记本使用Spark273
8.3.1 利用Jupyter(IPython)笔记本使用Spark273
8.3.2 利用Apache Zeppelin笔记本使用Spark276
8.4 本章小结277
Contents
I: Spark Foundations
1 Introducing Big Data, Hadoop, and Spark 3
Introduction to
猜您喜欢