新書推薦:
《
海外中国研究·王羲之:六朝贵族的世界(艺术系列)
》
售價:NT$
811.0
《
唐宋绘画史 全彩插图版
》
售價:NT$
449.0
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:NT$
485.0
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
《
分析性一体的涌现:进入精神分析的核心
》
售價:NT$
556.0
《
火枪与账簿:早期经济全球化时代的中国与东亚世界
》
售價:NT$
352.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
|
編輯推薦: |
PySpark可以对大数据进行分布式处理,降低了大数据的学习门槛。本书是一本PySpark入门教材,重点讲述PySpark安装、PySpark用法、ETL数据处理、PySpark机器学习及其实战,*后给出一个综合实战案例。本书逻辑线索清晰,内容体系合理,适合有一定Python基础的大数据分析和处理人员学习使用。
|
內容簡介: |
我国提出新基建概念,要加快大数据中心、人工智能等新型基础设施的建设进度,这无疑需要更多的大数据人才。PySpark可以对大数据进行分布式处理,降低大数据学习门槛,本书正是一本PySpark入门教材,适合有一定Python基础的读者学习使用。 本书分为7章,第1章介绍大数据的基本概念、常用的大数据分析工具;第2章介绍Spark作为大数据处理的特点和算法;第3章介绍Spark实战环境的搭建,涉及Windows和Linux操作系统;第4章介绍如何灵活应用PySpark对数据进行操作;第5章介绍PySpark ETL处理,涉及PySpark读取数据、对数据进行统计分析等数据处理相关内容;第6章介绍PySpark如何利用MLlib库进行分布式机器学习(Titanic幸存者预测);第7章介绍一个PySpark和Kafka结合的实时项目。 本书内容全面、示例丰富,可作为广大PySpark入门读者必备的参考书,同时能作为大中专院校师生的教学参考书,也可作为高等院校计算机及相关专业的大数据技术教材使用。
|
關於作者: |
汪明,硕士,毕业于中国矿业大学,徐州软件协会副理事长,某创业公司合伙人。从事软件行业十余年,发表论文数十篇。著有图书《TypeScript实战》《Go并发编程实战》。
|
目錄:
|
第1章 大数据时代 1
1.1 什么是大数据 1
1.1.1 大数据的特点 2
1.1.2 大数据的发展趋势 3
1.2 大数据下的分析工具 4
1.2.1 Hadoop 5
1.2.2 Hive 6
1.2.3 HBase 6
1.2.4 Apache Phoenix 7
1.2.5 Apache Drill 7
1.2.6 Apache Hudi 7
1.2.7 Apache Kylin 8
1.2.8 Apache Presto 8
1.2.9 ClickHouse 8
1.2.10 Apache Spark 9
1.2.11 Apache Flink 10
1.2.12 Apache Storm 10
1.2.13 Apache Druid 10
1.2.14 Apache Kafka 11
1.2.15 TensorFlow 11
1.2.16 PyTorch 12
1.2.17 Apache Superset 12
1.2.18 Elasticsearch 12
1.2.19 Jupyter Notebook 13
1.2.20 Apache Zeppelin 13
1.3 小结 14
第2章 大数据的瑞士军刀Spark 15
2.1 Hadoop与生态系统 15
2.1.1 Hadoop概述 15
2.1.2 HDFS体系结构 19
2.1.3 Hadoop生态系统 20
2.2 Spark与Hadoop 23
2.2.1 Apache Spark概述 23
2.2.2 Spark和Hadoop比较 24
2.3 Spark核心概念 25
2.3.1 Spark软件栈 25
2.3.2 Spark运行架构 26
2.3.3 Spark部署模式 27
2.4 Spark基本操作 29
2.5 SQL in Spark 33
2.6 Spark与机器学习 33
2.6.1 决策树算法 35
2.6.2 贝叶斯算法 36
2.6.3 支持向量机算法 36
2.6.4 随机森林算法 37
2.6.5 人工神经网络算法 38
2.6.6 关联规则算法 39
2.6.7 线性回归算法 40
2.6.8 KNN算法 40
2.6.9 K-Means算法 41
2.7 小结 42
第3章 Spark实战环境设定 43
3.1 建立Spark环境前提 43
3.1.1 CentOS 7安装 45
3.1.2 FinalShell安装 55
3.1.3 PuTTY安装 58
3.1.4 JDK安装 60
3.1.5 Python安装 63
3.1.6 Visual Studio Code安装 64
3.1.7 PyCharm安装 65
3.2 一分钟建立Spark环境 66
3.2.1 Linux搭建Spark环境 66
3.2.2 Windows搭建Spark环境 69
3.3 建立Hadoop集群 79
3.3.1 CentOS配置 79
3.3.2 Hadoop伪分布模式安装 81
3.3.3 Hadoop完全分布模式安装 87
3.4 安装与配置Spark集群 93
3.5 安装与配置Hive 99
3.5.1 Hive安装 99
3.5.2 Hive与Spark集成 108
3.6 打造交互式Spark环境 110
3.6.1 Spark Shell 111
3.6.2 PySpark 112
3.6.3 Jupyter Notebook安装 112
3.7 小结 118
第4章 活用PySpark 119
4.1 Python 语法复习 119
4.1.1 Python基础语法 120
4.1.2 Python变量类型 124
4.1.3 Python运算符 135
4.1.4 Python控制语句 139
4.1.5 Python函数 143
4.1.6 Python模块和包 149
4.1.7 Python面向对象 154
4.1.8 Python异常处理 157
4.1.9 Python JSON处理 159
4.1.10 Python日期处理 160
4.2 用PySpark建立第一个Spark RDD 161
4.2.1 PySpark Shell 建立RDD 163
4.2.2 VSCode编程建立RDD 165
4.2.3 Jupyter 编程建立RDD 167
4.3 RDD的操作与观察 168
4.3.1 first操作 169
4.3.2 max操作 169
4.3.3 sum操作 170
4.3.4 take操作 171
4.3.5 top操作 172
4.3.6 count操作 172
4.3.7 collect操作 173
4.3.8 collectAsMap操作 174
4.3.9 countByKey操作 175
4.3.10 countByValue操作 175
4.3.11 glom操作 176
4.3.12 coalesce操作 177
4.3.13 combineByKey操作 178
4.3.14 distinct操作 179
4.3.15 filter操作 180
4.3.16 flatMap操作 181
4.3.17 flatMapValues操作 181
4.3.18 fold操作 182
4.3.19 foldByKey操作 183
4.3.20 foreach操作 184
4.3.21 foreachPartition操作 185
4.3.22 map操作 186
4.3.23 mapPartitions操作 187
4.3.24 mapPartitionsWithIndex操作 187
4.3.25 mapValues操作 188
4.3.26 groupBy操作 189
4.3.27 groupByKey操作 190
4.3.28 keyBy操作 191
4.3.29 keys操作 192
4.3.30 zip操作 193
4.3.31 zipWithIndex操作 194
4.3.32 values操作 194
4.3.33 union操作 195
4.3.34 takeOrdered操作 196
4.3.35 takeSample操作 197
4.3.36 subtract操作 198
4.3.37 subtractByKey操作 198
4.3.38 stats操作 199
4.3.39 sortBy操作 200
4.3.40 sortByKey操作 201
4.3.41 sample操作 202
4.3.42 repartition操作 203
4.3.43 reduce操作 204
4.3.44 reduceByKey操作 205
4.3.45 randomSplit操作 206
4.3.46 lookup操作 207
4.3.47 join操作 208
4.3.48 intersection操作 209
4.3.49 fullOuterJoin操作 210
4.3.50 leftOuterJoin与rightOuterJoin操作 211
4.3.51 aggregate操作 212
4.3.52 aggregateByKey操作 215
4.3.53 cartesian操作 217
4.3.54 cache操作 218
4.3.55 saveAsTextFile操作 218
4.4 共享变数 220
4.4.1 广播变量 220
4.4.2 累加器 221
4.5 DataFrames与Spark SQL 223
4.5.1 DataFrame建立 223
4.5.2 Spark SQL基本用法 228
4.5.3 DataFrame基本操作 231
4.6 撰写第一个Spark程序 245
4.7 提交你的 Spark 程序 246
4.8 小结 248
第5章 PySpark ETL 实战 249
5.1 认识资料单元格式 249
5.2 观察资料 255
5.3 选择、筛选与聚合 267
5.4 存储数据 269
5.5 Spark存储数据到SQL Server 272
5.6 小结 275
第6章 PySpark分布式机器学习 276
6.1 认识数据格式 277
6.2 描述统计 280
6.3 资料清理与变形 284
6.4 认识Pipeline 288
6.5 逻辑回归原理与应用 290
6.5.1 逻辑回归基本原理 290
6.5.2 逻辑回归应用示例:Titanic幸存者预测 291
6.6 决策树原理与应用 295
6.6.1 决策树基本原理 295
6.6.2 决策树应用示例:Titanic幸存者预测 296
6.7 小结 299
第7章 实战:PySpark Kafka实时项目 301
7.1 Kafka和Flask环境搭建 301
7.2 代码实现 303
7.3 小结 310
|
內容試閱:
|
PySpark是Apache Spark为Python开发人员提供的编程API接口,以便开发人员用Python语言对大数据进行分布式处理,可降低大数据处理的门槛。
PySpark优势有哪些?首先PySpark是基于Python语言的,简单易学。其次,PySpark可以非常方便地对大数据进行处理,其中可用SQL方便地从Hadoop、Hive及其他文件系统中读取数据并进行统计分析。最后,PySpark编写的大数据处理程序,容易维护,且部署方便。
PySpark可以从多种数据源中读取数据,并可以对数据进行统计分析和处理,其中包括批处理、流处理、图计算和机器学习模型构建等。它还可以将数据处理的结果持久化到多种文件系统中,为大数据UI展现提供数据支持。PySpark比JavaScala更容易学习,借助IDE开发工具,可以非常方便地进行代码编写和调试。
如果你对大数据处理有一定兴趣,了解基本的编程知识,立志构建大数据处理的相关应用,那么本书将适合你。本书作为PySpark的入门教材,由浅入深地对PySpark大数据处理方法进行介绍,特别对常用的操作、ETL处理和机器学习进行详细的说明,最后结合实战项目将各个知识点有机整合,做到理论联系实际。
本书特点
(1)理论联系实际,先从大数据基本概念出发,然后对Hadoop生态、Spark架构和部署方式等知识点进行讲解,并结合代码进行阐述,最后通过一个实战项目来说明如何从头到尾搭建一个实时的大数据处理演示程序。
(2)深入浅出、轻松易学,以实例为主线,激发读者的阅读兴趣,让读者能够真正学习到PySpark最实用、最前沿的技术。
(3)技术新颖、与时俱进,结合时下最热门的技术,如Spark、Python和机器学习等,让读者在学习PySpark的同时,熟悉更多相关的先进技术。
(4)贴心提醒,本书根据需要在各章使用了很多注意小栏目,让读者可以在学习过程中更轻松地理解相关知识点及概念。
源码下载
本书配套的源码,请用微信扫描右边二维码获取(可以击页面上的推送到我的邮箱,填入自己的邮箱,到邮箱中下载)。如果阅读中存在疑问,请联系booksaga@163.com,邮件主题为Python大数据处理库PySpark实战。
本书运行环境说明
本书使用的系统为Windows 7宿主操作系统上安装VMware Workstation 15.5,再安装CentOS 7。PySpark运行环境搭建在CentOS 7上。读者学习本书需要有CentOS 7系统管理的基础知识。
本书读者
有一定Python编程基础的初学者
大数据处理与分析人员
从事后端开发,对大数据开发有兴趣的人员
想用Python构建大数据处理应用的人员
想要掌握大数据处理技术的高等院校师生
大数据技术培训学校的师生
本书作者
汪明,硕士,毕业于中国矿业大学,徐州软件协会副理事长,某创业公司合伙人。从事软件行业十余年,发表论文数十篇。著有图书《TypeScript实战》《Go并发编程实战》。
著者
2021年1月
|
|