¥ 13.3 2.3折 ¥ 59 全新
仅1件
作者高彦杰、倪亚宇 著
出版社机械工业出版社
出版时间2016-01
版次1
装帧平装
货号9787111523079
上书时间2024-11-29
这是一本根据应用场景讲解如何通过Spark进行大数据分析与应用构建的著作,以实战为导向。作者结合典型应用场景,抽象出通用与简化后的模型,以便于读者能举一反三,直接应用。
本书首先从技术层面讲解了Spark的机制、生态系统与开发相关的内容;然后从应用角度讲解了日志分析、推荐系统、情感分析、协同过滤、搜索引擎、社交网络分析、新闻数据分析等多个常见的大数据场景下的数据分析。在每个场景中,首先是对场景进行抽象与概括,然后将Spark融入其中构建数据分析算法与应用,最后结合其他开源系统或工具构建更为丰富的数据分析流水线。
高彦杰,
毕业于中国人民大学,就职于微软亚洲研究院。开源技术爱好者,对Spark及其他开源大数据系统与技术有较为深入的认识和研究,实践经验丰富。较早接触并使用Spark,对Spark应用开发、Spark系统的运维和测试比较熟悉,深度阅读了Spark的源代码,了解Spark的运行机制,擅长Spark的查询优化。
曾著有畅销书《Spark大数据处理:技术、应用与性能优化》。
倪亚宇,
清华大学自动化系在读博士研究生,曾于微软亚洲研究院、IBM研究院实习。对大规模的推荐系统和机器学习算法有较为深入的研究和丰富的实践经验。
前 言
第1章Spark简介 1
1.1初识Spark 1
1.2Spark生态系统BDAS 3
1.3Spark架构与运行逻辑 4
1.4弹性分布式数据集 6
1.4.1RDD简介 6
1.4.2RDD算子分类 8
1.5本章小结 17
第2章Spark开发与环境配置 18
2.1Spark应用开发环境配置 18
2.1.1使用Intellij开发Spark
程序 18
2.1.2使用SparkShell进行交互式数据分析 23
2.2远程调试Spark程序 24
2.3Spark编译 26
2.4配置Spark源码阅读环境 29
2.5本章小结 29
第3章BDAS简介 30
3.1SQL on Spark 30
3.1.1为什么使用Spark SQL 31
3.1.2Spark SQL架构分析 32
3.2Spark Streaming 35
3.2.1Spark Streaming简介 35
3.2.2Spark Streaming架构 38
3.2.3Spark Streaming原理剖析 38
3.3GraphX 45
3.3.1GraphX简介 45
3.3.2GraphX的使用简介 45
3.3.3GraphX体系结构 48
3.4MLlib 50
3.4.1MLlib简介 50
3.4.2MLlib中的聚类和分类 52
3.5本章小结 57
第4章Lamda架构日志分析流水线 58
4.1日志分析概述 58
4.2日志分析指标 61
4.3Lamda架构 62
4.4构建日志分析数据流水线 64
4.4.1用Flume进行日志采集 64
4.4.2用Kafka将日志汇总 68
4.4.3用Spark Streaming进行实时日志分析 70
4.4.4Spark SQL离线日志分析 75
4.4.5用Flask将日志KPI可视化 78
4.5本章小结 81
第5章基于云平台和用户日志的推荐系统 82
5.1Azure云平台简介 82
5.1.1Azure网站模型 83
5.1.2Azure数据存储 84
5.1.3Azure Queue消息传递 84
5.2系统架构 85
5.3构建Node.js应用 86
5.3.1创建Azure Web应用 87
5.3.2构建本地Node.js网站 90
5.3.3发布应用到云平台 90
5.4数据收集与预处理 91
5.4.1通过JS收集用户行为日志 92
5.4.2用户实时行为回传到Azure Queue 94
5.5Spark Streaming实时分析用户日志 96
5.5.1构建Azure Queue的Spark Streaming Receiver 96
5.5.2Spark Streaming实时处理Azure Queue日志 97
5.5.3Spark Streaming数据存储于Azure Table 98
5.6MLlib离线训练模型 99
5.6.1加载训练数据 99
5.6.2使用rating RDD训练ALS模型 100
5.6.3使用ALS模型进行电影推荐 101
5.6.4评估模型的均方差 101
5.7本章小结 102
第6章Twitter情感分析 103
6.1系统架构 103
6.2Twitter数据收集 104
6.2.1设置 104
6.2.2Spark Streaming接收并输出Tweet 109
6.3数据预处理与Cassandra存储 111
6.3.1添加SBT依赖 111
6.3.2创建Cassandra Schema 112
6.3.3数据存储于Cassandra 112
6.4Spark Streaming热点Twitter分析 113
6.5Spark Streaming在线情感分析 115
6.6Spark SQL进行Twitter分析 118
6.6.1读取Cassandra数据 118
6.6.2查看JSON数据模式 118
6.6.3Spark SQL分析Twitter 119
6.7Twitter可视化 123
6.8本章小结 125
第7章热点新闻分析系统 126
7.1新闻数据分析 126
7.2系统架构 126
7.3爬虫抓取网络信息 127
7.3.1Scrapy简介 127
7.3.2创建基于Scrapy的新闻爬虫 128
7.3.3爬虫分布式化 133
7.4新闻文本数据预处理 134
7.5新闻聚类 135
7.5.1数据转换为向量(向量空间模型VSM) 135
7.5.2新闻聚类 136
7.5.3词向量同义词查询 138
7.5.4实时热点新闻分析 138
7.6Spark Elastic Search构建全文检索引擎 139
7.6.1部署Elastic Search 139
7.6.2用Elastic Search索引MongoDB数据 141
7.6.3通过Elastic Search检索数据 143
7.7本章小结 145
第8章构建分布式的协同过滤推荐系统 146
8.1推荐系统简介 146
8.2协同过滤介绍 147
8.2.1基于用户的协同过滤算法User-based CF 148
8.2.2基于项目的协同过滤算法Item-based CF 149
8.2.3基于模型的协同过滤推荐Model-based CF 150
8.3基于Spark的矩阵运算实现协同过滤算法 152
8.3.1Spark中的矩阵类型 152
8.3.2Spark中的矩阵运算 153
8.3.3实现User-based协同过滤的示例 153
8.3.4实现Item-based协同过滤的示例 154
8.3.5基于奇异值分解实现Model-based协同过滤的示例 155
8.4基于Spark的MLlib实现协同过滤算法 155
8.4.1MLlib的推荐算法工具 155
8.4.2MLlib协同过滤推荐示例 156
8.5案例:使用MLlib协同过滤实现电影推荐 157
8.5.1MovieLens数据集 157
8.5.2确定最佳的协同过滤模型参数 158
8.5.3利用最佳模型进行电影推荐 160
8.6本章小结 161
第9章基于Spark的社交网络分析 162
9.1社交网络介绍 162
9.1.1社交网络的类型 162
9.1.2社交网络的相关概念 163
9.2社交网络中社团挖掘算法 164
9.2.1聚类分析和K均值算法简介 165
9.2.2社团挖掘的衡量指标 165
9.2.3基于谱聚类的社团挖掘算法 166
9.3Spark中的K均值算法 168
9.3.1Spark中与K均值有关的对象和方法 168
9.3.2Spark下K均值算法示例 168
9.4案例:基于Spark的Facebook社团挖掘 169
9.4.1SNAP社交网络数据集介绍 169
9.4.2基于Spark的社团挖掘实现 170
9.5社交网络中的链路预测算法 172
9.5.1分类学习简介 172
9.5.2分类器的评价指标 173
9.5.3基于Logistic回归的链路预测算法 174
9.6Spark MLlib中的Logistic回归 174
9.6.1分类器相关对象 174
9.6.2模型验证对象 175
9.6.3基于Spark的Logistic回归示例 175
9.7案例:基于Spark的链路预测算法 177
9.7.1SNAP符号社交网络Epinions数据集 177
9.7.2基于Spark的链路预测算法 177
9.8本章小结 179
第10章基于Spark的大规模新闻主题分析 180
10.1主题模型简介 180
10.2主题模型LDA 181
10.2.1LDA模型介绍 181
10.2.2LDA的训练算法 183
10.3Spark中的LDA模型 185
10.3.1MLlib对LDA的支持 185
10.3.2Spark中LDA模型训练示例 186
10.4案例:Newsgroups新闻的主题分析 189
10.4.1Newsgroups数据集介绍 190
10.4.2交叉验证估计新闻的主题个数 190
10.4.3基于主题模型的文本聚类算法 193
10.4.4基于主题模型的文本分类算法 195
10.5本章小结 196
第11章构建分布式的搜索引擎 197
11.1搜索引擎简介 197
11.2搜索排序概述 198
11.3查询无关模型PageRank 199
11.4基于Spark的分布式PageRank实现 200
11.4.1PageRank的MapReduce实现 200
11.4.2Spark的分布式图模型GraphX 203
11.4.3基于GraphX的PageRank实现 203
11.5案例:GoogleWeb Graph的PageRank计算 204
11.6查询相关模型Ranking SVM 206
11.7Spark中支持向量机的实现 208
11.7.1Spark中的支持向量机模型 208
11.7.2使用Spark测试数据演示支持向量机的训练 209
11.8案例:基于MSLR数据集的查询排序 211
11.8.1Microsoft Learning to Rank数据集介绍 211
11.8.2基于Spark的Ranking SVM实现 212
11.9本章小结 213
— 没有更多了 —
以下为对购买帮助不大的评价