注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信網(wǎng)絡(luò)服務(wù)Scala和Spark大數(shù)據(jù)分析:函數(shù)式編程、數(shù)據(jù)流和機(jī)器學(xué)習(xí)

Scala和Spark大數(shù)據(jù)分析:函數(shù)式編程、數(shù)據(jù)流和機(jī)器學(xué)習(xí)

Scala和Spark大數(shù)據(jù)分析:函數(shù)式編程、數(shù)據(jù)流和機(jī)器學(xué)習(xí)

定 價(jià):¥158.00

作 者: 雷扎爾·卡里姆,斯里達(dá)爾·阿拉 著,史躍東 譯
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787302551966 出版時(shí)間: 2020-06-01 包裝: 平裝
開本: 16開 頁數(shù): 624 字?jǐn)?shù):  

內(nèi)容簡介

  主要內(nèi)容 ◆ 理解Scala的面向?qū)ο蠛秃瘮?shù)式編程概念 ◆ 深入理解Scala的集合API ◆ 學(xué)習(xí)RDD和數(shù)據(jù)幀等Spark核心概念 ◆ 使用Spark SQL和GraphX分析結(jié)構(gòu)化與非結(jié)構(gòu)化數(shù)據(jù) ◆ 使用Spark結(jié)構(gòu)化流來開發(fā)具備可擴(kuò)展性和容錯(cuò)能力的流式應(yīng)用 ◆ 學(xué)習(xí)分類、回歸、降維和推薦系統(tǒng)等機(jī)器學(xué)習(xí)最佳實(shí)踐,以便使用Spark ML和Spark MLlib中的流行算法來建立預(yù)測模型 ◆ 建立聚類模型,以便聚類大量數(shù)據(jù) ◆ 理解Spark應(yīng)用的調(diào)優(yōu)、調(diào)試和監(jiān)控技術(shù) ◆使用獨(dú)立服務(wù)器模式、Mesos和YARN模式在集群上部署Spark應(yīng)用

作者簡介

  Md. Rezaul Karim 是德國Fraunhofer FIT的研究學(xué)者,也是德國亞琛工業(yè)大學(xué)的博士學(xué)位研究生預(yù)科生。他擁有計(jì)算機(jī)科學(xué)的學(xué)士與碩士學(xué)位。在加盟Fraunhofer FIT之前,他曾作為研究員任職于愛爾蘭的數(shù)據(jù)分析深入研究中心。更早之前,他還擔(dān)任過三星電子公司全球研究中心的首席工程師;該研究中心分布于韓國、印度、越南、土耳其以及孟加拉。再早之前,他還在韓國慶熙大學(xué)的數(shù)據(jù)庫實(shí)驗(yàn)室擔(dān)任過助理研究員,在韓國的BMTech21公司擔(dān)任過研發(fā)工程師,在孟加拉國的i2軟件技術(shù)公司擔(dān)任過軟件工程師。Karim擁有超過8年的研發(fā)領(lǐng)域工作經(jīng)驗(yàn),并在如下算法和數(shù)據(jù)結(jié)構(gòu)領(lǐng)域具有深厚的技術(shù)背景:C/C++、Java、Scala、R、Python、Docker、Mesos、Zeppelin、Hadoop以及MapReduce,并深入學(xué)習(xí)了如下技術(shù):Spark、Kafka、DC/OS、DeepLearning4j以及H2O-Sparking Water。他的研究興趣包括機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、語義網(wǎng)絡(luò)、關(guān)聯(lián)數(shù)據(jù)(Linked Data)、大數(shù)據(jù)以及生物信息學(xué)。同時(shí),他還是Packt出版社出版的以下兩本書籍的作者: ● Large-Scale Machine Learning with Spark ● Deep Learning with TensorFlowSridhar Alla是一位大數(shù)據(jù)專家,他曾幫助大大小小的諸多公司解決各種復(fù)雜的問題,例如數(shù)據(jù)倉庫、數(shù)據(jù)治理、安全、實(shí)時(shí)數(shù)據(jù)處理、高頻率的交易系統(tǒng)以及建立大規(guī)模的數(shù)據(jù)科學(xué)實(shí)踐項(xiàng)目等。他也是敏捷技術(shù)的實(shí)踐者,是一位獲得認(rèn)證的敏捷DevOps實(shí)踐者和實(shí)施者。他在美國網(wǎng)域存儲公司,以存儲軟件工程師的身份開始了自己的職業(yè)生涯。然后成為位于波士頓的eIQNetworks公司的CTO,該公司是一家網(wǎng)絡(luò)安全公司。在他的履歷表中,還包括曾擔(dān)任位于費(fèi)城的Comcast公司的數(shù)據(jù)科學(xué)與工程總監(jiān)。他是很多會議或者活動(如Hadoop World、Spark峰會等)的熱心參與者,在多項(xiàng)技術(shù)上提供面授/在線培訓(xùn)。他在美國商標(biāo)專利局(US PTO)也有多項(xiàng)專利技術(shù),內(nèi)容涉及大規(guī)模計(jì)算與分布式系統(tǒng)等。他還持有印度尼赫魯科技大學(xué)計(jì)算機(jī)科學(xué)方向的學(xué)士學(xué)位。目前,他和妻子居住在新澤西州。Alla在Scala、Java、C、C++、Python、R以及Go語言上有超過18年的編程經(jīng)驗(yàn),他的技術(shù)研究范圍也擴(kuò)展到Spark、Hadoop、Cassandra、HBase、MongoDB、Riak、Redis、Zeppelin、Mesos、Docker、Kafka、ElasticSearch、Solr、H2O、機(jī)器學(xué)習(xí)、文本分析、分布式計(jì)算以及高性能計(jì)算等領(lǐng)域。

圖書目錄

第1章 Scala簡介 1
1.1 Scala的歷史與設(shè)計(jì)目標(biāo) 2
1.2 平臺與編輯器 2
1.3 安裝與創(chuàng)建Scala 3
1.3.1 安裝Java 3
1.3.2 Windows 4
1.3.3 macOS 6
1.4 Scala:可擴(kuò)展的編程語言 9
1.4.1 Scala是面向?qū)ο蟮? 9
1.4.2 Scala是函數(shù)式的 9
1.4.3 Scala是靜態(tài)類型的 9
1.4.4 在JVM上運(yùn)行Scala 10
1.4.5 Scala可以執(zhí)行Java代碼 10
1.4.6 Scala可以完成并發(fā)與同步處理 10
1.5 面向Java編程人員的Scala 10
1.5.1 一切類型都是對象 10
1.5.2 類型推導(dǎo) 11
1.5.3 Scala REPL 11
1.5.4 嵌套函數(shù) 13
1.5.5 導(dǎo)入語句 13
1.5.6 作為方法的操作符 14
1.5.7 方法與參數(shù)列表 15
1.5.8 方法內(nèi)部的方法 15
1.5.9 Scala中的構(gòu)造器 16
1.5.10 代替靜態(tài)方法的對象 16
1.5.11 特質(zhì) 17
1.6 面向初學(xué)者的Scala 19
1.6.1 你的第一行代碼 20
1.6.2 交互式運(yùn)行Scala! 21
1.6.3 編譯 21
1.7 本章小結(jié) 22
第2章 面向?qū)ο蟮腟cala 23
2.1 Scala中的變量 24
2.1.1 引用與值不可變性 25
2.1.2 Scala中的數(shù)據(jù)類型 26
2.2 Scala中的方法、類和對象 28
2.2.1 Scala中的方法 28
2.2.2 Scala中的類 30
2.2.3 Scala中的對象 30
2.3 包與包對象 41
2.4 Java的互操作性 42
2.5 模式匹配 43
2.6 Scala中的隱式 45
2.7 Scala中的泛型 46
2.8 SBT與其他構(gòu)建系統(tǒng) 49
2.8.1 使用SBT進(jìn)行構(gòu)建 49
2.8.2 Maven與Eclipse 50
2.8.3 Gradle與Eclipse 51
2.9 本章小結(jié) 55
第3章 函數(shù)式編程概念 56
3.1 函數(shù)式編程簡介 57
3.2 面向數(shù)據(jù)科學(xué)家的函數(shù)式Scala 59
3.3 學(xué)習(xí)Spark為何要掌握函數(shù)式編程和Scala 59
3.3.1 為何是Spark? 59
3.3.2 Scala與Spark編程模型 60
3.3.3 Scala與Spark生態(tài) 61
3.4 純函數(shù)與高階函數(shù) 62
3.4.1 純函數(shù) 62
3.4.2 匿名函數(shù) 64
3.4.3 高階函數(shù) 66
3.4.4 以函數(shù)作為返回值 70
3.5 使用高階函數(shù) 71
3.6 函數(shù)式Scala中的錯(cuò)誤處理 72
3.6.1 Scala中的故障與異常 73
3.6.2 拋出異常 73
3.6.3 使用try和catch捕獲異常 73
3.6.4 finally 74
3.6.5 創(chuàng)建Either 75
3.6.6 Future 76
3.6.7 執(zhí)行任務(wù),而非代碼塊 76
3.7 函數(shù)式編程與數(shù)據(jù)可變性 76
3.8 本章小結(jié) 77
第4章 集合API 78
4.1 Scala集合API 78
4.2 類型與層次 79
4.2.1 Traversable 79
4.2.2 Iterable 80
4.2.3 Seq、LinearSeq和IndexedSeq 80
4.2.4 可變型與不可變型 80
4.2.5 Array 82
4.2.6 List 85
4.2.7 Set 86
4.2.8 Tuple 88
4.2.9 Map 89
4.2.10 Option 91
4.2.11 exists 94
4.2.12 forall 96
4.2.13 filter 96
4.2.14 map 97
4.2.15 take 97
4.2.16 groupBy 98
4.2.17 init 98
4.2.18 drop 98
4.2.19 takeWhile 98
4.2.20 dropWhile 99
4.2.21 flatMap 99
4.3 性能特征 100
4.3.1 集合對象的性能特征 100
4.3.2 集合對象的內(nèi)存使用 102
4.4 Java互操作性 103
4.5 Scala隱式的使用 104
4.6 本章小結(jié) 108
第5章 狙擊大數(shù)據(jù)——Spark加入戰(zhàn)團(tuán) 109
5.1 數(shù)據(jù)分析簡介 109
5.2 大數(shù)據(jù)簡介 114
5.3 使用Apache Hadoop進(jìn)行分布式計(jì)算 116
5.3.1 Hadoop分布式文件系統(tǒng)(HDFS) 117
5.3.2 MapReduce框架 122
5.4 Apache Spark駕到 125
5.5 本章小結(jié) 131
第6章 開始使用Spark——REPL和RDD 132
6.1 深入理解Apache Spark 132
6.2 安裝Apache Spark 136
6.3 RDD簡介 142
6.4 使用Spark shell 147
6.5 action與transformation算子 150
6.6 緩存 162
6.7 加載和保存數(shù)據(jù) 165
6.7.1 加載數(shù)據(jù) 165
6.7.2 保存RDD 166
6.8 本章小結(jié) 166
第7章 特殊RDD操作 167
7.1 RDD的類型 167
7.2 聚合操作 178
7.3 分區(qū)與shuffle 187
7.3.1 分區(qū)器 188
7.3.2 shuffle 190
7.4 廣播變量 193
7.5 累加器 196
7.6 本章小結(jié) 199
第8章 介紹一個(gè)小結(jié)構(gòu)——Spark SQL 200
8.1 Spark SQL與數(shù)據(jù)幀 200
8.2 數(shù)據(jù)幀API與SQL API 203
8.3 聚合操作 214
8.4 連接 226
8.5 本章小結(jié) 237
第9章 讓我流起來,Scotty——Spark Streaming 238
9.1 關(guān)于流的簡要介紹 238
9.2 Spark Streaming 243
9.3 離散流 249
9.4 有狀態(tài)/無狀態(tài)轉(zhuǎn)換 256
9.5 檢查點(diǎn) 257
9.6 與流處理平臺(Apache Kafka)的互操作 261
9.7 結(jié)構(gòu)化流 265
9.8 本章小結(jié) 269
第10章 萬物互聯(lián)——GraphX 270
10.1 關(guān)于圖論的簡要介紹 270
10.2 GraphX 275
10.3 VertexRDD和EdgeRDD 277
10.4 圖操作 280
10.5 Pregel API 284
10.6 PageRank 290
10.7 本章小結(jié) 291
第11章 掌握機(jī)器學(xué)習(xí)Spark MLlib
和ML 292
11.1 機(jī)器學(xué)習(xí)簡介 292
11.2 Spark機(jī)器學(xué)習(xí)API 298
11.3 特征提取與轉(zhuǎn)換 299
11.4 創(chuàng)建一個(gè)簡單的pipeline 308
11.5 無監(jiān)督機(jī)器學(xué)習(xí) 309
11.6 分類 314
11.7 本章小結(jié) 330
第12章 貝葉斯與樸素貝葉斯 332
12.1 多元分類 332

12.2 貝葉斯推理 338
12.3 樸素貝葉斯 339
12.4 決策樹 349
12.5 本章小結(jié) 354
第13章 使用Spark MLlib對數(shù)據(jù)進(jìn)行聚類分析 355
13.1 無監(jiān)督學(xué)習(xí) 355
13.2 聚類技術(shù) 357
13.3 基于中心的聚類(CC) 358
13.4 分層聚類(HC) 366
13.5 基于分布的聚類(DC) 367
13.6 確定聚類的數(shù)量 372
13.7 聚類算法之間的比較分析 373
13.8 提交用于聚類分析的Spark作業(yè) 374
13.9 本章小結(jié) 374
第14章 使用Spark ML進(jìn)行文本分析 376
14.1 理解文本分析 376
14.2 轉(zhuǎn)換器與評估器 378
14.3 分詞 381
14.4 StopWordsRemover 383
14.5 NGram 385
14.6 TF-IDF 386
14.7 Word2Vec 390
14.8 CountVectorizer 392
14.9 使用LDA進(jìn)行主題建模 393
14.10 文本分類實(shí)現(xiàn) 395
14.11 本章小結(jié) 400
第15章 Spark調(diào)優(yōu) 402
15.1 監(jiān)控Spark作業(yè) 402
15.2 Spark配置 417
15.3 Spark應(yīng)用開發(fā)中的常見錯(cuò)誤 420
15.4 優(yōu)化技術(shù) 425
15.5 本章小結(jié) 434
第16章 該聊聊集群了——在集群環(huán)境中部署Spark 435
16.1 集群中的Spark架構(gòu) 435
16.2 在集群中部署Spark應(yīng)用 444
16.3 本章小結(jié) 464
第17章 Spark測試與調(diào)試 465
17.1 在分布式環(huán)境中進(jìn)行測試 465
17.2 測試Spark應(yīng)用 468
17.3 調(diào)試Spark應(yīng)用 483
17.4 本章小結(jié) 495
第18章 PySpark與SparkR 496
18.1 PySpark簡介 496
18.2 安裝及配置 497
18.3 SparkR簡介 517
18.4 本章小結(jié) 527
第19章 高級機(jī)器學(xué)習(xí)最佳實(shí)踐 529
19.1 機(jī)器學(xué)習(xí)最佳實(shí)踐 529
19.2 ML模型的超參調(diào)整 536
19.3 一個(gè)Spark推薦系統(tǒng) 548
19.4 主題建?!谋揪垲惖淖罴褜?shí)踐 555
19.5 本章小結(jié) 568
附錄A 使用Alluxio加速Spark 569
附錄B 利用Apache Zeppelin進(jìn)行交互式數(shù)據(jù)分析 583


本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號