注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)計算機科學(xué)理論與基礎(chǔ)知識深入云計算:Hadoop源代碼分析(修訂版)

深入云計算:Hadoop源代碼分析(修訂版)

深入云計算:Hadoop源代碼分析(修訂版)

定 價:¥89.00

作 者: 張鑫 著
出版社: 中國鐵道出版社
叢編項: 深入云計算
標(biāo) 簽: 程序設(shè)計 計算機/網(wǎng)絡(luò)

ISBN: 9787113186241 出版時間: 2014-08-04 包裝: 平裝
開本: 16開 頁數(shù): 656 字數(shù):  

內(nèi)容簡介

  本書是一本全面細致介紹和分析Hadoop源碼和內(nèi)部工作機理的技術(shù)書籍,通過對Hadoop內(nèi)部源碼詳細透徹的解析,使讀者能夠快速高效地掌握Hadoop的內(nèi)部工作機制,了解Hadoop內(nèi)部源碼架構(gòu),對Hadoop有更加深刻的認識。<br>本書主要對Hadoop最核心的部分:HDFS和MapReduce進行源碼解析和說明。適合所有想全面學(xué)習(xí)Hadoop開發(fā)技術(shù)的人員閱讀,也適用于使用Hadoop進行開發(fā)的工程技術(shù)人員,還可作為想深入了解Hadoop運行機制、源代碼的開發(fā)人員的參考書籍。<br><br>

作者簡介

暫缺《深入云計算:Hadoop源代碼分析(修訂版)》作者簡介

圖書目錄

第1篇& ;& ;Hadoop概述與安裝<br>第1章& ;& ;Hadoop的簡介和安裝<br>1.1& ;& ;Hadoop的簡介& ;1<br>1.1.1& ;& ;分布式文件系統(tǒng)HDFS& ;1<br>1.1.2& ;& ;并行計算模型MapReduce& ;3<br>1.2& ;& ;Hadoop的安裝& ;3<br>1.2.1& ;& ;虛擬機以及Ubuntu的安裝& ;3<br>1.2.2& ;& ;創(chuàng)建Hadoop用戶& ;6<br>1.2.3& ;& ;JDK1.6的安裝& ;7<br>1.2.4& ;& ;SSH的配置& ;8<br>1.2.5& ;& ;單機模式下Hadoop的安裝& ;11<br>1.2.6& ;& ;偽分布式模式下Hadoop的安裝& ;11<br>1.2.7& ;& ;分布式模式下Hadoop的安裝& ;14<br>第2篇& ;& ;HDFS分布式文件系統(tǒng)及IO模型<br>第2章& ;& ;HDFS架構(gòu)和分布式文件系統(tǒng)<br>2.1& ;& ;分布式文件系統(tǒng)概述& ;17<br>2.2& ;& ;HDFS的特點& ;17<br>2.3& ;& ;HDFS文件系統(tǒng)架構(gòu)& ;18<br>2.4& ;& ;Hadoop的抽象文件系統(tǒng)模型& ;19<br>2.4.1& ;& ;FileSystem抽象文件系統(tǒng)& ;19<br>2.4.2& ;& ;FileStatus文件狀態(tài)信息& ;34<br>2.4.3& ;& ;FsPermission文件或目錄的操作權(quán)限& ;34<br>2.4.4& ;& ;FileSystem的實現(xiàn)類& ;37<br>2.4.5& ;& ;FileSystem的輸入流& ;53<br>2.4.6& ;& ;FileSystem的輸出流& ;60<br>2.5& ;& ;小結(jié)& ;61<br>第3章& ;& ;Hadoop分布式文件系統(tǒng)HDFS的具體實現(xiàn)<br>3.1& ;& ;DistributedFileSystem分布式文件系統(tǒng)& ;62<br>3.2& ;& ;DFSClient& ;HDFS客戶端& ;68<br>3.3& ;& ;小結(jié)& ;109<br>第4章& ;& ;NameNode的實現(xiàn)<br>4.1& ;& ;INode抽象類& ;110<br>4.2& ;& ;INodeDirectory目錄& ;113<br>4.3& ;& ;INodeFile文件& ;116<br>4.4& ;& ;FSDirectory文件系統(tǒng)目錄& ;119<br>4.5& ;& ;FSEditLog文件系統(tǒng)的編輯日志& ;127<br>4.6& ;& ;FSImage文件系統(tǒng)鏡像& ;153<br>4.7& ;& ;Host2NodesMap主機到DataNode的映射& ;183<br>4.8& ;& ;NetworkTopology網(wǎng)絡(luò)拓撲結(jié)構(gòu)& ;187<br>4.9& ;& ;HostsFileReader主機文件讀取器& ;196<br>4.10& ;& ;BlocksMap& ;數(shù)據(jù)塊到其元數(shù)據(jù)的映射& ;198<br>4.11& ;& ;FSNamesystem& ;HDFS文件系統(tǒng)的命名空間& ;201<br>4.12& ;& ;NameNode名稱結(jié)點& ;219<br>4.13& ;& ;小結(jié)& ;230<br>第5章& ;& ;Datanode的實現(xiàn)<br>5.1& ;& ;Block數(shù)據(jù)塊& ;232<br>5.2& ;& ;DatanodeID類& ;232<br>5.3& ;& ;DatanodeInfo類& ;233<br>5.4& ;& ;BlockSender數(shù)據(jù)塊發(fā)送器& ;235<br>5.5& ;& ;BlockReceiver數(shù)據(jù)塊接收器& ;240<br>5.6& ;& ;DataBlockScanner數(shù)據(jù)塊掃描器& ;246<br>5.7& ;& ;FSDataset& ;Datanode數(shù)據(jù)集合& ;253<br>5.8& ;& ;DataXceiverServer& ;266<br>5.9& ;& ;DataXceiver& ;267<br>5.10& ;& ;Datanode類& ;271<br>5.11& ;& ;小結(jié)& ;282<br>第6章& ;& ;Hadoop的IO<br>6.1& ;& ;數(shù)據(jù)類型接口& ;283<br>6.1.1& ;& ;Writable接口& ;283<br>6.1.2& ;& ;Comparable接口& ;283<br>6.1.3& ;& ;WritableComparable接口& ;284<br>6.1.4& ;& ;RawComparator比較器接口& ;284<br>6.1.5& ;& ;WritableComparator接口& ;285<br>6.2& ;& ;基本數(shù)據(jù)類型& ;287<br>6.2.1& ;& ;IntWritable整型類型& ;287<br>6.2.2& ;& ;Text文本類型& ;288<br>6.2.3& ;& ;NullWritable類& ;292<br>6.2.4& ;& ;ObjectWritable類& ;292<br>6.3& ;& ;文件類型& ;293<br>6.3.1& ;& ;SequenceFile序列文件& ;293<br>6.3.2& ;& ;MapFile映射文件& ;304<br>6.4& ;& ;小結(jié)& ;312<br>第3篇& ;& ;MapReduce計算框架及RPC通信模型<br>第7章& ;& ;MapReduce的輸入和輸出<br>7.1& ;& ;輸入格式InputFormat& ;313<br>7.1.1& ;& ;InputFormat抽象類& ;313<br>7.1.2& ;& ;FileInputFormat文件輸入格式& ;315<br>7.1.3& ;& ;TextInputFormat文本文件輸入格式& ;317<br>7.1.4& ;& ;KeyValueTextInputFormat鍵值對文件輸入格式& ;317<br>7.1.5& ;& ;CombineFileInputFormat組合文件輸入格式& ;317<br>7.1.6& ;& ;SequenceFileInputFormat序列文件輸入格式& ;319<br>7.1.7& ;& ;DBInputFormat數(shù)據(jù)庫輸入格式& ;320<br>7.1.8& ;& ;MultipleInputs多種輸入格式& ;322<br>7.1.9& ;& ;DelegatingInputFormat授權(quán)輸入格式& ;324<br>7.2& ;& ;輸入分片InputSplit& ;326<br>7.2.1& ;& ;FileSplit文件輸入分片& ;326<br>7.2.2& ;& ;CombineFileSplit多文件輸入分片& ;327<br>7.2.3& ;& ;DBInputSplit數(shù)據(jù)庫輸入分片& ;328<br>7.3& ;& ;記錄讀取器RecordReader& ;328<br>7.3.1& ;& ;LineRecordReader行記錄讀取器& ;330<br>7.3.2& ;& ;KeyValueLineRecordReader鍵值對記錄讀取器& ;332<br>7.3.3& ;& ;CombineFileRecordReader組合文件記錄讀取器& ;332<br>7.3.4& ;& ;SequenceFileRecordReader序列文件記錄讀取器& ;333<br>7.3.5& ;& ;SequenceFileAsTextRecordReader和SequenceFileAsBinaryRecordReader& ;334<br>7.3.6& ;& ;DBRecordReader數(shù)據(jù)庫記錄讀取器& ;334<br>7.4& ;& ;輸出格式OutputFormat& ;335<br>7.4.1& ;& ;OutputFormat抽象類& ;335<br>7.4.2& ;& ;FileOutputFormat文件輸出格式& ;337<br>7.4.3& ;& ;TextOutputFormat文本格式的文件輸出格式& ;339<br>7.4.4& ;& ;SequenceFileOutputFormat普通序列文件輸出格式& ;340<br>7.4.5& ;& ;SequenceFileAsBinaryOutputFormat二進制序列文件輸出格式& ;340<br>7.4.6& ;& ;FilterOutputFormat過濾器輸出格式& ;341<br>7.4.7& ;& ;DBOutputFormat數(shù)據(jù)庫輸出格式& ;341<br>7.4.8& ;& ;MultipleOutputs多種輸出格式& ;342<br>7.5& ;& ;記錄寫入器RecordWriter& ;344<br>7.5.1& ;& ;DBRecordWriter數(shù)據(jù)庫記錄寫入器& ;345<br>7.5.2& ;& ;FilterRecordWriter過濾器記錄寫入器& ;346<br>7.5.3& ;& ;LineRecordWriter& ;文本行記錄寫入器& ;346<br>7.6& ;& ;輸出提交器OutputCommitter& ;347<br>7.6.1& ;& ;OutputCommitter輸出提交器& ;348<br>7.6.2& ;& ;FileOutputCommitter文件輸出提交器& ;348<br>7.7& ;& ;小結(jié)& ;351<br>第8章& ;& ;Hadoop中的Context和ID<br>8.1& ;& ;Hadoop運行過程中的Context上下文& ;352<br>8.1.1& ;& ;JobContext作業(yè)上下文& ;353<br>8.1.2& ;& ;Job作業(yè)& ;354<br>8.1.3& ;& ;TaskAttemptContext任務(wù)嘗試上下文& ;358<br>8.1.4& ;& ;TaskInputOutputContext任務(wù)輸入輸出上下文& ;358<br>8.1.5& ;& ;MapContext& ;Mapper執(zhí)行的上下文& ;360<br>8.1.6& ;& ;ReduceContext& ;Reducer執(zhí)行的上下文& ;360<br>8.2& ;& ;Hadoop運行過程中的ID類& ;364<br>8.2.1& ;& ;ID類& ;365<br>8.2.2& ;& ;JobID作業(yè)ID& ;365<br>8.2.3& ;& ;TaskID任務(wù)ID& ;367<br>8.2.4& ;& ;TaskAttemptID任務(wù)嘗試ID& ;368<br>8.3& ;& ;小結(jié)& ;368<br>第9章& ;& ;Hadoop的計算模型MapReduce<br>9.1& ;& ;Map處理過程& ;369<br>9.1.1& ;& ;Mapper概述& ;369<br>9.1.2& ;& ;Mapper源代碼分析& ;370<br>9.1.3& ;& ;InverseMapper反轉(zhuǎn)Mapper& ;371<br>9.1.4& ;& ;TokenCounterMapper標(biāo)記計數(shù)Mapper& ;372<br>9.1.5& ;& ;MultithreadedMapper多線程Mapper& ;372<br>9.1.6& ;& ;FieldSelectionMapper字段選擇Mapper& ;375<br>9.1.7& ;& ;DelegatingMapper授權(quán)Mapper& ;376<br>9.2& ;& ;Reducer處理過程& ;376<br>9.2.1& ;& ;Reducer概述& ;376<br>9.2.2& ;& ;Reducer源代碼& ;377<br>9.2.3& ;& ;IntSumReducer和LongSumReducer& ;378<br>9.2.4& ;& ;FieldSelectionReducer字段選擇Reducer& ;379<br>9.3& ;& ;Partitioner分區(qū)處理過程& ;379<br>9.3.1& ;& ;Partitioner概述& ;379<br>9.3.2& ;& ;Partitioner源代碼& ;380<br>9.3.3& ;& ;HashPartitioner& ;hash分區(qū)& ;380<br>9.3.4& ;& ;BinaryPartitioner二進制分區(qū)& ;380<br>9.3.5& ;& ;KeyFieldBasedPartitioner基于鍵字段的分區(qū)& ;382<br>9.3.6& ;& ;TotalOrderPartitioner全排序分區(qū)& ;383<br>9.4& ;& ;小結(jié)& ;387<br>第10章& ;& ;JobClient的執(zhí)行過程分析<br>10.1& ;& ;MapReduce作業(yè)處理過程概述& ;388<br>10.1.1& ;& ;JobConf& ;MapReduce作業(yè)的配置信息& ;389<br>10.1.2& ;& ;JobSubmissionProtocol作業(yè)提交的接口& ;392<br>10.1.3& ;& ;RunningJob正在運行的Job作業(yè)的接口& ;394<br>10.1.4& ;& ;JobStatus和JobProfile作業(yè)狀態(tài)信息和注冊信息& ;396<br>10.1.5& ;& ;JobSubmissionFiles& ;獲得作業(yè)提交的文件& ;399<br>10.2& ;& ;JobClient提交作業(yè)流程& ;401<br>10.3& ;& ;JobClient& ;提交Job的客戶端& ;401<br>10.4& ;& ;小結(jié)& ;412<br>第11章& ;& ;JobTracker的執(zhí)行過程分析<br>11.1& ;& ;JobTracker處理過程概述& ;413<br>11.2& ;& ;JobInfo作業(yè)信息& ;413<br>11.3& ;& ;Counters計數(shù)器& ;414<br>11.4& ;& ;Queue& ;Job隊列對象& ;417<br>11.5& ;& ;QueueManager& ;Job隊列管理對象& ;418<br>11.6& ;& ;JobInProgress正在處理的作業(yè)& ;420<br>11.7& ;& ;JobTracker對JobClient提交的作業(yè)的處理& ;437<br>11.8& ;& ;JobTracker的啟動以及Job的初始化& ;441<br>11.9& ;& ;JobTracker的其他源代碼分析& ;445<br>11.10& ;& ;JobTracker中的作業(yè)恢復(fù)管理器RecoveryManager& ;459<br>11.11& ;& ;JobInProgressListener和JobQueueJobInProgressListener& ;465<br>11.12& ;& ;小結(jié)& ;467<br>第12章& ;& ;Hadoop的作業(yè)調(diào)度器<br>12.1& ;& ;Hadoop作業(yè)調(diào)度器概述& ;468<br>12.2& ;& ;TaskScheduler調(diào)度器的抽象父類& ;469<br>12.3& ;& ;JobQueueTaskScheduler& ;FIFO調(diào)度器& ;470<br>12.4& ;& ;LimitTasksPerJobTaskScheduler任務(wù)數(shù)限制FIFO調(diào)度器& ;475<br>12.5& ;& ;CapacityTaskScheduler計算能力調(diào)度器& ;477<br>12.6& ;& ;FairScheduler公平調(diào)度器& ;488<br>12.7& ;& ;小結(jié)& ;504<br>第13章& ;& ;TaskTracker的執(zhí)行過程<br>13.1& ;& ;TaskTracker的啟動& ;505<br>13.2& ;& ;TaskTracker與JobTracker進行通信的組件InterTrackerProtocol& ;509<br>13.3& ;& ;JobTracker返回給TaskTracker的Action的類型& ;511<br>13.4& ;& ;TaskTracker向JobTracker發(fā)送心跳的過程& ;512<br>13.5& ;& ;TaskTracker的任務(wù)處理過程& ;521<br>13.6& ;& ;TaskTracker的其他源代碼分析& ;526<br>13.7& ;& ;TaskStatus任務(wù)的狀態(tài)信息& ;544<br>13.8& ;& ;TaskInProgress正在處理的任務(wù)& ;548<br>13.9& ;& ;Task所有任務(wù)的父類& ;555<br>13.10& ;& ;MapTask執(zhí)行過程概述& ;566<br>13.11& ;& ;MapOutputBuffer& ;Map輸出緩沖區(qū)& ;568<br>13.12& ;& ;ReduceTask執(zhí)行過程概述& ;585<br>13.13& ;& ;ReduceCopier& ;Reduce的Copy和Merge執(zhí)行工具& ;591<br>13.14& ;& ;小結(jié)& ;612<br>第14章& ;& ;Hadoop的RPC協(xié)議<br>14.1& ;& ;Hadoop& ;RPC概念概述& ;613<br>14.2& ;& ;RPC協(xié)議接口& ;614<br>14.2.1& ;& ;ClientDatanodeProtocol客戶端與DataNode進行通信的協(xié)議& ;614<br>14.2.2& ;& ;ClientProtocol客戶端和NameNode進行通信的協(xié)議& ;615<br>14.2.3& ;& ;DatanodeProtocol& ;DataNode與NameNode進行通信的協(xié)議& ;617<br>14.2.4& ;& ;InterDatanodeProtocol& ;DataNode之間進行通信的協(xié)議& ;618<br>14.2.5& ;& ;NamenodeProtocol& ;SecondaryNameNode與NameNode進行通信的協(xié)議& ;619<br>14.2.6& ;& ;InterTrackerProtocol& ;TaskTracker與JobTracker進行通信的協(xié)議& ;619<br>14.2.7& ;& ;JobSubmissionProtocol& ;JobClient與JobTracker進行通信的協(xié)議& ;620<br>14.2.8& ;& ;TaskUmbilicalProtocol& ;Child進程與TaskTracker父進程進行通信的協(xié)議& ;622<br>14.3& ;& ;RPC的客戶端和服務(wù)器端的實現(xiàn)& ;623<br>14.3.1& ;& ;Client客戶端& ;623<br>14.3.2& ;& ;Server服務(wù)端& ;631<br>14.4& ;& ;小結(jié)& ;644

本目錄推薦

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