首页  软件  游戏  图书  电影  电视剧

请输入您要查询的图书:

 

图书 Spark大数据分析
内容
作者简介
"刘景泽
全栈工程师,长期从事大数据的研发工作,拥有丰富的大数据开发经验。
曾担任多家知名企的主力研发,并负责大数据云服务组件开发。
精通Java、Scala、Python等多种编程语言,擅长大数据生态圈的研发、算法、逆向工程等技术。
为多家企业提供技术支持,并长期面向企业一线开发人员分享实战经验。
"
目录
=篇 准备
-
章 认识大数据和Spark\t2
1.1 大数据的介绍\t2
1.2 Apache Spark能做什么\t3
1.3 其他分布式数据处理框架\t4
1.4 如何使用本书\t4
?1.4.1 需要提前具备的基础\t4
?1.4.2 准备相关开发环境\t4
?1.4.3 如何学习本书\t5
-
第2章 安装与配置Spark集群\t6
2.1 下载Spark安装包\t6
2.2 检查与准备集群环境\t7
2.3 了解目前集群中已经部署的框架服务\t11
2.4 部署Spark集群\t12
?2.4.1 实例1:基于Standalone模式部署Spark集群\t12
?2.4.2 实例2:部署Spark的历史服务――Spark History Server\t16
?2.4.3 实例3:基于Standalone模式部署高可用的Master服务\t18
?2.4.4 实例4:基于YARN模式部署Spark集群\t20
?2.4.5 Standalone模式与YARN模式的特点\t22
2.5 本章小结\t23
-
第3章 个Spark程序\t24
3.1 运行个Spark程序\t24
?3.1.1 实例5:基于Standalone模式运行个Spark程序\t24
?3.1.2 实例6:基于YARN模式运行个Spark程序\t27
?3.1.3 提交Spark程序时的参数规范\t30
3.2 使用spark-shell编写并运行WordCount程序\t30
?3.2.1 实例7:启动spark-shell\t31
?3.2.2 实例8:在spark-shell中编写WordCount程序\t32
3.3 使用IDEA编写并运行WordCount程序\t34
?3.3.1 实例9:准备开发环境,并构建代码工程\t34
?3.3.2 实例10:使用IDEA编写WordCount程序\t41
?3.3.3 实例11:在IDEA中本地运行WordCount程序\t44
?3.3.4 实例12:在IDEA中远程运行WordCount程序\t46
?3.3.5 实例13:打包程序,并提交至集群运行\t48
3.4 本章小结\t49
=
第2篇 入门
-
第4章 读写分布式数据――基于Spark Core\t52
4.1 RDD的诞生\t52
4.2 进一步理解RDD\t53
?4.2.1 数据存储\t53
?4.2.2 数据分析\t55
?4.2.3 程序调度\t56
4.3 读取数据并生成RDD\t57
?4.3.1 实例14:读取普通文本数据\t58
?4.3.2 实例15:读取JSON格式的数据\t59
?4.3.3 实例16:读取CSV、TSV格式的数据\t61
?4.3.4 实例17:读取SequenceFile格式的数据\t62
?4.3.5 实例18:读取Object格式的数据\t64
?4.3.6 实例19:读取HDFS中的数据――显式调用Hadoop API\t66
?4.3.7 实例20:读取MySQL数据库中的数据\t68
4.4 保存RDD中的数据到外部存储\t70
?4.4.1 实例21:保存成普通文本文件\t70
?4.4.2 实例22:保存成JSON文件\t71
?4.4.3 实例23:保存成CSV、TSV文件\t73
?4.4.4 实例24:保存成SequenceFile文件\t74
?4.4.5 实例25:保存成Object文件\t75
?4.4.6 实例26:保存成HDFS文件――显式调用Hadoop API的方式\t76
?4.4.7 实例27:写入MySQL数据库\t78
4.5 本章小结\t80
-
第5章 处理分布式数据――基于Spark Core\t81
5.1 RDD的转换(transformations)操作――转换数据形态\t81
?5.1.1 实例28:基础转换操作\t81
?5.1.2 实例29:键值对转换操作\t103
5.2 RDD的行动(actions)操作――触发执行任务计划\t115
?5.2.1 实例30:基础行动操作\t116
?5.2.2 实例31:键值对行动操作\t125
?5.2.3 实例32:数值行动操作\t127
5.3 本章小结\t128
=
第3篇 进阶
-
第6章 RDD的不错操作\t130
6.1 缓存RDD\t130
?6.1.1 缓存RDD的基础知识\t130
?6.1.2 实例33:缓存与释放RDD\t133
6.2 RDD的检查点(Checkpoint)机制\t139
?6.2.1 了解Checkpoint机制\t139
?6.2.2 实例34:使用Checkpoint机制\t141
?6.2.3 Checkpoint机制的工作流程\t144
6.3 RDD的依赖关系\t145
?6.3.1 窄依赖(narrow dependencies)\t145
?6.3.2 宽依赖(wide/shuffle dependencies)\t148
?6.3.3 实例35:让子RDD混合依赖依赖多个父RDD\t151
?6.3.4 实例36:词频统计――总结运算过程涉及的概念\t153
6.4 累加器(Accumulator)\t155
?6.4.1 认识累加器\t155
?6.4.2 实例37:使用系统累加器1――长整数、双精度浮点数累加器\t156
?6.4.3 实例38:使用系统累加器2――集合累加器\t159
?6.4.4 实例39:自定义累加器\t160
6.5 广播(Broadcast)――将数据块缓存到所有节点\t164
?6.5.1 认识广播\t165
?6.5.2 实例40:使用广播补全数据\t165
6.6 本章小结\t168
-
第7章 用SQL语法分析结构化数据――基于Spark SQL\t169
7.1 为什么会产生Spark SQL\t169
7.2 认识DataFrame与Dataset数据类型\t170
?7.2.1 认识DataFrame\t170
?7.2.2 认识Dataset\t171
7.3 实例41:通过Dataset、DataFrame分析用户数据\t172
?7.3.1 用spark-shell编写程序\t172
?7.3.2 用IDEA编写程序\t175
7.4 不同Spark版本的操作差异\t177
?7.4.1 认识SQLContext与HiveContext\t178
?7.4.2 认识SparkSession\t178
7.5 DataFrame、Dataset的基本操作\t179
?7.5.1 DSL与SQL的语法风格\t179
?7.5.2 使用临时视图的注意事项\t181
?7.5.3 实例42:读取JSON、CSV格式的数据\t183
?7.5.4 实例43:读取Parquet格式的数据\t185
?7.5.5 实例44:读取代码中动态生成的数据\t185
?7.5.6 实例45:读取关系型数据库中的数据\t188
?7.5.7 实例46:输出Dataset、DataFrame中的数据\t189
?7.5.8 实例47:RDD、DataFrame、Dataset之间的相互转换\t192
7.6 用户自定义函数\t195
?7.6.1 实例48:实现“一进一出”的UDF\t195
?7.6.2 实例49:实现“多进一出”的UDAF\t198
?7.6.3 实例50:实现“一进多出”的UDTF\t208
7.7 集成Spark SQL与Hive\t211
?7.7.1 已经部署Hive框架\t211
?7.7.2 尚未部署Hive框架\t215
7.8 本章小结\t215
-
第8章 实时处理流式数据――基于Spark Streaming\t216
8.1 为什么会产生Spark Streaming\t216
8.2 个Spark Streaming程序\t216
?8.2.1 实例51:用spark-shell编写程序\t216
?8.2.2 实例52:用IDEA编写程序\t221
8.3 什么是DStream\t222
?8.3.1 认识DStream\t222
?8.3.2 认识DStreamGraph\t223
8.4 读取数据到DStream中\t227
?8.4.1 实例53:读取HDFS文件夹中的数据\t227
?8.4.2 实例54:读取RDD组成的数据队列\t229
?8.4.3 实例55:实时读取Flume中的数据\t230
?8.4.4 实例56:用高阶API实时读取Kafka中的数据\t235
?8.4.5 实例57:用低阶API实时读取Kafka中的数据\t242
8.5 Spark Streaming中的几个时间概念\t251
?8.5.1 批处理间隔\t251
?8.5.2 窗口时间宽度与滑动时间宽度\t252
?8.5.3 实例58:使用窗口操作,每两秒钟统计10秒内的平均温度\t254
8.6 DStream的操作总结\t259
?8.6.1 DStream的操作说明\t259
?8.6.2 实例59:直接面向DStream中的RDD进行数据分析\t261
?8.6.3 实例60:将DStream中的数据实时输出至外部存储系统\t263
?8.6.4 实例61:对Dstream进行join操作\t267
8.7 DStream中的转换分类\t269
?8.7.1 无状态转换\t269
?8.7.2 有状态转换\t270
?8.7.3 实例:用有状态转换做全局词频统计\t270
8.8 在Spark Streaming中的缓存与Checkpoint\t272
?8.8.1 认识Spark Streaming中的Checkpoint\t273
?8.8.2 实例62:使用Spark Streaming中的Checkpoint\t273
8.9 Spark Streaming中的累加器与广播变量\t276
?8.9.1 认识累加器与广播变量\t276
?8.9.2 实例63:自定义累加器,并结合无状态转换,实现实时的全局词频统计\t276
8.10 关闭Spark Streaming程序\t280
?8.10.1 关闭程序的方案\t281
?8.10.2 实例64:合理关闭一个运行中的Spark Streaming程序\t281
8.11 本章小结\t284
=
第4篇 高阶
-
第9章 实时处理流式数据――基于Structured Streaming\t286
9.1 为什么会产生Structured Streaming\t286
9.2 个Structured Streaming程序\t287
?9.2.1 实例65:用spark-shell编写程序\t287
?9.2.2 实例66:用IDEA编写程序\t289
9.3 Structured Streaming的编程模型\t291
9.4 输入数据――生成Streaming Dataset、 Streaming DataFrame\t292
?9.4.1 实例67:根据文件生成工作流\t292
?9.4.2 实例68:根据文件、文件夹生成自动分区的工作流\t295
?9.4.3 实例69:根据Kafka以Streaming模式生成工作流\t297
?9.4.4 实例70:以Kafka为数据源,通过Batch方式生成工作流\t300
?9.4.5 实例71:根据指定速率生成工作流\t304
9.5 基于事件时间的窗口操作\t305
?9.5.1 事件时间窗口的工作方式\t305
?9.5.2 实例72:事件时间窗口的生成规则\t307
?9.5.3 实例73:基于事件时间窗口实现词频统计\t311
9.6 基于Watermark处理延迟数据\t314
?9.6.1 Watermark的作用\t314
?9.6.2 实例74:基于Update模式实现词频统计,并结合Watermark处理延迟数据\t314
?9.6.3 实例75:基于Append模式实现词频统计,并结合Watermark处理延迟数据\t320
?9.6.4 Watermark的底层工作原理\t322
?9.6.5 总结:Watermark机制与输出模式\t329
9.7 实例76:在处理流式数据时去除重复数据\t330
9.8 Structured Streaming中的join操作\t332
?9.8.1 实例77:在Stream-Static模式下的inner join操作\t333
?9.8.2 实例78:在Stream-Stream模式下的inner join操作\t335
?9.8.3 总结:已经支持的join操作\t340
9.9 在Structured Streaming中实现数据分组, 并手动维护分组状态\t341
?9.9.1 实例79:通过mapGroupsWithState实现数据分组,并手动维护分组状态\t341
?9.9.2 实例80:通过flatMapGroupsWithState实现数据分组,并手动维护分组状态\t347
?9.9.3 总结:手动维护状态与Watermark的使用技巧\t352
9.10 输出分析结果\t353
?9.10.1 输出模式(Output Mode)的使用场景\t353
?9.10.2 实例81:基于File Sink输出数据\t354
?9.10.3 实例82:基于Kafka Sink,以Streaming方式输出数据\t356
?9.10.4 实例83:基于Kafka Sink,以Batch方式输出数据\t358
?9.10.5 实例84:基于Console Sink输出数据\t360
?9.10.6 实例85:基于Memory Sink输出数据\t360
?9.10.7 实例86:基于Foreach Sink输出数据\t362
?9.10.8 实例87:基于ForeachBatch Sink输出数据\t367
?9.10.9 总结:不同Sink所适用的输出模式\t369
9.11 Trigger触发器的分类\t370
9.12 管理与监控工作流\t370
?9.12.1 管理工作流\t370
?9.12.2 监控工作流\t372
9.13 Structured Streaming中的Checkpoint机制\t372
9.14 连续处理模式――Continuous Processing\t373
9.15 本章小结\t374
-
0章 Spark的相关优化\t375
10.1 优化Spark程序\t375
?10.1.1 实例88:尽可能减少或避免出现Shuffle过程\t375
?10.1.2 实例89:使用Kryo作为序列化方案\t377
?10.1.3 尽可能批量操作数据\t381
?10.1.4 合理设置分区数\t381
?10.1.5 合理设置批处理间隔\t381
10.2 优化数据\t382
?10.2.1 关于数据倾斜\t382
?10.2.2 实例90:使用自定义Partitioner缓解数据倾斜\t383
?10.2.3 关于数据补全\t387
10.3 调优资源\t388
10.4 本章小结\t390
=
第5篇 商业项目实战
-
1章 实战:学生学习情况分析系统\t392
11.1 项目概述\t392
?11.1.1 业务背景\t392
?11.1.2 划分业务模块\t392
11.2 开发环境说明\t393
11.3 项目实现\t394
?11.3.1 构建工程\t394
?11.3.2 模拟数据\t395
?11.3.3 实时发送数据到Kafka\t399
?11.3.4 实时分析平台答题数据\t402
?11.3.5 构建推荐模型\t405
?11.3.6 实时推荐题目\t411
?11.3.7 离线学情分析\t415
11.4 本章小结\t422
内容推荐
本书讲解了网络大数据时代应运而生的、能高效迅捷地分析处理数据的工具——Spark,它带领读者快速掌握用Spark收集、计算、简化和保存海量数据的方法,学会交互、迭代和增量式分析,解决分区、数据本地化和自定义序列化等问题。
标签
缩略图
书名 Spark大数据分析
副书名
原作名
作者 刘景泽
译者
编者 编者:刘景泽
绘者
出版社 电子工业出版社
商品编码(ISBN) 9787121370519
开本 24cm
页数 436
版次 1
装订 平装
字数 654000
出版时间 2019-07-01
首版时间 2019-07-01
印刷时间 2019-07-01
正文语种 CHI
读者对象 数据处理软件研究人员
适用范围
发行范围 公开发行
发行模式 实体书
首发网站
连载网址
图书大类 教育考试-考试-计算机类
图书小类
重量 692
CIP核字 2019140115
中图分类号 TP274
丛书名
印张 27.25
印次 1
出版地 北京
234
185
24cm
整理
媒质
用纸
是否注音
影印版本
出版商国别 CN
是否套装
著作权合同登记号
版权提供者
定价 89.00
印数
出品方
作品荣誉
主角
配角
其他角色
一句话简介
立意
作品视角
所属系列
文章进度
内容简介
作者简介
目录
文摘
安全警示 适度休息有益身心健康,请勿长期沉迷于阅读小说。
随便看

 

兰台网图书档案馆全面收录古今中外各种图书,详细介绍图书的基本信息及目录、摘要等图书资料。

 

Copyright © 2004-2025 xlantai.com All Rights Reserved
更新时间:2025/5/12 21:27:24