注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡家庭與辦公軟件大數(shù)據(jù)Spark企業(yè)級實戰(zhàn)

大數(shù)據(jù)Spark企業(yè)級實戰(zhàn)

大數(shù)據(jù)Spark企業(yè)級實戰(zhàn)

定 價:¥129.00

作 者: Spark亞太研究院
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 計算機/網(wǎng)絡 企業(yè)軟件開發(fā)與實施

ISBN: 9787121247446 出版時間: 2015-01-01 包裝:
開本: 頁數(shù): 字數(shù):  

內(nèi)容簡介

  Spark是當今大數(shù)據(jù)領域最活躍、最熱門、最高效的大數(shù)據(jù)通用計算平臺,是Apache軟件基金會下所有開源項目中三大頂級開源項目之一。在“One Stack to rule them all”理念的指引下,Spark基于RDD成功地構建起了大數(shù)據(jù)處理的一體化解決方案,將MapReduce、Streaming、SQL、Machine Learning、Graph Processing等大數(shù)據(jù)計算模型統(tǒng)一到一個技術堆棧中,開發(fā)者使用一致的API操作Spark中的所有功能;更為重要的是Spark的Spark SQL、MLlib、GraphX、Spark Streaming等四大子框架之間可以在內(nèi)存中完美地無縫集成并可以互相操作彼此的數(shù)據(jù),這不僅打造了Spark在當今大數(shù)據(jù)計算領域其他任何計算框架都無可匹敵的優(yōu)勢,更使得Spark正在加速成為大數(shù)據(jù)處理中心首選的和唯一的計算平臺。本書詳細解析了企業(yè)級Spark開發(fā)所需的幾乎所有技術內(nèi)容,涵蓋Spark的架構設計、Spark的集群搭建、Spark內(nèi)核的解析、Spark SQL、MLlib、GraphX、Spark Streaming、Tachyon、SparkR、Spark多語言編程、Spark常見問題及調(diào)優(yōu)等,并且結(jié)合Spark源碼細致地解析了Spark內(nèi)核和四大子框架,最后在附錄中提供了Spark的開發(fā)語言Scala快速入門實戰(zhàn)內(nèi)容,學習完此書即可勝任絕大多數(shù)的企業(yè)級Spark開發(fā)需求。

作者簡介

  Spark亞太研究院首席專家,中國移動互聯(lián)網(wǎng)和云計算大數(shù)據(jù)集大成者。在Spark、Hadoop、Android等方面有豐富的源碼、實務和性能優(yōu)化經(jīng)驗。徹底研究了Spark從0.5.0到0.9.1共13個版本的Spark源碼,并已完成2014年5月31日發(fā)布的Spark1.0源碼研究。Hadoop源碼級專家,曾負責某知名公司的類Hadoop框架開發(fā)工作,專注于Hadoop一站式解決方案的提供,同時也是云計算分布式大數(shù)據(jù)處理的最早實踐者之一。Android架構師、高級工程師、咨詢顧問、培訓專家。通曉Spark、Hadoop、Android、HTML5,迷戀英語播音和健美。

圖書目錄

第1章 Spark編程模型 1
1.1 Spark:一體化、多元化的高速
大數(shù)據(jù)通用計算平臺和庫 1
1.1.1 為什么需要使用Spark 5
1.1.2 Spark技術生態(tài)系統(tǒng)簡介 9
1.2 Spark大數(shù)據(jù)處理框架 20
1.2.1 Spark速度為何如此之快 20
1.2.2 RDD:分布式函數(shù)式編程 24
1.3 Spark子框架解析 28
1.3.1 圖計算框架Spark GraphX 28
1.3.2 實時流處理框架
(Spark Streaming) 41
1.3.3 交互式SQL處理框架
Spark SQL 46
1.3.4 機器學習框架
(Spark MLlib) 49
第2章 構建Spark分布式集群 55
2.1 搭建Hadoop單機版本和偽
分布式開發(fā)環(huán)境 55
2.1.1 開發(fā)Hadoop需要的基本
軟件 56
2.1.2 安裝每個軟件 58
2.1.3 配置Hadoop單機模式并
運行Wordcount示例 76
2.1.4 配置Hadoop偽分布模式
并運行Wordcount示例 84
2.2 搭建 Hadoop分布式集群 92
2.2.1 在VMWare 中準備第二、
第三臺運行Ubuntu系統(tǒng)的
機器 92
2.2.2 按照配置偽分布式模式
的方式配置新創(chuàng)建運行
Ubuntu系統(tǒng)的機器 93
2.2.3 配置Hadoop分布式集群
環(huán)境 94
2.2.4 測試Hadoop分布式集群
環(huán)境 105
2.3 Spark集群的動手搭建 108
2.3.1 Spark集群需要的軟件 108
2.3.2 安裝每個軟件 110
2.3.3 啟動并查看集群的狀況 116
2.4 構建Hadoop單機版本和偽
分布式環(huán)境 120
2.4.1 通過Spark的shell測試
Spark的工作 121
2.4.2 使用Spark的cache機制
觀察一下效率的提升 125
第3章 Spark開發(fā)環(huán)境及其測試 129
3.1 搭建和設置IDEA開發(fā)環(huán)境 129
3.1.1 構建Spark的IDE開發(fā)
環(huán)境 129
3.1.2 配置Spark的IDE開發(fā)
環(huán)境 132
3.2 測試IDEA環(huán)境 146
3.3 實戰(zhàn):在IDEA中開發(fā)代碼,
并運行在Spark集群中 148
第4章 Spark RDD與編程API
實戰(zhàn) 159
4.1 深度解析Spark RDD 159
4.2 Transformation Operations
動手實戰(zhàn) 165
4.3 Action Operations動手實戰(zhàn) 175
4.4 Spark API綜合實戰(zhàn) 179
第5章 Spark運行模式深入解析 191
5.1 Spark運行模式概述 192
5.1.1 Spark的運行模式列表 196
5.1.2 Spark的基本工作流程 197
5.2 Standalone模式 201
5.2.1 部署及程序運行 202
5.2.2 內(nèi)部實現(xiàn)原理 206
5.3 Yarn-Cluster模式 234
5.3.1 部署及程序運行 235
5.3.2 內(nèi)部實現(xiàn)原理 237
5.4 Yarn-Client模式 243
5.4.1 部署及運行程序 243
5.4.2 內(nèi)部實現(xiàn)原理 244
第6章 Spark內(nèi)核解析 247
6.1 Spark內(nèi)核初探 247
6.1.1 Spark內(nèi)核核心術語解析 247
6.1.2 Spark集群概覽 250
6.1.3 Spark核心組件 251
6.1.4 Spark任務調(diào)度系統(tǒng)初見 252
6.2 Spark內(nèi)核核心源碼解讀 256
6.2.1 SparkContext核心源碼
解析初體驗 256
6.2.2 TaskSceduler啟動源碼
解析初體驗 260
6.2.3 DAGScheduler源碼解讀
初體驗 261
6.2.4 Spark的Web監(jiān)控頁面 262
6.3 以RDD的count操作為例觸發(fā)
Job全生命周期源碼研究 263
6.4 Akka驅(qū)動下的Driver、
Master、Worker 276
6.4.1 Driver中的AppClient
源碼解析 276
6.4.2 AppClient注冊Master 279
6.4.3 Worker中Executor啟動
過程源代碼解析 282
第7章 GraphX大規(guī)模圖計算與
圖挖掘?qū)崙?zhàn) 287
7.1 Spark GraphX概覽 288
7.2 Spark GraphX設計實現(xiàn)的
核心原理 291
7.3 Table operator和Graph
Operator 295
7.4 Vertices、edges、triplets 296
7.5 以最原始的方式構建graph 299
7.6 動手編寫第一個Graph代碼
實例并進行Vertices、edges、
triplets操作 299
7.7 在Spark集群上使用文件中
的數(shù)據(jù)加載成為graph并進
行操作 310
7.8 在Spark集群上掌握比較重
要的圖操作 320
7.9 Spark GraphX圖算法 342
7.10 淘寶對Spark GraphX的大
規(guī)模使用 347
第8章 Spark SQL原理與實戰(zhàn) 349
8.1 為什么使用Spark SQL 349
8.1.1 Spark SQL的發(fā)展歷程 349
8.1.2 Spark SQL的性能 351
8.2 Spark SQL運行架構 355
8.2.1 Tree和Rule 357
8.2.2 sqlContext的運行過程 360
8.2.3 hiveContext的運行過程 362
8.2.4 catalyst優(yōu)化器 365
8.3 解析Spark SQL組件 367
8.3.1 LogicalPlan 367
8.3.2 SqlParser 370
8.3.3 Analyzer 378
8.3.4 Optimizer 381
8.4 深入了解Spark SQL運行
的計劃 383
8.4.1 hive/console的安裝過程
和原理 383
8.4.2 常用操作 386
8.4.3 不同數(shù)據(jù)源的運行計劃 388
8.4.4 不同查詢的運行計劃 391
8.4.5 查詢的優(yōu)化 393
8.5 搭建測試環(huán)境 396
8.5.1 搭建虛擬集群(Hadoop1、
Hadoop2、Hadoop3) 397
8.5.2 搭建客戶端 398
8.5.3 文件數(shù)據(jù)的準備工作 399
8.5.4 Hive數(shù)據(jù)的準備工作 399
8.6 Spark SQL之基礎應用 400
8.6.1 sqlContext的基礎應用 402
8.6.2 hiveContext的基礎應用 405
8.6.3 混合使用 408
8.6.4 緩存的使用 409
8.6.5 DSL的使用 410
8.7 ThriftServer和CLI 411
8.7.1 令人驚訝的CLI 411
8.7.2 ThriftServer 414
8.8 Spark SQL之綜合應用 418
8.8.1 店鋪分類 419
8.8.2 PageRank 421
8.9 Spark SQL之調(diào)優(yōu) 424
8.9.1 并行性 424
8.9.2 高效的數(shù)據(jù)格式 425
8.9.3 內(nèi)存的使用 427
8.9.4 合適的Task 428
8.9.5 其他的一些建議 428
第9章 Machine Learning on
Spark 431
9.1 Spark MLlib機器學習 431
9.1.1 機器學習快速入門 432
9.1.2 Spark MLlib介紹 442
9.1.3 Spark MLlib架構解析 447
9.1.4 Spark Mllib核心解析 458
9.2 MLlib經(jīng)典算法解析和案例
實戰(zhàn) 462
9.2.1 Linear Regression解析和
實戰(zhàn) 462
9.2.2 K-Means解析和實戰(zhàn) 484
9.2.3 協(xié)同過濾算法分析和案例
實戰(zhàn) 502
9.3 MLLib其他常用算法解析
和代碼實戰(zhàn) 552
9.3.1 Basic Statics解析和實戰(zhàn) 553
9.3.2 MLlib樸素貝葉斯解析和
實戰(zhàn) 560
9.3.3 MLlib決策樹解析和實戰(zhàn) 562
第10章 Tachyon文件系統(tǒng) 565
10.1 Tachyon文件系統(tǒng)概述 565
10.1.1 Tachyon文件系統(tǒng)簡介 565
10.1.2 HDFS與Tachyon 566
10.1.3 Tachyon設計原理 568
10.2 Tachyon入門 568
10.2.1 Tachyon部署 568
10.2.2 Tachyon API的使用 570
10.2.3 在MapReduce、Spark
上使用Tachyon 572
10.3 Tachyon深度解析 573
10.3.1 Tachyon整體設計概述 573
10.3.2 Tachyon Master啟動流
程分析 574
10.3.3 Tachyon Worker啟動流
程分析 577
10.3.4 客戶端讀寫文件源碼分析 577
10.4 Tachyon配置參數(shù)一覽 579
10.5 小結(jié) 580
第11章 Spark Streaming原理
與實戰(zhàn) 581
11.1 Spark Streaming原理 581
11.1.1 原理和運行場景 581
11.1.2 編程模型DStream 584
11.1.3 持

本目錄推薦

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