java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4035|回复: 3

【java电子书】Hadoop技术内幕:深入解析MapReduce架构设计与实现原理 PDF 电子书 ...

[复制链接]
  • TA的每日心情
    开心
    2021-5-25 00:00
  • 签到天数: 1917 天

    [LV.Master]出神入化

    2062

    主题

    3720

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66592

    宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2016-12-6 14:06:01 | 显示全部楼层 |阅读模式
    java自学网(www.javazx.com)-java论坛,java电子书推荐:《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》
    ' c0 k; m5 \! z  `java电子书推荐理由:由Hadoop领域资深的实践者亲自执笔,首先介绍了MapReduce的设计理念和编程模型,然后从源代码的角度深入分析了RPC框架、客户端、JobTracker、TaskTracker和Task等MapReduce运行时环境的架构设计与实现原理,最后从实际应用的角度深入讲解了Hadoop的性能优化、安全机制、多用户作业调度器和下一代MapReduce框架等高级主题和内容。
    1 }0 `( k* O! e$ R+ f# a- a+ r) n
    ) f5 L' {8 W$ k4 @, b
    : G2 X% `3 z8 ?5 S+ p8 W7 V
    作者:董西成 著
    5 S6 k* l; `, ?: R4 R) s出版社:机械工业出版社
    1 _/ }9 V8 w# s% A4 ]  O出版时间:2013年05月
    1 ^% h& ]) m, R  V( J7 I( {# l4 ]4 T: `
    & N( m  F, T) T+ `! V2 n: Y
    QQ截图20161121155409.jpg
    / g! M$ |: b7 ?, S0 [
    3 _8 x5 D' K( c/ L: R

    ) ~$ y6 K  W! z5 d& h( \java电子书目录:! {' _3 Y( R/ J3 _$ r
    第一部分 基础篇6 E/ D7 [# M  v/ \) B6 ~' {
    第1章 阅读源代码前的准备
    4 |* ^- V' }6 E* ]1.1 准备源代码学习环境3 t" i8 u( |, t; ^& b# {5 x
    1.1.1 基础软件下载
    * e8 [9 j, ^8 ~* E# l2 g( D% y1.1.2 如何准备Windows环境
    & y* t1 t0 l7 `9 j* r2 M& U1.1.3 如何准备Linux环境
    3 H9 w- c- T5 d3 y- Y; G! F1.2 获取Hadoop源代码
    3 v8 \$ Z. Z" x8 O/ m& t1.3 搭建Hadoop源代码阅读环境
    & J4 m9 ]8 R( [. `' g6 v5 p1.3.1 创建Hadoop工程
    % P1 P, e5 P8 x- p1 A+ N; w1.3.2 Hadoop源代码阅读技巧
    # A' q+ I" `/ a) L  H1.4 Hadoop源代码组织结构
    ; e5 v- ]; M* {8 Q, l: T. W% N1.5 Hadoop初体验
    9 y; `4 A& }, D0 t" l1.5.1 启动Hadoop4 D5 M0 z  j6 z* c% t& i" W
    1.5.2 Hadoop Shell介绍3 q& Q# A/ H$ ]
    1.5.3 Hadoop Eclipse插件介绍
    ) |2 i9 O# N) Y, n& q) S1.6 编译及调试Hadoop源代码
      G4 V8 q  Z1 v, Z1 J1.6.1 编译Hadoop源代码/ G! R5 x# H6 f0 D7 ^- E
    1.6.2 调试Hadoop源代码6 y/ b1 T2 ^" K, t
    1.7 小结
    . }) P; X( Q8 R4 J- S% t8 F0 d第2章 MapReduce设计理念与基本架构# e8 [3 d$ z( W5 d/ w; H4 \0 }
    2.1 Hadoop发展史
    * k3 J8 I$ f# c: x' V2.1.1 Hadoop产生背景
    8 }, j( b1 N  @; Q/ l3 d2.1.2 Apache Hadoop新版本的特性9 l! l% D2 {# C6 u# f
    2.1.3 Hadoop版本变迁1 O7 F/ c; L' C5 _8 Y7 J( K
    2.2 Hadoop MapReduce设计目标# Y( ?2 v/ ~. A
    2.3 MapReduce编程模型概述
    1 D5 x+ p3 J( Z* z! x/ i/ E/ O' `2.3.1 MapReduce编程模型简介
    7 A4 O/ y" c6 t) {0 p' O# j0 ]% _2.3.2 MapReduce编程实例7 \! q. T% q' F6 f: Y" f
    2.4 Hadoop基本架构1 f9 M! F- k3 i6 H8 o( e0 J
    2.4.1 HDFS架构
    6 b4 p# g% I5 _% }% I0 o4 l2.4.2 Hadoop MapReduce架构( G# n; a/ z& \' w( f0 z; {
    2.5 Hadoop MapReduce作业的生命周期0 Q& `* f) w9 U: g- j% W" n
    2.6 小结
    1 z2 ~7 S  @4 _; H7 n; p$ s第二部分 MapReduce编程模型篇* n; ?. t& d% W% Z% j
    第3章 MapReduce编程模型
    " x6 y# E  @8 e1 u3.1 MapReduce编程模型概述; `* E& u3 @5 J- U
    3.1.1 MapReduce编程接口体系结构7 C- F; L2 l. g
    3.1.2 新旧MapReduce API比较
    6 }& ]$ l! ~7 e2 W3.2 MapReduce API基本概念
    5 W) a/ c/ x: x0 w7 H) m3.2.1 序列化
    & h4 r3 c0 ~9 i, ?" e+ k3.2.2 Reporter参数( S4 A* T0 _5 t; V# A/ T/ ^' K
    3.2.3 回调机制$ k, i3 C# q" F% h
    3.3 Java API解析4 B! q* u0 o8 e& c. F. B) w
    3.3.1 作业配置与提交
    ) h; l0 t2 z+ ?3.3.2 InputFormat接口的设计与实现/ y4 U, f) a4 n, @7 h% q/ S
    3.3.3 OutputFormat接口的设计与实现# e0 p" X! n9 i( x6 e) T& o7 l
    3.3.4 Mapper与Reducer解析
    % z, r+ @& [/ n; p3.3.5 Partitioner接口的设计与实现3 J) j' [# t' K* ^' `$ ?
    3.4 非Java API解析
    ( i* v0 `  Z% ~# g  s3.4.1 Hadoop Streaming的实现原理6 U/ Z& N+ {2 M4 Q# S% y
    3.4.2 Hadoop Pipes的实现原理
    ' l8 f% F2 W/ B, h, C0 K+ @( j# v3.5 Hadoop工作流
    0 r8 y& }* t" H' A3.5.1 JobControl的实现原理$ K$ S0 W- Q. H% U1 X
    3.5.2 ChainMapperChainReducer的实现原理
    7 c5 y( ]( @  k: r9 f3.5.3 Hadoop工作流引擎
    . G3 x" |$ V; C1 k. `/ E3.6 小结, i$ K# R" R  m3 D0 X% o( @$ |, N
    第三部分 MapReduce核心设计篇
    ' v; H8 v4 m) @( p第4章 Hadoop RPC框架解析8 T3 o: c2 _4 X" `9 D6 p. ]: M
    4.1 Hadoop RPC框架概述
    ( L8 t; p8 s; ]" X4.2 Java基础知识
    9 @/ m1 ^, F- F3 j+ ^$ V4.2.1 Java反射机制与动态代理  u& t" o# S4 _- w8 T
    4.2.2 Java网络编程8 X5 U  A7 I' Q. m0 u1 I  l
    4.2.3 Java NIO3 Z1 ~. M' q+ ~7 o2 \( s' J
    4.3 Hadoop RPC基本框架分析* h1 b/ s1 e7 K* ?
    4.3.1 RPC基本概念2 [  ]8 _9 P' i. z4 J: }& y
    4.3.2 Hadoop RPC基本框架7 q# z& l( A' ~4 E2 x
    4.3.3 集成其他开源RPC框架
    / c. f, ]5 r0 e4 _/ W4.4 MapReduce通信协议分析
    , r% f' B2 e: g5 F" N8 b4.4.1 MapReduce 通信协议概述3 x2 X' d0 [3 k1 ^. \, j( |$ A
    4.4.2 JobSubmissionProtocol通信协议
    ! |) [7 F' `; {8 M6 [4.4.3 InterTrackerProtocol通信协议
    - F( E+ @' m) F( [- T5 o4.4.4 TaskUmbilicalProtocol通信协议
    9 O5 B5 l" X$ R/ Z4.4.5 其他通信协议
    . `5 h+ w! k# C+ @8 U4.5 小结/ o* Q( V+ M  p) W
    第5章 作业提交与初始化过程分析9 f+ ~( j6 G9 y; ^+ U2 l2 N
    5.1 作业提交与初始化概述
    % N! ^* }$ D- Q4 Q# R9 {+ s* q5.2 作业提交过程详解
    2 Z* a4 T" X2 y* n+ w& Y5.2.1 执行Shell命令8 C* F8 ^1 Y/ i$ k6 @& Q2 G$ i
    5.2.2 作业文件上传
    . X) A) E( n1 R5.2.3 产生InputSplit文件7 y2 C# H" A$ N- h, Q; V  K- A
    5.2.4 作业提交到JobTracker
    7 w, R3 B  i- R" x0 y5 l& }5.3 作业初始化过程详解
    * R" a( n8 ^; y4 E! x5.4 Hadoop DistributedCache原理分析7 {  K2 X; `/ l0 T% M7 p
    5.4.1 使用方法介绍
    4 Q5 H- H0 z. S( _7 j5.4.2 工作原理分析) V3 V2 U3 {' r, [6 l6 d8 o/ i" D
    5.5 小结
    , _! ^3 J5 l' Z  j: N  `2 ?7 P% r4 w第6章 JobTracker内部实现剖析# Y9 `5 W* v. f7 c3 ^: m# E  t
    6.1 JobTracker概述
      L) I4 t% L% P' Y6.2 JobTracker启动过程分析, p$ _, f0 e) m
    6.2.1 JobTracker启动过程概述
    1 I9 ?# \0 K  l% N6.2.2 重要对象初始化
    ' a3 ]' p4 P# b! n6.2.3 各种线程功能
    , R! W2 {/ ~4 r$ \3 C6.2.4 作业恢复( Q8 i4 M' M0 _" ~/ y) D% E
    6.3 心跳接收与应答* g! P' o% W/ h+ a
    6.3.1 更新状态6 z5 j# v! j% @- @( L! K1 j
    6.3.2 下达命令* m# `2 ^4 p+ x* v* k
    6.4 Job和Task运行时信息维护
    ; L' U$ J8 `4 r5 `' m' x6.4.1 作业描述模型6 I1 d/ }+ {! u- r0 j
    6.4.2 JobInProgress) m3 q7 J+ f  V
    6.4.3 TaskInProgress' Q) F7 n. v/ E& ~! {# n+ T
    6.4.4 作业和任务状态转换图9 H2 p. p1 d$ A- n
    6.5 容错机制
    6 B& i* L% U" Y8 @$ F: j6.5.1 JobTracker容错
    $ \! U5 \: R1 f- P' x9 \6.5.2 TaskTracker容错
    , Q' s% l$ R/ g/ j) e/ k0 |7 Y8 P6.5.3 JobTask容错% o0 C1 N( }4 ?( ]- I8 K
    6.5.4 Record容错
    ; I. y# s1 V: \% N  M) J6.5.5 磁盘容错8 q2 ^) ~& i1 C4 _3 f
    6.6 任务推测执行原理
    $ V; u7 q; o: M5 H8 J# G7 v8 ~6.6.1 计算模型假设
    5 _) T8 H* {; ?- l9 f6.6.2 1.0.0版本的算法4 K+ l! ~) s/ t6 F' u3 f1 L
    6.6.3 0.21.0版本的算法5 ~' N3 n; i. u' ]
    6.6.4 2.0版本的算法
    4 }  N8 q" i* v: B6.7 Hadoop资源管理# k. _3 ^6 j- c" F- `/ f+ ?
    6.7.1 任务调度框架分析6 F; J1 ^( ?+ x) i8 U- V, o
    6.7.2 任务选择策略分析
    3 ]! P" @, j, C2 @; ~/ l6.7.3 FIFO调度器分析
    & T/ N4 _3 Q7 ^4 b: [6.7.4 Hadoop资源管理优化
    , q8 F. k' `2 t9 `! G& G+ M6.8 小结5 P7 L+ M$ |: N7 ^: n
    第7章 TaskTracker内部实现剖析
    ; I( {7 @8 Q5 M7 d1 G. m# A7.1 TaskTracker概述
    : `9 l( c; I0 ~+ C+ Z% f% W% C. n7.2 TaskTracker启动过程分析2 R8 v5 |; ^0 q+ n2 J
    7.2.1 重要变量初始化
    6 x. l4 W7 I/ a0 t; B# w2 v! o7.2.2 重要对象初始化
    ) E" I! j6 k" r7 m3 ^7.2.3 连接JobTracker1 o2 e. V+ B& |/ L3 @7 O: @% s
    7.3 心跳机制7 e' l% ~. b/ _" T
    7.3.1 单次心跳发送. U8 w4 t! A4 A5 C1 `7 U) M) Q2 o
    7.3.2 状态发送& W  A$ q$ N7 `% d; D0 D
    7.3.3 命令执行
    $ N1 Q. s# `$ U& f+ s. u0 C7.4 TaskTracker行为分析, o$ m5 ~3 ~6 N  J7 n: D1 Y
    7.4.1 启动新任务
    7 a/ R7 `6 E+ o5 I) q3 p* R6 R+ H) t7.4.2 提交任务
    " O8 E; C# g+ W# J, I7.4.3 杀死任务& F! n1 T* t( J% `: ~- Y  d$ Y9 A
    7.4.4 杀死作业
    " v) @4 m. m) h; O7.4.5 重新初始化! H1 K) B: m3 S! z) Q/ Q: A
    7.5 作业目录管理
    2 u9 i% s/ b( G- R# Z7.6 启动新任务! W4 L5 v9 H, ~1 |
    7.6.1 任务启动过程分析
    8 R, c- ?! s! {- \" [+ ?- `* @7.6.2 资源隔离机制9 l8 w2 H2 U+ C
    7.7 小结& F3 k+ p: S! }9 @7 w7 N
    第8章 Task运行过程分析/ c6 x) |: }; a! ]2 M% \# c
    8.1 Task运行过程概述# z5 P) J. z: z; I/ C) T  ~$ l2 h
    8.2 基本数据结构和算法
    8 Q. `! E7 ^. ^; f8.2.1 IFile存储格式
    0 L, z/ g+ L2 d" H1 e& {3 ]8.2.2 排序  }: M" v$ e  o$ S# K# o1 z9 A$ m
    8.2.3 Reporter
    0 q4 P1 G3 R. Q( ^, N1 }- J( U8.3 Map Task内部实现2 e3 i" J/ `0 _( L$ d+ y
    8.3.1 Map Task整体流程
    ' a+ e5 z9 Q' r3 X: M5 ~% e% g8.3.2 Collect过程分析
    ; N. r; T% W% Q; P; e/ x8.3.3 Spill过程分析
    $ A* C2 u; U1 [) l; C8.3.4 Combine过程分析4 ~3 W" Q+ s1 W3 B4 a9 S/ f+ Z3 \% |
    8.4 Reduce Task内部实现0 G. ]/ ^* c7 J% p3 H( O% Q7 m; B
    8.4.1 Reduce Task整体流程& R1 V+ B4 W; P2 e* g3 h: R
    8.4.2 Shuffle和Merge阶段分析' o- N8 i" D3 L$ P: f% Y: y% q/ O
    8.4.3 Sort和Reduce阶段分析
    ' E+ }4 c; o. O9 M# D9 M6 S8.5 MapReduce Task优化
      M5 R" c, _+ l/ a8.5.1 参数调优" V8 @7 [( W$ ]* M
    8.5.2 系统优化; D( X4 y% F" X$ M, o
    8.6 小结
    . p$ i$ F; f6 }9 V第四部分 MapReduce高级篇
    1 O3 G0 A2 m$ {; J& H第9章 Hadoop性能调优8 l" ^6 n6 |) E3 i' f( J7 V
    9.1 概述
    8 M" x6 b+ h1 g, w9.2 从管理员角度进行调优5 q! j" T( q/ W0 O2 Z6 r+ h
    9.2.1 硬件选择
    " O' o- L  f! o8 o5 d; f9.2.2 操作系统参数调优
    $ X) ^3 N$ M/ Z& z2 a- I9.2.3 JVM参数调优
    + e" C' Z4 g& }5 w, T- u9.2.4 Hadoop参数调优
    : ?6 p6 V: M" n9 A9.3 从用户角度进行调优7 g! G' y7 H, d& v- Z8 y
    9.3.1 应用程序编写规范  Q; c& B' u) l% m7 j& J5 [
    9.3.2 作业级别参数调优6 ]* }$ m* Y+ u+ t) W" |4 T- G, a9 O
    9.3.3 任务级别参数调优7 k. l6 b& K$ j6 \2 ?
    9.4 小结
    , C4 x. D3 U5 Q5 Z1 H: J4 a4 f# w第10章 Hadoop多用户作业调度器
    & c8 o1 S9 a- T  h10.1 多用户调度器产生背景
    ) ~/ N7 a5 l. O10.2 HOD3 v1 X6 {* z) b- C+ n
    10.2.1 Torque资源管理器% q( S3 A& W+ F) t" }
    10.2.2 HOD作业调度9 J2 t% X4 L7 k
    10.3 Hadoop队列管理机制
    ( ?9 {, w; \3 G! R( R% ]8 z10.4 Capacity Scheduler实现
    5 A- Y7 s2 P5 B6 ?* A! y10.4.1 Capacity Scheduler功能介绍! y+ e6 V+ g" Z: F8 K" E
    10.4.2 Capacity Scheduler实现) ~) N  {" n( _) Q* o
    10.4.3 多层队列调度* g, V1 i2 W! O3 v2 X
    10.5 Fair Scheduler实现% l6 t) A7 [5 U3 v
    10.5.1 Fair Scheduler功能介绍
    1 l" x( J1 f9 p1 p( E. W# y10.5.2 Fair Scheduler实现& I6 A" b2 H/ l5 G
    10.5.3 Fair Scheduler与Capacity Scheduler对比
    ! I6 O0 o8 A( G, V10.6 其他Hadoop调度器介绍
    + k1 k1 r- i, G" I10.7 小结* ^; R' V/ V6 Z% w  l4 j
    第11章 Hadoop安全机制
    ( o" i( K. v* \5 S11.1 Hadoop安全机制概述
    0 I! @0 E$ K2 p& I11.1.1 Hadoop面临的安全问题
      R5 ^, c1 M) d5 Y11.1.2 Hadoop对安全方面的需求- c( g  H( y7 l8 Z" i
    11.1.3 Hadoop安全设计基本原则
    4 Z. C- X2 K8 ?9 _( Y+ u. R; B% j+ D11.2 基础知识
    - M" U! h9 B  q1 t& a& J* R# [11.2.1 安全认证机制
    5 P4 I! _# [! J5 a5 b/ s11.2.2 Kerberos介绍
    1 J( |, _( J, M11.3 Hadoop安全机制实现0 O/ L. s* U- u7 |: T; P
    11.3.1 RPC
    4 U- Z+ z3 ~2 K9 \1 q11.3.2 HDFS4 p1 z/ i! j# N1 }4 N8 R
    11.3.3 MapReduce
    - O6 o2 C, P  Z, |! c2 z3 G11.3.4 上层服务  |& L$ \5 Q% g& F' M( \; N
    11.4 应用场景总结
    - U+ [, V! n3 v1 X11.4.1 文件存取. g5 l% A! L- W7 l
    11.4.2 作业提交与运行
    8 Z) ]) r; [5 T2 W2 f11.4.3 上层中间件访问Hadoop
    % T3 X( P4 j: o5 V11.5 小结$ H% z1 W7 X$ K6 v
    第12章 下一代MapReduce框架
    1 y- L- U% o9 Q5 V4 }12.1 第一代MapReduce框架的局限性/ Y  j' E2 O4 E7 G0 c$ f
    12.2 下一代MapReduce框架概述& l: N4 R/ P- i3 Y8 q2 c
    12.2.1 基本设计思想9 M' B- K, e- A; C" _7 R; |1 ^. s7 c
    12.2.2 资源统一管理平台
    6 m; I0 Z1 @6 w2 H7 Z12.3 Apache YARN' S; I, H5 l1 d7 r" F' x5 e0 J
    12.3.1 Apache YARN基本框架
    % G% h4 _9 w7 P8 @" ^6 e* F12.3.2 Apache YARN工作流程; o3 P# `' i  N
    12.3.3 Apache YARN设计细节
    2 i0 G7 N8 s1 T( P' z' m$ `" l/ X12.3.4 MapReduce与YARN结合, f# u( T4 b  ~% E0 k4 o, Q% i) f
    12.4 Facebook Corona
    & r0 W0 Z& ]* H12.4.1 Facebook Corona基本框架# g  X1 r5 o$ B- \; \8 }6 }
    12.4.2 Facebook Corona工作流程
    7 P* v  J8 q1 V* H* F" a12.4.3 YARN与Corona对比; F! r- u& V" `  K, Y8 x
    12.5 Apache Mesos
    2 Q& T& O# a2 C) T12.5.1 Apache Mesos基本框架/ K) M  Y% X' |4 x  f( a
    12.5.2 Apache Mesos资源分配  d) T/ `& @0 n/ f$ e
    12.5.3 MapReduce与Mesos结合! z: T% w( t) ~( k
    12.6 小结

    : P$ {5 O. Q- {5 ?/ U' B9 S7 H+ I, \9 k
    电子书优惠获取地址:《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》7 S) s5 R, z3 T7 B

    7 a5 c; }! \, j+ ?/ j' n! V* |$ s& [* v
    8 b$ L/ s$ p8 ]
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-4-22 17:37
  • 签到天数: 4 天

    [LV.2]登堂入室

    0

    主题

    28

    帖子

    101

    积分

    普通会员

    Rank: 2

    积分
    101
    发表于 2017-3-15 22:21:19 | 显示全部楼层
    666666666666666666666
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2021-4-26 08:56
  • 签到天数: 3 天

    [LV.2]登堂入室

    0

    主题

    9

    帖子

    63

    积分

    普通会员

    Rank: 2

    积分
    63
    发表于 2017-12-1 09:21:32 | 显示全部楼层
    谢谢楼主分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-10-17 20:14
  • 签到天数: 2 天

    [LV.1]初学乍练

    0

    主题

    3

    帖子

    46

    积分

    普通会员

    Rank: 2

    积分
    46
    发表于 2019-10-17 20:15:23 | 显示全部楼层
    xiexielouzhu java3 Y7 g5 T& A6 n  S0 X3 K5 U
    3 k$ l4 U# `, M& K) R0 _
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Java自学网

    GMT+8, 2025-2-23 03:36 , Processed in 0.084954 second(s), 37 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

    快速回复 返回顶部 返回列表