Spark编程基础(Python版)

《Spark编程基础(Python版)》

  • 出版社:人民邮电出版社
  • ISBN:9787115524393
  • 版次:1
  • 商品编码:12637937
  • 品牌:人民邮电出版社
  • 包装:平装
  • 开本:16开
  • 出版时间:2020-04-01
  • 用纸:胶版纸
  • 页数:250
  • 正文语种:中文
基本介绍书籍目录点评信息
  • 书籍内容

    本书以Python作为开发Spark应用程序的编程语言,系统介绍了Spark编程的基础知识。全书共8章,内容包括大数据技术概述、Spark的设计与运行原理、Spark环境搭建和使用方法、RDD编程、Spark SQL、Spark Streaming、Structured Streaming、Spark MLlib等。

    编辑推荐

    1.本书是厦门大学作者团队长期经验总结的结晶。本书是在厦门大学《大数据技术原理与应用》入门级大数据教材的基础之上编写的。为了确保教程质量,在编著出版纸质教材之前,实验室已经于2016年10月通过实验室官网免费发布共享了简化版的Spark在线教程和相关教学资源,同时,该在线教程也已经用于厦门大学计算机科学系研究生的大数据课程教学,并成为全国高校大数据课程教师培训交流班的授课内容。实验室根据读者对在线Spark教程的大量反馈意见以及教学实践中发现的问题,对Spark在线教程进行了多次修正和完善,所有这些前期准备工作,都为纸质教材的编著出版打下了坚实的基础。
    披荆斩棘,在大数据丛林中开辟学习捷径
    填沟削坎,为快速学习Spark 技术铺平道路
    深入浅出,有效降低Spark 技术学习门槛
    资源全面,构建全方位一站式在线服务体系

    作者简介

    林子雨,博士(毕业于北京大学),现为厦门大学计算机科学系助理教授,全国高校知名大数据教师,厦门大学数据库实验室负责人,荣获2013年度和2017年度厦门大学奖教金、2018年厦门大学高等教育教学成果特等奖、2018年福建省高等教育教学成果二等奖和2018年国家精品在线开放课程,中国计算机学会数据库专委会委员,中国计算机学会信息系统专委会委员。曾任厦门大学信息科学与技术学院院长助理、晋江市发展和改革局副局长。主要研究方向为数据库、数据仓库、数据挖掘、大数据,并以第一作者身份在《软件学报》《计算机学报》和《计算机研究与发展》等国家重点期刊以及国际学术会议上发表多篇学术论文。作为项目负责人主持的科研项目包括1项国家自然科学青年基金项目(No.61303004)、1项福建省自然科学青年基金项目(No.2013J05099)和1项中央高校基本科研业务费项目(No.2011121049),主持的教改课题包括1项2016年福建省教改课题和1项2016年教育部产学协作育人项目。编著出版了国内高校第一本系统介绍大数据知识的专业教材《大数据技术原理与应用》,被国内众多高校采用作为开课教材,并成为京东、**网等网店畅销书籍。建设了国内高校**大数据课程公共服务平台,为教师教学和学生学习大数据课程提供全方位、一站式服务,成为国内高校大数据教学****,平台每年访问量超过100万次。
  • 第1 章 大数据技术概述 1
    1.1 大数据概念与关键技术 2
    1.1.1 大数据的概念 2
    1.1.2 大数据关键技术 2
    1.2 代表性大数据技术 4
    1.2.1 Hadoop 4
    1.2.2 Spark 8
    1.2.3 Flink 10
    1.2.4 Beam 11
    1.3 编程语言的选择 12
    1.4 在线资源 13
    1.5 本章小结 14
    1.6 习题 14
    实验1 Linux 系统的安装和常用命令 15
    第2 章 Spark 的设计与运行原理 17
    2.1 概述 18
    2.2 Spark 生态系统 19
    2.3 Spark 运行架构 21
    2.3.1 基本概念 21
    2.3.2 架构设计 21
    2.3.3 Spark 运行基本流程 22
    2.3.4 RDD 的设计与运行原理 24
    2.4 Spark 的部署方式 33
    2.5 本章小结 34
    2.6 习题 34
    第3 章 Spark 环境搭建和使用方法 35
    3.1 安装Spark 36
    3.1.1 基础环境 36
    3.1.2 下载安装文件 36
    3.1.3 配置相关文件 38
    3.1.4 验证Spark 是否安装成功 39
    3.1.5 Spark 和Hadoop 的交互 39
    3.2 在pyspark 中运行代码 40
    3.2.1 pyspark 命令 40
    3.2.2 启动pyspark 41
    3.3 开发Spark 独立应用程序 42
    3.3.1 编写程序 42
    3.3.2 通过spark-submit 运行程序 43
    3.4 Spark 集群环境搭建 44
    3.4.1 集群概况 44
    3.4.2 搭建Hadoop 集群 44
    3.4.3 在集群中安装Spark 45
    3.4.4 配置环境变量 45
    3.4.5 Spark 的配置 46
    3.4.6 启动Spark 集群 47
    3.4.7 关闭Spark 集群 47
    3.5 在集群上运行Spark 应用程序 48
    3.5.1 启动Spark 集群 48
    3.5.2 采用独立集群管理器 48
    3.5.3 采用Hadoop YARN 管理器 49
    3.6 本章小结 51
    3.7 习题 51
    实验2 Spark 和Hadoop 的安装 51
    第4 章 RDD 编程 53
    4.1 RDD 编程基础 54
    4.1.1 RDD 创建 54
    4.1.2 RDD 操作 56
    4.1.3 持久化 63
    4.1.4 分区 64
    4.1.5 一个综合实例 69
    4.2 键值对RDD 71
    4.2.1 键值对RDD 的创建 71
    4.2.2 常用的键值对转换操作 72
    4.2.3 一个综合实例 78
    4.3 数据读写 79
    4.3.1 文件数据读写 79
    4.3.2 读写HBase 数据 82
    4.4 综合实例 86
    4.4.1 求TOP 值 86
    4.4.2 文件排序 89
    4.4.3 二次排序 91
    4.5 本章小结 94
    4.6 习题 95
    实验3 RDD 编程初级实践 95
    第5 章 Spark SQL 98
    5.1 Spark SQL 简介 99
    5.1.1 从Shark 说起 99
    5.1.2 Spark SQL 架构 100
    5.1.3 为什么推出Spark SQL 101
    5.2 DataFrame 概述 101
    5.3 DataFrame 的创建 102
    5.4 DataFrame 的保存 103
    5.5 DataFrame 的常用操作 104
    5.6 从RDD 转换得到DataFrame 105
    5.6.1 利用反射机制推断RDD 模式 106
    5.6.2 使用编程方式定义RDD 模式 107
    5.7 使用Spark SQL 读写数据库 108
    5.7.1 准备工作 109
    5.7.2 读取MySQL 数据库中的数据 109
    5.7.3 向MySQL 数据库写入数据 110
    5.8 本章小结 111
    5.9 习题 112
    实验4 Spark SQL 编程初级实践 112
    第6 章 Spark Streaming 115
    6.1 流计算概述 116
    6.1.1 静态数据和流数据 116
    6.1.2 批量计算和实时计算 117
    6.1.3 流计算概念 117
    6.1.4 流计算框架 118
    6.1.5 流计算处理流程 119
    6.2 Spark Streaming 121
    6.2.1 Spark Streaming 设计 121
    6.2.2 Spark Streaming 与Storm 的对比 122
    6.2.3 从“Hadoop+Storm”架构转向Spark 架构 122
    6.3 DStream 操作概述 123
    6.3.1 Spark Streaming 工作机制 123
    6.3.2 编写Spark Streaming 程序的基本步骤 124
    6.3.3 创建StreamingContext 对象 124
    6.4 基本输入源 125
    6.4.1 文件流 125
    6.4.2 套接字流 127
    6.4.3 RDD 队列流 131
    6.5 高级数据源 133
    6.5.1 Kafka 简介 133
    6.5.2 Kafka 准备工作 133
    6.5.3 Spark 准备工作 135
    6.5.4 编写Spark Streaming 程序使用Kafka 数据源 136
    6.6 转换操作 137
    6.6.1 DStream 无状态转换操作 137
    6.6.2 DStream 有状态转换操作 138
    6.7 输出操作 143
    6.7.1 把DStream 输出到文本文件中 143
    6.7.2 把DStream 写入到关系数据库中 145
    6.8 本章小结 147
    6.9 习题 147
    实验5 Spark Streaming 编程初级实践 147
    第7 章 Structured Streaming 150
    7.1 概述 151
    7.1.1 基本概念 151
    7.1.2 两种处理模型 152
    7.1.3 Structured Streaming 和Spark SQL、Spark Streaming 的关系 154
    7.2 编写Structured Streaming程序的基本步骤 154
    7.2.1 实现步骤 154
    7.2.2 测试运行 156
    7.3 输入源 158
    7.3.1 File 源 158
    7.3.2 Kafka 源 163
    7.3.3 Socket 源 167
    7.3.4 Rate 源 167
    7.4 输出操作 169
    7.4.1 启动流计算 169
    7.4.2 输出模式 170
    7.4.3 输出接收器 170
    7.5 容错处理 173
    7.5.1 从检查点恢复故障 173
    7.5.2 故障恢复中的限制 173
    7.6 迟到数据处理 174
    7.6.1 事件时间 174
    7.6.2 迟到数据 175
    7.6.3 水印 176
    7.6.4 多水印规则 177
    7.6.5 处理迟到数据的实例 178
    7.7 查询的管理和监控 181
    7.7.1 管理和监控的方法 181
    7.7.2 一个监控的实例 182
    7.8 本章小结 184
    7.9 习题 185
    实验6 Structured Streaming编程实践 185
    第8章 Spark MLlib 187
    8.1 基于大数据的机器学习 188
    8.2 机器学习库MLlib 概述 189
    8.3 基本数据类型 190
    8.3.1 本地向量 190
    8.3.2 标注点 191
    8.3.3 本地矩阵 192
    8.4 机器学习流水线 193
    8.4.1 流水线的概念 193
    8.4.2 流水线工作过程 193
    8.5 特征提取、转换和选择 195
    8.5.1 特征提取 195
    8.5.2 特征转换 199
    8.5.3 特征选择 204
    8.5.4 局部敏感哈希 205
    8.6 分类算法 205
    8.6.1 逻辑斯蒂回归分类器 206
    8.6.2 决策树分类器 212
    8.7 聚类算法 217
    8.7.1 K-Means 聚类算法 218
    8.7.2 GMM 聚类算法 220
    8.8 协同过滤算法 223
    8.8.1 推荐算法的原理 223
    8.8.2 ALS 算法 224
    8.9 模型选择和超参数调整 228
    8.9.1 模型选择工具 229
    8.9.2 用交叉验证选择模型 229
    8.10 本章小结 232
    8.11 习题 233
    实验7 Spark 机器学习库MLlib编程实践 233
    参考文献 235
微信公众号

热门文章

更多