书籍详情
《Scala和Spark大数据分析函数式编程、数据流和机器学习全新》[58M]百度网盘|亲测有效|pdf下载
  • Scala和Spark大数据分析函数式编程、数据流和机器学习全新

  • 出版社:伍壹捌肆图书专营店
  • 热度:10966
  • 上架时间:2024-06-30 09:08:33
  • 价格:0.0
书籍下载
书籍预览
免责声明

本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正

内容介绍

  • 作者:雷扎尔·卡里姆
  • 著:雷扎尔·卡里姆
  • 装帧:简装
  • 印次:暂无
  • 定价:158.0
  • ISBN:9787302551966
  • 出版社:清华大学出版社
  • 开本:32开
  • 印刷时间:暂无
  • 语种:中文
  • 出版时间:2020-06-01
  • 页数:582
  • 外部编号:1202097939
  • 版次:1

章Scala简介1
1.1Scala的历史与设计目标2
1.2平台与编辑器2
1.3安装与创建Scala3
1.3.1安装Java3
1.3.2Windows4
1.3.3macOS6
1.4Scala:可扩展的编程语言9
1.4.1Scala是面向对象的9
1.4.2Scala是函数式的9
1.4.3Scala是静态类型的9
1.4.4在JVM上运行Scala10
1.4.5Scala可以执行Java代码10
1.4.6Scala可以完成并发与同步处理10
1.5面向Java编程人员的Scala10
1.5.1一切类型都是对象10
1.5.2类型推导11
1.5.3ScalaREPL11
1.5.4嵌套函数13
1.5.5导入语句13
1.5.6作为方法的操作符14
1.5.7方法与参数列表15
1.5.8方法内部的方法15
1.5.9Scala中的构造器16
1.5.10代替静态方法的对象16
1.5.11特质17
1.6面向初学者的Scala19
1.6.1你的行代码20
1.6.2交互式运行Scala!21
1.6.3编译21
1.7本章小结22
第2章面向对象的Scala23
2.1Scala中的变量24
2.1.1引用与值不可变*25
2.1.2Scala中的数据类型26
2.2Scala中的方法、类和对象28
2.2.1Scala中的方法28
2.2.2Scala中的类30
2.2.3Scala中的对象30
2.3包与包对象41
2.4Java的互操作*42
2.5模式匹配43
2.6Scala中的隐式45
2.7Scala中的泛型46
2.8SBT与**构建系统49
2.8.1使用SBT进行构建49
2.8.2Maven与Eclipse50
2.8.3Gradle与Eclipse51
2.9本章小结55
第3章函数式编程概念56
3.1函数式编程简介57
3.2面向数据科学家的函数式Scala59
3.3学习Spark为何要掌握函数式编程和Scala59
3.3.1为何是Spark?59
3.3.2Scala与Spark编程模型60
3.3.3Scala与Spark生态61
3.4纯函数与高阶函数62
3.4.1纯函数62
3.4.2匿名函数64
3.4.3高阶函数66
3.4.4以函数作为返回值70
3.5使用高阶函数71
3.6函数式Scala中的错误处理72
3.6.1Scala中的故障与异常73
3.6.2抛出异常73
3.6.3使用try和catch捕获异常73
3.6.4finally74
3.6.5创建Either75
3.6.6Future76
3.6.7执行任务,而非代码块76
3.7函数式编程与数据可变*76
3.8本章小结77
第4章集合API78
4.1Scala集合API78
4.2类型与层次79
4.2.1Traversable79
4.2.2Iterable80
4.2.3Seq、LinearSeq和IndexedSeq80
4.2.4可变型与不可变型80
4.2.5Array82
4.2.6List85
4.2.7Set86
4.2.8Tuple88
4.2.9Map89
4.2.10Option91
4.2.11exists94
4.2.12forall96
4.2.13filter96
4.2.14map97
4.2.15take97
4.2.16groupBy98
4.2.17init98
4.2.18drop98
4.2.19takeWhile98
4.2.20dropWhile99
4.2.21flatMap99
4.3*能特征100
4.3.1集合对象的*能特征100
4.3.2集合对象的内存使用102
4.4Java互操作*103
4.5Scala隐式的使用104
4.6本章小结108
第5章狙击大数据——Spark加入战团109
5.1数据分析简介109
5.2大数据简介114
5.3使用ApacheHadoop进行分布式计算116
5.3.1Hadoop分布式文件系统(HDFS)117
5.3.2MapReduce框架122
5.4ApacheSpark驾到125
5.4.1Sparkc*re*28
5.4.2SparkSQL128
5.4.3SparkStreaming128
5.4.4SparkGraphX129
5.4.5SparkML129
5.4.6PySpark130
5.4.7SparkR130
5.5本章小结131
第6章开始使用Spark——REPL和RDD132
6.1深入理解ApacheSpark132
6.2安装ApacheSpark136
6.2.1Spark独立服务器模式136
6.2.2基于YARN的Spark140
6.2.3基于Mesos的Spark142
6.3RDD简介142
6.4使用Sparkshell147
6.5action与transformation算子150
6.5.1transformation算子151
6.5.2action算子158
6.6缓存162
6.7加载和保存数据165
6.7.1加载数据165
6.7.2保存RDD166
6.8本章小结166
第7章特殊RDD操作167
7.1RDD的类型167
7.1.1pairRDD170
7.1.2DoubleRDD171
7.1.3SequenceFileRDD172
7.1.4CoGroupedRDD173
7.1.5ShuffledRDD174
7.1.6UnionRDD175
7.1.7Hado*pRDD*77
7.1.8NewHado*pRDD*77
7.2聚合操作178
7.2.1groupByKey180
7.2.2reduceByKey181
7.2.3aggregateByKey182
7.2.4combineByKey182
7.2.5groupByKey、reduceByKey、combineByKey和aggregateByKey之间的对比184
7.3分区与shuffle187
7.3.1分区器188
7.3.2shuffle190
7.4广播变量193
7.4.1创建广播变量194
7.4.2移除广播变量195
7.4.3*毁广播变*195
7.5累加器196
7.6本章小结199
*8章介绍*个小结构——SparkSQL200
8.1SparkSQL与数据帧200
8.2数据帧API与SQLAPI203
8.2.1pivot208
8.2.2filter208
8.2.3用户自定义函数(UDF)209
8.2.4结构化数据210
8.2.5加载和保存数据集213
8.3聚合操作214
8.3.1聚合函数215
8.3.2groupBy222
8.3.3rollup223
8.3.4cube223
8.3.5窗口函数224
8.4连接226
8.4.1内连接工作机制228
8.4.2广播连接229
8.4.3连接类型229
8.4.4连接的*能启示236
8.5本章小结237
第9章让我流起来,Scotty——SparkStreaming238
9.1关于流的简要介绍238
9.1.1至少处理一次240
9.1.2至多处理一次241
9.1.3**处理一次242
9.2SparkStreaming243
9.2.1StreamingContext245
9.2.2输入流246
9.2.3textFileStream样例247
9.2.4twitterStream样例248
9.3离散流249
9.3.1转换251
9.3.2窗口操作253
9.4有状态/无状态转换256
9.4.1无状态转换256
9.4.2有状态转换257
9.5检查点257
9.5.1元数据检查点258
9.5.2数据检查点259
9.5.3driver故障恢复259
9.6与流处理平台(ApacheKafka)的互操作261
9.6.1基于接收器的方法261
9.6.2direct流262
9.6.3结构化流示例264
9.7结构化流265
9.7.1处理事件时间(event-time)和延迟数据268
9.7.2容错语义269
9.8本章小结269
0章万物互联——GraphX270
10.1关于图论的简要介绍270
10.2GraphX275
10.3VertexRDD和EdgeRDD277
10.3.1VertexRDD277
10.3.2EdgeRDD278
10.4图操作280
10.4.1filter281
10.4.2mapValues281
10.4.3aggregateMessages282
10.4.4triangleCount282
10.5PregelAPI284
10.5.1connectedComponents284
10.5.2旅行商问题(TSP)285
10.5.3*短路径286
10.6PageRank290
10.7本章小结291
1章掌握机器学习SparkMLlib和ML292
11.1机器学习简介292
11.1.1典型的机器学习工作流293
11.1.2机器学习任务294
11.2Spark机器学习API298
11.3特征提取与转换299
11.3.1CountVectorizer301
11.3.2Tokenizer302
11.3.3StopWordsRemover304
11.3.4StringIndexer304
11.3.5OneHotEncoder305
11.3.6SparkMLpipeline306
11.4创建一个简*的pipeline308
11.5无监督机器学习309
11.5.1降维309
11.5.2PCA309
11.6分类314
11.6.1*能度量314
11.6.2使用逻辑回归的多元分类324
11.6.3使用随机森林提升分类精度327
11.7本章小结330
2章贝叶斯与朴素贝叶斯332
12.1多元分类332
12.1.1将多元分类转换为二元分类333
12.1.2层次分类338
12.1.3从二元分类进行扩展338
12.2贝叶斯推理338
12.3朴素贝叶斯339
12.3.1贝叶斯理论概述340
12.3.2贝叶斯与朴素贝叶斯341
12.3.3使用朴素贝叶斯建立一个可扩展的分类器341
12.4决策树349
12.5本章小结354
3章使用SparkMLlib对数据进行聚类分析355
13.1无监督学习355
13.2聚类技术357
13.3基于中心的聚类(CC)358
13.3.1CC算法面临的挑战358
13.3.2K-均值算法是如何工作的358
13.4分层聚类(HC)366
13.5基于分布的聚类(DC)367
13.6确定聚类的数量372
13.7聚类算法之间的比较分析373
13.8提交用于聚类分析的Spark作业374
13.9本章小结374
4章使用SparkML进行文本分析376
14.1理解文本分析376
14.2转换器与评估器378
14.2.1标准转换器378
14.2.2评估转换器379
14.3分词381
14.4StopWordsRemover383
14.5NGram385
14.6TF-IDF386
14.6.1HashingTF387
14.6.2逆文档频率(IDF)388
14.7Word2Vec390
14.8CountVectorizer392
14.9使用LDA进行主题建模393
14.10文本分类实现395
14.11本章小结400
5章Spark调优402
15.1监控Spark作业402
15.1.1SparkWeb接口402
15.1.2使用WebUI实现Spark应用的可视化412
15.2Spark配置417
15.2.1Spark属*41*
15.2.2环境变量419
15.2.3日志420
15.3Spark应用开发中的常见错误420
15.4优化技术425
15.4.1数据序列化425
15.4.2内存优化428
15.5本章小结434
6章该聊聊集群了——在集群环境中部署Spark435
16.1集*中的S*ark架构435
16.1.1Spark生态简述436
16.1.2集群设计437
16.1.3集群管理440
16.2在集*中部署S*ark应用444
16.2.1提交Spark作业445
16.2.2HadoopYARN450
16.2.3ApacheMesos457
16.2.4在AWS上部署459
16.3本章小结464
7章Spark测试与调试465
17.1在分布式环境中进行测试465
17.2测试Spark应用468
17.2.1测试Scala方法468
17.2.2*元测试472
17.2.3测试Spark应用473
17.2.4在Windows环境配置Hadoop运行时481
17.3调试Spark应用483
17.3.1使用Sparkrecap的log4j进行日志记录483
17.3.2调试Spark应用488
17.4本章小结495
8章PySpark与SparkR496
18.1PySpark简介496
18.2安装及配置497
18.2.1设置SPARK_HOME497
18.2.2在PythonIDE中设置PySpark498
18.2.3开始使用PySpark501
18.2.4使用数据帧和RDD502
18.2.5在PySpark中编写UDF506
18.2.6使用K-均值聚类算法进行分析511
18.3SparkR简介517
18.3.1为何是SparkR517
18.3.2安装与配置518
18.3.3开始使用SparkR519
18.3.4使用外部数据源API520
18.3.5数据操作521
18.3.6查询SparkR数据帧523
18.3.7在RStudio中可视化数据525
18.4本章小结527
9章不错机器学习**实践529
19.1机器学习**实践529
19.1.1过拟合与欠拟合530
19.1.2SparkMLlib与SparkML调优531
19.1.3为应用*择合适的算法532
19.1.4*择算法时的考量533
19.1.5*择算法时先检查数据534
19.2ML模型的超参调整536
19.2.1超参调整536
19.2.2网格搜索参数调整537
19.2.3交叉检验538
19.2.4信用风险分析——一个超参调整的例子539
19.3一个Spark推荐系统548
19.4主题建模——文本聚类的**实践555
19.4.1LDA是如何工作的?555
19.4.2基于SparkMLlib的主题建模557
19.5本章小结568
附录A使用Alluxio加速Spark569
附录B利用ApacheZeppelin进行交互式数据分析583

"Md. Rezaul Karim 是德国Fraunhofer FIT的研究学者,也是德国亚琛工业大*的博士*****预科生。他拥有计算机科学的学士与硕士**。在加盟Fraunhofer FIT之前,他曾作为研究员任职于爱尔兰的数据分析深入研究中心。更早之前,他还担任过三星电子公司优*研究中心的首席***;该研究中心分布于韩国、印度、越南、土耳其以及孟加拉。再早之前,他还在韩国庆熙大学的数据库实验室担任过*理研究员,在韩国的BMTech21公司担任过研发***,在孟加拉国的i2软件技术公司担任过软件***。 Karim拥有超过8年的研发领域工作经验,并在如下算法和数据结构领域具有深厚的技术背景:C/C 、Java、Scala、R、Python、Docker、Mesos、Zeppelin、Hadoop以及MapReduce,并深入学习了如下技术:Spark、Kafka、DC/OS、DeepLearning4j以及H2O-Sparking Water。他的研究兴趣包括机器学习、深度学习、语义网络、关联数据(Linked Data)、大数据以及生物信息学。同时,他还是Packt出版社出版的以下两本书籍的作者: ● Large-Scale Machine Learning with Spark ● Deep Learning with TensorFlow 我很好感激我的父母,是他们一直鼓励我去不断追求新知识。也想感谢妻子Saroar、儿子Shadman,以及哥哥Mamtaz和姐姐Josna,还有我的朋友们。因为他们总得长时间地忍受我关于《Scala和Spark大数据分析 函数式编程、数据流和机器学习》内容的一些独白,还要鼓励我。另外,由于开源社区的令人赞叹的努力,以及Apache Spark和Scala相关的一些项目的很好技术文档的存在,都使得《Scala和Spark大数据分析 函数式编程、数据流和机器学习》的写作变得颇为容易。也要感谢Packt出版社的组稿、文稿以及技术编辑们(当然还有**为《Scala和Spark大数据分析 函数式编程、数据流和机器学习》做出贡献的出版社人员),感谢他们真挚的沟通与协调。此外,若没有大量的研究人员和数据分析实践者们在出版物和各种演讲中分享自己的工作内容,公开自己的源代码,《Scala和Spark大数据分析 函数式编程、数据流和机器学习》只怕也是无法面世的。 Sridhar Alla是一位大数据专家,他曾帮*大大小小的诸多公司解决各种复杂的问题,例如数据仓库、数据治理、安全、实时数据处理、高频率的交易系统以及建立大规模的数据科学实践项目等。他也是敏捷技术的实践者,是一位获得认*的敏捷DevOps实践者和实施者。他在美国网域存储公司,以存储软件***的身份开始了自己的职业生涯。然后成为位于波士顿的eIQNetworks公司的CTO,该公司是一家网络安全公司。在他的履历表中,还包括曾担任位于费城的Comcast公司的数据科学与工程总监。他是很多会议或者活动(如Hadoop World、Spark峰会等)的热心参与者,在多项技术上提供面授/在线培训。他在美国商标局(US PTO)也有多项技术,内容涉及大规模计算与分布式系统等。他还持有印度尼赫鲁科技大学计算机科学方向的*士**。目前,他和妻子居住在新泽西州。 Alla在Scala、Java、C、C 、Python、R以及Go语言上有超过18年的编程经验,他的技术研究范围也扩展到Spark、Hadoop、Cassandra、HBase、MongoDB、Riak、Redis、Zeppelin、Mesos、Docker、Kafka、ElasticSearch、Solr、H2O、机器学习、文本分析、分布式计算以及高*能计算等领域。 我要感谢我贤惠的妻子Rosie Sarkaria,在我写作《Scala和Spark大数据分析 函数式编程、数据流和机器学习》的数个月中,她给了我无尽的爱与耐心,并给我写的内容进行了无数次的校订。我也想感谢父母Ravi和Lakshmi Alla,他们也在一直支持我和鼓励我。也要感谢我的朋友们,尤其是Abrar Hashmi和Christian Ludwig,他们不断地给我提供灵感并让我清晰地阐述书中的多个主题。如果没有**的Apache基金会,以及那些让Spark变得如此强大与优雅的大数据相关人员们,《Scala和Spark大数据分析 函数式编程、数据流和机器学习》就无法付诸笔端了。我还要感谢Packt出版社的组稿、文稿以及技术编辑们(当然还有**为《Scala和Spark大数据分析 函数式编程、数据流和机器学习》做出贡献的出版社人员),感谢他们真挚的沟通与协调。 "

本书介绍Spark应用开发的面向对象和函数式编程概念,讨论RDD和DataFrame基本抽象,讲述如何使用SparkSQL、GraphX和Spark来开发可扩展的、容错的流式应用程序,很后介绍监控、配置、调试、测试和开发等不错主题。通过本书的学习,你将能使用SparkR和PySparkAPI开发Spark应用程序,使用Zeppelin进行交互式数据分析,使用Alluxio进行内存数据处理,将透彻理解Spark,并能对海量数据执行全栈数据分析,很终成为数据科学家。