Spark与Hadoop大数据分析 PDF

编辑推荐

大数据分析行业正在从MapReduce转向Spark。因此,《Spark与Hadoop大数据分析》深入讨论了Spark相比MapReduce的优势,从而揭示出它在内存计算速度方面的好处。我们还会讲解如何运用DataFrame API、Data Sources API,以及新的Dataset API来构建大数据分析应用程序。书中还讲解了如何使用Spark Streaming配合Apache Kafka和HBase进行实时数据分析,以帮助构建流式应用程序(streamingapplication)。新的结构化流(StructuredStreaming)概念会通过物联网(InternetofThings,IOT)用例来解释。在《Spark与Hadoop大数据分析》中,机器学习技术会使用MLLib、机器学习流水线和SparkR来实现;图分析则会利用Spark的GraphX和GraphFrames组件包来进行。
《Spark与Hadoop大数据分析》还介绍了基于Web的笔记本(如Jupyter和Apache Zeppelin)和数据流工具Apache NiFi,它们用于分析和可视化数据,以及利用Livy服务器把Spark作为一个服务提供给用户。

作者简介

作者:(美国)文卡特·安卡姆(Venkat Ankam) 译者:吴今朝

文卡特·安卡姆(Venkat Ankam),有超过18年的IT经验和5年以上的大数据技术经验,与客户一起设计和开发过可扩展的大数据应用程序。他在利用Hadoop和Spark进行大数据分析方面拥有丰富的经验,与全球很多客户进行了合作。他是Cloudera认证的Hadoop开发者和管理员,也是Databricks认证的Spark开发者。他还是一些全球Hadoop和Spark会议小组的创始人和主持人,热爱与社区分享知识。

目录

译者序
前言
第1章从宏观视角看大数据分析1
1.1大数据分析以及Hadoop和Spark在其中承担的角色3
1.1.1典型大数据分析项目的生命周期4
1.1.2Hadoop和Spark承担的角色6
1.2大数据科学以及Hadoop和Spark在其中承担的角色6
1.2.1从数据分析到数据科学的根本性转变6
1.2.2典型数据科学项目的生命周期8
1.2.3Hadoop和Spark承担的角色9
1.3工具和技术9
1.4实际环境中的用例11
1.5小结12
第2章Apache Hadoop和Apache Spark入门13
2.1Apache Hadoop概述13
2.1.1Hadoop分布式文件系统14
2.1.2HDFS的特性15
2.1.3MapReduce16
2.1.4MapReduce的特性17
2.1.5MapReducev1与MapReducev2对比17
2.1.6YARN18
2.1.7Hadoop上的存储选择20
2.2Apache Spark概述24
2.2.1Spark的发展历史24
2.2.2Apache Spark是什么25
2.2.3Apache Spark不是什么26
2.2.4MapReduce的问题27
2.2.5Spark的架构28
2.3为何把Hadoop和Spark结合使用31
2.3.1Hadoop的特性31
2.3.2Spark的特性31
2.4安装Hadoop和Spark集群33
2.5小结36
第3章深入剖析Apache Spark37
3.1启动Spark守护进程37
3.1.1使用CDH38
3.1.2使用HDP、MapR和Spark预制软件包38
3.2学习Spark的核心概念39
3.2.1使用Spark的方法39
3.2.2弹性分布式数据集41
3.2.3Spark环境43
3.2.4变换和动作44
3.2.5RDD中的并行度46
3.2.6延迟评估49
3.2.7谱系图50
3.2.8序列化51
3.2.9在Spark中利用Hadoop文件格式52
3.2.10数据的本地性53
3.2.11共享变量54
3.2.12键值对RDD55
3.3Spark程序的生命周期55
3.3.1流水线57
3.3.2Spark执行的摘要58
3.4Spark应用程序59
3.4.1SparkShell和Spark应用程序59
3.4.2创建Spark环境59
3.4.3SparkConf59
3.4.4SparkSubmit60
3.4.5Spark配置项的优先顺序61
3.4.6重要的应用程序配置61
3.5持久化与缓存62
3.5.1存储级别62
3.5.2应该选择哪个存储级别63
3.6Spark资源管理器:Standalone、YARN和Mesos63
3.6.1本地和集群模式63
3.6.2集群资源管理器64
3.7小结67
第4章利用Spark SQL、Data—Frame和Dataset进行大数据分析69
4.1Spark SQL的发展史70
4.2Spark SQL的架构71
4.3介绍Spark SQL的四个组件72
4.4DataFrame和Dataset的演变74
4.4.1RDD有什么问题74
4.4.2RDD变换与Dataset和DataFrame变换75
4.5为什么要使用Dataset和DataFrame75
4.5.1优化76
4.5.2速度76
4.5.3自动模式发现77
4.5.4多数据源,多种编程语言77
4.5.5RDD和其他API之间的互操作性77
4.5.6仅选择和读取必要的数据78
4.6何时使用RDD、Dataset和DataFrame78
4.7利用DataFrame进行分析78
4.7.1创建SparkSession79
4.7.2创建DataFrame79
4.7.3把DataFrame转换为RDD82
4.7.4常用的Dataset/DataFrame操作83
4.7.5缓存数据84
4.7.6性能优化84
4.8利用Dataset API进行分析85
4.8.1创建Dataset85
4.8.2把DataFrame转换为Dataset86
4.8.3利用数据字典访问元数据87
4.9Data Sources API87
4.9.1读和写函数88
4.9.2内置数据源88
4.9.3外部数据源93
4.10把Spark SQL作为分布式SQL引擎97
4.10.1把Spark SQL的Thrift服务器用于JDBC/ODBC访问97
4.10.2使用beeline客户端查询数据98
4.10.3使用spark—sql CLI从Hive查询数据99
4.10.4与BI工具集成100
4.11Hive on Spark100
4.12小结100
第5章利用Spark Streaming和Structured Streaming进行实时分析102
5.1实时处理概述103
5.1.1Spark Streaming的优缺点104
5.1.2Spark Streaming的发展史104
5.2Spark Streaming的架构104
5.2.1Spark Streaming应用程序流106
5.2.2无状态和有状态的流处理107
5.3Spark Streaming的变换和动作109
5.3.1union109
5.3.2join109
5.3.3transform操作109
5.3.4updateStateByKey109
5.3.5mapWithState110
5.3.6窗口操作110
5.3.7输出操作111
5.4输入数据源和输出存储111
5.4.1基本数据源112
5.4.2高级数据源112
5.4.3自定义数据源112
5.4.4接收器的可靠性112
5.4.5输出存储113
5.5使用Kafka和HBase的Spark Streaming113
5.5.1基于接收器的方法114
5.5.2直接方法(无接收器)116
5.5.3与HBase集成117
5.6Spark Streaming的高级概念118
5.6.1使用DataFrame118
5.6.2MLlib操作119
5.6.3缓存/持久化119
5.6.4Spark Streaming中的容错机制119
5.6.5Spark Streaming应用程序的性能调优121
5.7监控应用程序122
5.8结构化流概述123
5.8.1结构化流应用程序的工作流123
5.8.2流式Dataset和流式DataFrame
5.8.3流式Dataset和流式DataFrame的操作
5.9小结129
第6章利用Spark和Hadoop的笔记本与数据流
6.1基于网络的笔记本概述
6.2Jupyter概述
6.2.1安装Jupyter
6.2.2用Jupyter进行分析134
6.3Apache Zeppelin概述
6.3.1Jupyter和Zeppelin对比
6.3.2安装ApacheZeppelin
6.3.3使用Zeppelin进行分析
6.4Livy REST作业服务器和Hue笔记本140
6.4.1安装设置Livy服务器和Hue
6.4.2使用Livy服务器
6.4.3Livy和Hue笔记本搭配使用
6.4.4Livy和Zeppelin搭配使用
6.5用于数据流的Apache NiFi概述
6.5.1安装Apache NiFi
6.5.2把NiFi用于数据流和分析
6.6小结
第7章利用Spark和Hadoop进行机器学习
7.1机器学习概述153
7.2在Spark和Hadoop上进行机器学习
7.3机器学习算法155
7.3.1有监督学习
7.3.2无监督学习156
7.3.3推荐系统157
7.3.4特征提取和变换157
7.3.5优化158
7.3.6Spark MLlib的数据类型
7.4机器学习算法示例160
7.5构建机器学习流水线163
7.5.1流水线工作流的一个示例163
7.5.2构建一个ML流水线164
7.5.3保存和加载模型
7.6利用H2O和Spark进行机器学习167
7.6.1为什么使用Sparkling Water
7.6.2YARN上的一个应用程序流167
7.6.3Sparkling Water入门168
7.7Hivemall概述
7.8Hivemall for Spark概述
7.9小结170
第8章利用Spark和Mahout构建推荐系统
8.1构建推荐系统171
8.1.1基于内容的过滤172
8.1.2协同过滤172
8.2推荐系统的局限性173
8.3用MLlib实现推荐系统173
8.3.1准备环境174
8.3.2创建RDD175
8.3.3利用DataFrame探索数据176
8.3.4创建训练和测试数据集178
8.3.5创建一个模型178
8.3.6做出预测179
8.3.7利用测试数据对模型进行评估179
8.3.8检查模型的准确度
8.3.9显式和隐式反馈181
8.4Mahout和Spark的集成181
8.4.1安装Mahout
8.4.2探索Mahoutshell
8.4.3利用Mahout和搜索工具构建一个通用的推荐系统
8.5小结189
第9章利用GraphX进行图分析
9.1图处理概述190
9.1.1图是什么191
9.1.2图数据库和图处理系统191
9.1.3GraphX概述
9.1.4图算法192
9.2GraphX入门193
9.2.1GraphX的基本操作
9.2.2图的变换198
9.2.3GraphX算法
9.3利用GraphX分析航班数据205
9.4GraphFrames概述
9.4.1模式发现
9.4.2加载和保存GraphFrames
9.5小结212
第10章利用SparkR进行交互式分析
10.1R语言和SparkR概述
10.1.1R语言是什么
10.1.2SparkR概述
10.1.3SparkR架构
10.2SparkR入门
10.2.1安装和配置R
10.2.2使用SparkRshell
10.2.3使用SparkR脚本
10.3在SparkR里使用DataFrame
10.4在RStudio里使用SparkR
10.5利用SparkR进行机器学习
10.5.1利用朴素贝叶斯模型230
10.5.2利用K均值模型
10.6在Zeppelin里使用SparkR
10.7小结

 

Spark与Hadoop大数据分析  PDF

电子版地址:

https://weidian.com/item.html?itemID=2601556247
微信:K517855150

未经允许不得转载:那个男孩爱着她 » Spark与Hadoop大数据分析 PDF
赞(0)