注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)計算機科學理論與基礎(chǔ)知識分布式統(tǒng)一大數(shù)據(jù)虛擬文件系統(tǒng):Alluxio原理、技術(shù)與實踐

分布式統(tǒng)一大數(shù)據(jù)虛擬文件系統(tǒng):Alluxio原理、技術(shù)與實踐

分布式統(tǒng)一大數(shù)據(jù)虛擬文件系統(tǒng):Alluxio原理、技術(shù)與實踐

定 價:¥99.00

作 者: 顧榮 劉嘉承 毛寶龍 著
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787111732587 出版時間: 2023-08-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字數(shù):  

內(nèi)容簡介

  本書以廣泛使用的Alluxio 2.8.0開源版本為基礎(chǔ)編寫,深入介紹Alluxio相關(guān)分布式統(tǒng)一大數(shù)據(jù)文件系統(tǒng)的技術(shù)原理與實踐案例,主要內(nèi)容包括系統(tǒng)入門與使用、內(nèi)核組件設(shè)計實現(xiàn)原理,同時詳細介紹了大型企業(yè)應(yīng)用案例與實踐,并附有Alluxio的開源社區(qū)開發(fā)者指南。本書為Alluxio開源社區(qū)用戶、高校大數(shù)據(jù)系統(tǒng)課程師生以及潛在企業(yè)用戶提供了較為完整的技術(shù)指南和實用教程,既可作為大數(shù)據(jù)專業(yè)方向的專業(yè)教材,也可作為大數(shù)據(jù)從業(yè)者和研究者的重要專業(yè)資料。 【讀者對象】*Alluxio開源社區(qū)貢獻者和用戶*高校分布式/大數(shù)據(jù)存儲系統(tǒng)課程本科生和研究生*企業(yè)信息架構(gòu)規(guī)劃與建設(shè)的從業(yè)人員*分布式數(shù)據(jù)存儲與編排系統(tǒng)領(lǐng)域研究與開發(fā)人員

作者簡介

  *顧榮南京大學特聘研究員,博導,F(xiàn)luid開源項目社區(qū)主席,Alluxio開源項目PMC成員。主要研究方向為分布式網(wǎng)絡(luò)與計算,專注云計算與大數(shù)據(jù)系統(tǒng),發(fā)表相關(guān)論文60余篇,包括一流會議/期刊USENIX ATC、VLDB、ICDE、 WWW、 VLDBJ、TPDS等。主持國家自然科學基金面上項目/青年項目、國家重點研發(fā)計劃子課題、中國博士后科學基金特別資助項目,以及大型企業(yè)創(chuàng)新基金項目等10余項,獲江蘇省科學技術(shù)一等獎、江蘇省教學成果二等獎、IEEE可擴展計算委員會杰出早期職業(yè)學者獎、中國計算機學會分布式計算與系統(tǒng)專委會青年創(chuàng)新先鋒、中國信通院OSCAR尖峰開源人物獎、阿里巴巴優(yōu)秀學術(shù)合作項目獎、華為公司火花獎、騰訊云價值專家獎、南京大學青年五四獎?wù)碌取?劉嘉承Alluxio的資深開發(fā)工程師,Alluxio開源社區(qū)PMC成員和Maintainer,Alluxio元數(shù)據(jù)模塊技術(shù)負責人之一,在Alluxio的大規(guī)模場景優(yōu)化方面做了大量深入扎實的工作。主導推動了Alluxio核心工程團隊和中國社區(qū)的合作開發(fā),深度參與了Alluxio全球多個旗艦用戶/客戶場景中的落地,并為其在大規(guī)模安全生產(chǎn)過程中部署使用Alluxio保駕護航。*毛寶龍騰訊Alluxio開源協(xié)同團隊負責人,同時也是Alluxio開源社區(qū)PMC成員和Maintainer及Apache Ozone社區(qū)Committer,是Alluxio開源社區(qū)JNI-FUSE、Ozone、CephFS、COSN 等多個模塊的創(chuàng)建者和維護者,也是高低水位異步緩存清理服務(wù)、動態(tài)配置更新框架、ratis-shell HA工具研發(fā)和集成等功能特性的開發(fā)者。他多年持續(xù)參與 Alluxio、Ozone、HDFS、Ratis 等存儲領(lǐng)域開源社區(qū)的研發(fā)工作,同時也將 Alluxio 等開源技術(shù)廣泛應(yīng)用在多個知名互聯(lián)網(wǎng)公司。

圖書目錄

前言
第1章 Alluxio總體介紹與快速入門1
1.1 Alluxio的發(fā)展背景與系統(tǒng)概覽1
1.1.1 Alluxio Master組件4
1.1.2 Alluxio Worker組件6
1.1.3 Alluxio Job Service組件7
1.1.4 數(shù)據(jù)讀寫流程7
1.2  Alluxio配置部署與程序運行11
1.2.1 獲取/編譯Alluxio系統(tǒng)11
1.2.2 單機模式安裝部署13
1.2.3 集群模式安裝部署14
1.2.4 Alluxio服務(wù)啟停操作15
第2章 Alluxio的核心功能服務(wù)18
2.1 文件系統(tǒng)統(tǒng)一命名空間18
2.1.1 統(tǒng)一命名空間概覽18
2.1.2 掛載底層存儲系統(tǒng)19
2.1.3 與底層存儲系統(tǒng)元數(shù)據(jù)同步20
2.1.4 使用示例21
2.2 層級存儲與數(shù)據(jù)緩存22
2.2.1 存儲結(jié)構(gòu)概覽22
2.2.2 Alluxio層級存儲23
2.2.3 Alluxio的數(shù)據(jù)副本管理機制24
2.2.4 使用示例25
2.3 Alluxio與HDFS/POSIX接口存
   儲系統(tǒng)的集成26
2.3.1 HDFS底層存儲連接器的基本
    原理26
2.3.2 配置HDFS作為Alluxio的
     底層存儲27
2.3.3 配置CephFS作為Alluxio的
      底層存儲30
2.3.4 配置NFS作為Alluxio的底層
     存儲32
2.4 Alluxio與對象存儲系統(tǒng)的集成32
2.4.1 對象類型底層存儲連接器的
     基本原理32
2.4.2 配置AWS S3作為Alluxio的
     底層存儲34
2.4.3 配置阿里云OSS作為Alluxio
     的底層存儲35
2.4.4 配置Apache Ozone作為Alluxio
      的底層存儲37
2.4.5 配置Swift作為Alluxio的底層
   存儲38
2.5 新增底層存儲連接模塊的集成
   方法39
2.5.1 客戶端常見操作與底層存儲
     連接器的交互39
2.5.2 底層存儲連接器的加載機制41
2.5.3 底層存儲連接器的管理方式42
2.5.4 新增底層存儲連接器的示例43
2.6  Alluxio與大數(shù)據(jù)計算框架的集成45
2.6.1 與Apache Spark并行計算
     框架集成45
2.6.2 與Kubernetes中的Spark并
     行計算框架集成48
2.6.3 與Apache Flink并行計算
     框架集成51
2.7  Alluxio與大數(shù)據(jù)查詢系統(tǒng)的集成52
2.7.1 與Hive數(shù)據(jù)倉庫集成52
2.7.2 與Presto數(shù)據(jù)倉庫集成59
2.8  Alluxio與深度學習框架的集成63
第3章 Alluxio的基本使用與
    運維操作67
3.1 Alluxio的重要操作命令67
3.1.1 管理員操作命令67
3.1.2 用戶操作命令72
3.1.3 常用的編程API86
3.1.4 Web界面展示與操作88
3.2 Alluxio的掛載點運維94
3.3 Alluxio的元數(shù)據(jù)同步和備份運維95
3.3.1 元數(shù)據(jù)同步的配置95
3.3.2 自動/手動生成備份和從備份
      恢復集群96
3.4 Journal日志和高可用運維98
3.4.1 UFS Journal模式配置方式99
3.4.2 Embedded Journal模式配置
     方式100
3.4.3 自動/手動生成Checkpoint102
3.4.4 高可用集群的部署與配置
     更改103
3.4.5 Master節(jié)點的添加/移除和
     Primary Master的切換104
3.4.6 客戶端配置連接高可用
      Master106
3.5 Alluxio的不同配置方式108
3.5.1 Alluxio的配置方式和生效
      優(yōu)先級108
3.5.2 Alluxio客戶端配置方式111
3.5.3 Alluxio集群配置方式112
3.5.4 查看配置項112
3.6 Alluxio的Log日志運維113
3.6.1 Log日志位置113
3.6.2 改變Log日志等級114
3.6.3 Alluxio的集群指標116
3.7 Job Service使用和查詢運維118
3.7.1 用命令行查詢作業(yè)狀態(tài)118
3.7.2 作業(yè)執(zhí)行Log 日志跟蹤119
3.8 Alluxio的安全認證與權(quán)限控制119
3.8.1 安全認證模式120
3.8.2  訪問權(quán)限控制120
3.8.3  用戶模擬功能123
3.8.4 審計日志功能124
第4章 Alluxio元數(shù)據(jù)管理與主
    節(jié)點原理126
4.1 Alluxio Master核心功能概覽126
4.2 Master組件的元數(shù)據(jù)管理128
4.2.1 Master對元數(shù)據(jù)的管理128
4.2.2 文件/數(shù)據(jù)塊元數(shù)據(jù)示例130
4.2.3 元數(shù)據(jù)存儲在堆上—HEAP
     模式134
4.2.4 元數(shù)據(jù)存儲在堆外—ROCKS
     模式135
4.3 Alluxio的統(tǒng)一命名空間和底層存
    儲管理137
4.3.1 Alluxio的數(shù)據(jù)掛載功能137
4.3.2 Alluxio的文件生命周期139
4.3.3 Alluxio的一致性模型140
4.3.4 Alluxio與底層存儲的元數(shù)據(jù)/
     數(shù)據(jù)同步145
4.4 Journal日志和高可用152
4.4.1 Alluxio的元數(shù)據(jù)狀態(tài)和重要
     性質(zhì)152
4.4.2 Alluxio的Journal日志內(nèi)容155
4.4.3 Journal日志的Checkpoint操作156
4.4.4 基于底層存儲的UFS Journal
     模式156
4.4.5 基于Raft協(xié)議的Embedded 
     Journal模式162
4.4.6 UFS Journal和Embedded 
     Journal之間的切換與選擇166
4.5 元數(shù)據(jù)備份功能168
4.5.1 元數(shù)據(jù)備份原理168
4.5.2 元數(shù)據(jù)備份解決的兼容問題168
4.5.3 在高可用集群中的代理備份
     功能169
4.5.4 備份操作和Journal日志的
     Checkpoint操作的區(qū)別170
4.6 Alluxio Master的Worker管理
    機制171
4.6.1 Alluxio Worker的注冊與心跳171
4.6.2 在集群中加入和移除Alluxio 
     Worker172
4.6.3 Alluxio Master的可用Worker
     列表管理173
4.7 主節(jié)點的元數(shù)據(jù)并發(fā)機制173
4.7.1 文件路徑并發(fā)控制173
4.7.2 Journal日志并發(fā)控制176
4.7.3 Worker相關(guān)元數(shù)據(jù)并發(fā)控制176
第5章 Alluxio數(shù)據(jù)存儲的核心特
    性與原理178
5.1 Alluxio Worker組件概覽178
5.1.1 Alluxio Worker數(shù)據(jù)管理簡介178
5.1.2 Worker的發(fā)展方向179
5.1.3 Worker對外開放的服務(wù)接口179
5.2 Alluxio系統(tǒng)中的數(shù)據(jù)I/O180
5.2.1 Alluxio的數(shù)據(jù)讀模式詳解180
5.2.2 Alluxio的數(shù)據(jù)寫模式詳解182
5.2.3 本地讀寫的優(yōu)化184
5.3 Alluxio系統(tǒng)中數(shù)據(jù)塊的生命周期
  和管理186
5.3.1 數(shù)據(jù)塊的加載和刪除187
5.3.2 數(shù)據(jù)塊的寫入和持久化187
5.3.3 數(shù)據(jù)塊的鎖定和解鎖188
5.3.4 數(shù)據(jù)塊的副本控制188
5.3.5 數(shù)據(jù)塊的TTL控制189
5.4 Alluxio Worker的分層緩存190
5.4.1 分層緩存的設(shè)計190
5.4.2 使用單層緩存191
5.4.3 使用多層緩存192
5.4.4 緩存分配機制192
5.4.5 緩存驅(qū)逐機制193
5.4.6 多層緩存的管理機制195
5.5 Alluxio Worker的并發(fā)和流量
    控制機制197
5.5.1 數(shù)據(jù)塊鎖197
5.5.2 數(shù)據(jù)塊的原子提交197
5.5.3 數(shù)據(jù)讀寫的流量控制197
5.6 代碼實戰(zhàn)—自定義緩存分配
    策略198
第6章 Alluxio客戶端與Job 
    Service的原理200
6.1 Alluxio的原生客戶端201
6.1.1 Alluxio原生客戶端的總體
     原理201
6.1.2 客戶端與主節(jié)點的通信方式203
6.1.3 客戶端側(cè)的塊位置選取策略204
6.2 Alluxio的Hadoop兼容客戶端205
6.2.1 Hadoop兼容文件系統(tǒng)的
     Alluxio實現(xiàn)206
6.2.2 大數(shù)據(jù)生態(tài)應(yīng)用Alluxio206
6.3 Alluxio的POSIX客戶端207
6.3.1 JNI-FUSE模塊208
6.3.2 啟動流程209
6.3.3 FUSE Shell209
6.3.4 適用場景210
6.4 Alluxio Proxy服務(wù)210
6.4.1 S3 API210
6.4.2 REST API211
6.5 Alluxio系統(tǒng)的Shell命令行211
6.6 Alluxio Job Service概覽和整體
    架構(gòu)212
6.6.1 Job Service組件功能介紹212
6.6.2 Job Service的發(fā)展方向212
6.6.3 Job Service對外開放的接口213
6.7 Alluxio Job Service的異步作業(yè)
    分類213
6.8 Alluxio Job Service的優(yōu)化功能216
6.9 Alluxio Job Master管理的元數(shù)據(jù)217
6.10 Alluxio Job Service高可用和Job 
      Worker管理217
6.10.1 Job Master的高可用217
6.10.2 Job Master對Job Worker的
        管理218
6.11 代碼實戰(zhàn)219
6.11.1 Alluxio Shell拓展實現(xiàn)219
6.11.2 塊位置選擇策略拓展實現(xiàn)219
6.11.3 Job Service自定義作業(yè)拓展
       實現(xiàn)220
第7章 Alluxio系統(tǒng)性能深度調(diào)優(yōu)222
7.1 Alluxio的推薦系統(tǒng)配置及測算
    方法222
7.1.1 Alluxio文件系統(tǒng)規(guī)模觀測222
7.1.2 Alluxio Master進程推薦配置225
7.1.3 Alluxio Worker進程推薦配置228
7.1.4 Alluxio Job Master進程推薦
     配置230
7.1.5 Alluxio Job Worker進程推薦
     配置230
7.2 Alluxio常見的性能問題及解決
    方案231
7.2.1 讀性能差231
7.2.2 寫性能差234
7.2.3 服務(wù)資源占用高235
7.2.4 請求超時236
7.3 Alluxio Master調(diào)優(yōu)238
7.3.1 元數(shù)據(jù)調(diào)優(yōu)238
7.3.2 Journal日志性能調(diào)優(yōu)239
7.3.3 UFS元數(shù)據(jù)緩存240
7.3.4 元數(shù)據(jù)同步調(diào)優(yōu)240
7.3.5 Alluxio Master的Worker管理
      調(diào)優(yōu)241
7.3.6 RPC并發(fā)調(diào)優(yōu)244
7.3.7 心跳線程調(diào)優(yōu)245
7.4 Alluxio Worker調(diào)優(yōu)245
7.4.1 異步緩存調(diào)優(yōu)245
7.4.2 RPC并發(fā)調(diào)優(yōu)246
7.4.3 UFS數(shù)據(jù)流緩存246
7.5 Job Service調(diào)優(yōu)247
7.5.1 Job Service吞吐量調(diào)優(yōu)247
7.5.2 Job Service并發(fā)調(diào)優(yōu)247
7.6 客戶端調(diào)優(yōu)248
7.6.1 Alluxio Worker選取策略調(diào)優(yōu)248
7.6.2 被動緩存策略調(diào)優(yōu)249
7.6.3 Commit操作優(yōu)化249
7.6.4 重試操作調(diào)優(yōu)251
7.6.5 Keepalive調(diào)優(yōu)252
7.6.6 其他客戶端配置調(diào)優(yōu)252
7.7 性能壓力測試252
7.7.1 壓力測試的目的和工具252
7.7.2 Alluxio的壓力測試框架
      StressBench253
7.7.3 StressBench提供的測試內(nèi)容254
第8章 Alluxio與云原生環(huán)境的
    集成256
8.1 Kubernetes中的Alluxio集群架構(gòu)256
8.2 Alluxio集群的部署258
8.2.1 部署的準備工作258
8.2.2 Alluxio集群的基礎(chǔ)配置261
8.2.3 集群的部署和驗證263
8.3 Alluxio集群的進階配置266
8.3.1 Master節(jié)點的Journal日志266
8.3.2 Master節(jié)點的高可用配置267
8.3.3 使用RocksDB作為元數(shù)據(jù)
      存儲267
8.3.4 配置Alluxio Worker多層緩存268
8.3.5 配置底層文件系統(tǒng)270
8.4 配置Alluxio使用Kubernetes高級
    功能271
8.5 Alluxio的其他Kubernetes部署
    架構(gòu)274
8.5.1 在Kubernetes中部署使用
      Alluxio FUSE274
8.5.2 通過Kubernetes CSI使用
      Alluxio FUSE276
8.6 Kubernetes環(huán)境下的讀寫性能
    優(yōu)化278
8.6.1 讀寫本地性優(yōu)化278
8.6.2 使用宿主機資源優(yōu)化性能280
8.6.3 Alluxio和不同生命周期的應(yīng)
      用集成281
第9章 Alluxio在混合云場景中
    的應(yīng)用282
9.1 混合云業(yè)務(wù)場景和常見挑戰(zhàn)282
9.2 Alluxio與傳統(tǒng)方案對比分析283
9.2.1 方案一:將數(shù)據(jù)從本地復制
      到云存儲以運行分析283
9.2.2 方案二:使用NetApp ONTAP
     或AWS DataSync等托管服務(wù)284
9.2.3 方案三:使用Alluxio數(shù)據(jù)編
      排技術(shù)的解決方案284
9.3 混合云上的Alluxio解決方案
   架構(gòu)285
9.3.1 Alluxio架構(gòu)原理回顧285
9.3.2 云上計算集群搭配部署Alluxio
     的架構(gòu)286
9.3.3 節(jié)點的生命周期選擇287
9.3.4 數(shù)據(jù)中心鏈路287
9.3.5 安全288
9.3.6 遷移到混合云架構(gòu)的幾大步驟288
9.4 基準測試288
9.4.1 測試集群架構(gòu)289
9.4.2 測試方案和配置290
9.4.3 測試結(jié)果291
9.4.4 測試結(jié)果分析293
9.5 案例294
9.5.1 混合云案例1:華爾街大型
     量化基金公司294
9.5.2 混合云案例2:某知名電信
     公司295
9.6 Alluxio在某科技巨頭的應(yīng)用296
9.6.1 案例概覽296
9.6.2 云化之路和挑戰(zhàn)297
9.6.3 解決方案:賦能混合云和多云
     架構(gòu),實現(xiàn)應(yīng)用靈活可移植298
9.6.4 成效:顯著的商業(yè)價值和技術(shù)
     優(yōu)勢299
9.6.5 展望未來:下一代數(shù)據(jù)平臺301
9.7 結(jié)論301
第10章 Alluxio在大數(shù)據(jù)分析場
      景中的應(yīng)用303
10.1 Presto和Alluxio結(jié)合的架構(gòu)及
     原理303
10.2 Presto與Alluxio搭配部署的架
     構(gòu)優(yōu)勢305
10.2.1 Alluxio幫助企業(yè)將數(shù)據(jù)平臺
        升級為混合云數(shù)據(jù)湖305
10.2.2 Alluxio支持跨多個數(shù)據(jù)源的
        統(tǒng)一數(shù)據(jù)訪問305
10.2.3 Alluxio使用通用緩存解決方
        案加速整個數(shù)據(jù)工作流306
10.3 常見應(yīng)用場景和案例研究307
10.3.1 單一云上的大數(shù)據(jù)分析:在任
        何云存儲上實現(xiàn)快速的SQL307
10.3.2 混合云上的大數(shù)據(jù)分析:簡
        化上云過程308
10.3.3 跨數(shù)據(jù)中心分析:無處不在
        的高性能分析309
10.4 混合云架構(gòu)中的基準測試性能309
10.5 某公司金融數(shù)據(jù)團隊的Presto
    Alluxio場景310
10.5.1 大數(shù)據(jù)OLAP分析面臨的
        挑戰(zhàn)311
10.5.2 一種常見的解決方案311
10.5.3 Alluxio:一個兼顧性能和自
        動化管理的更優(yōu)解312
10.5.4 新的挑戰(zhàn)313
10.5.5 最終架構(gòu)315
10.5.6 線上運行效果315
10.5.7 總結(jié)展望317
10.6 金山云基于Alluxio加速Presto
    查詢的性能評估317
10.6.1 測試環(huán)境317
10.6.2 理想條件下的Alluxio加速
        表現(xiàn)319
10.6.3 影響加速收益的重要因素320
10.6.4 本測試的意義327
10.6.5 Alluxio使用和優(yōu)化建議328
第11章 Alluxio在ETL場景中
      的應(yīng)用329
11.1 Spark和Alluxio結(jié)合的架構(gòu)及
   原理329
11.2 ETL場景中搭配部署Alluxio的
   架構(gòu)優(yōu)勢330
11.2.1 技術(shù)優(yōu)勢331
11.2.2 商業(yè)價值335
11.3 案例研究336
11.3.1 通過從預處理到訓練階段的
        數(shù)據(jù)共享提高模型訓練效率336
11.3.2 混合云分析:計算引擎在云
        上,數(shù)據(jù)存儲在本地337
11.4 性能基準測試和成本節(jié)約測算337
11.4.1 測試規(guī)格338
11.4.2 測試結(jié)果338
11.4.3 云上計算集群使用臨時實例
        的成本優(yōu)化方案338
11.5 Alluxio在某知名大型企業(yè)的
   應(yīng)用340
11.5.1 分布式緩存提升性能340
11.5.2 存算分離實現(xiàn)彈性擴容342
第12章 Alluxio在AI/ML場景中
      的應(yīng)用344
12.1 AI/ML模型訓練對數(shù)據(jù)平臺
   的常見需求344
12.2 Alluxio與傳統(tǒng)方案的對比分析345
12.2.1 方案1:在本地存儲數(shù)據(jù)
        副本345
12.2.2 方案2:直接訪問云存儲346
12.2.3 方案3:使用Alluxio347
12.2.4 三種方案的對比349
12.3 性能測試351
12.3.1 測試架構(gòu)351
12.3.2 測試規(guī)格352
12.3.3 測試結(jié)果352
12.4 場景總結(jié)354
12.5 Alluxio在嗶哩嗶哩機器學習場
   景中的應(yīng)用355
12.5.1 技術(shù)挑戰(zhàn)和解決方案分析356
12.5.2 生產(chǎn)環(huán)境中的最佳實踐經(jīng)驗358
12.5.3 落地過程中的Alluxio調(diào)優(yōu)360
12.5.4 實際場景下Alluxio的性能
    表現(xiàn)361
12.6 云知聲Atlas超算平臺——基于
    Fluid Alluxio的計算加速實踐362
12.6.1 Atlas超算平臺架構(gòu)363
12.6.2 Atlas早期遇到的問題和解決
    方案363
12.6.3 Atlas Fluid Alluxio的架構(gòu)
    選型與優(yōu)勢364
12.6.4 基于Atlas全新架構(gòu)的性能
    實驗367
12.6.5 收益總結(jié)與未來展望369
附錄:如何貢獻開源項目——以
   Alluxio為例371
參考文獻377

本目錄推薦

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