java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3946|回复: 3

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

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

    [LV.Master]出神入化

    2039

    主题

    3697

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66471

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

    发表于 2016-12-6 14:06:01 | 显示全部楼层 |阅读模式
    java自学网(www.javazx.com)-java论坛,java电子书推荐:《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》. q% H2 q3 k4 h! [! ?+ h3 ?+ E
    java电子书推荐理由:由Hadoop领域资深的实践者亲自执笔,首先介绍了MapReduce的设计理念和编程模型,然后从源代码的角度深入分析了RPC框架、客户端、JobTracker、TaskTracker和Task等MapReduce运行时环境的架构设计与实现原理,最后从实际应用的角度深入讲解了Hadoop的性能优化、安全机制、多用户作业调度器和下一代MapReduce框架等高级主题和内容。3 e( @& J! i5 G
    * M, a. _) x3 ?  N2 _/ V6 x
    4 P$ m! H  W# x! B& T- u5 x" C7 y
    作者:董西成 著9 F$ I: c/ |, n( y9 a! q5 o) u
    出版社:机械工业出版社# h) V3 R1 y3 l0 e0 p
    出版时间:2013年05月 ; l/ _9 s2 c2 O# ^; C2 t: w
      h2 r2 b% M' C* R6 @3 _0 U, F5 Z
    ; [. Y& U0 N6 y# J6 D9 B
    QQ截图20161121155409.jpg
    ! Z9 T& `7 n) a9 s3 Q: G( x5 K; C: s+ c! @9 m7 z, o

    9 `1 A0 w4 d; Q) fjava电子书目录:# }7 l3 `! d5 U  `; S" H
    第一部分 基础篇
    ) d" M: K; D8 d, X% m. W# B第1章 阅读源代码前的准备
    ) U/ J, E7 y+ {5 v1.1 准备源代码学习环境
    5 X0 @. @3 c, g7 i  e7 q7 E5 p1.1.1 基础软件下载6 H4 ~# b) ~9 s; b: m- P
    1.1.2 如何准备Windows环境
    . W  j+ p+ t2 T. Y& D. ?9 b1.1.3 如何准备Linux环境
    6 W# b) Y+ e- \2 t9 G1.2 获取Hadoop源代码
    ; I9 l( p  J1 y) u2 P: [1.3 搭建Hadoop源代码阅读环境8 i# o8 t, T* p  O
    1.3.1 创建Hadoop工程4 ]4 I0 `  K( f7 t/ s( ]$ _
    1.3.2 Hadoop源代码阅读技巧
    + @" V0 X5 h6 A5 F0 b2 o1.4 Hadoop源代码组织结构6 e% U/ V" e. G
    1.5 Hadoop初体验
    & u; W$ U% Y4 T1.5.1 启动Hadoop
    9 t5 r" R% q- {9 U6 R1.5.2 Hadoop Shell介绍
    ( K) |2 l  P# A: n4 |# @# R1.5.3 Hadoop Eclipse插件介绍
    5 y0 F! _9 k. S" H* U1.6 编译及调试Hadoop源代码
    - v8 O. D& O( Q; S5 j) F# J8 E$ z. s1.6.1 编译Hadoop源代码
    % p0 y+ K' h# |5 G& S# B1.6.2 调试Hadoop源代码
      Z  _  b/ X7 A1.7 小结
    ! j8 [; L7 U/ H! M% I第2章 MapReduce设计理念与基本架构, y& o9 F; l7 D/ q; Y7 S
    2.1 Hadoop发展史6 ]4 h+ A! p# q7 ^& M! H7 }- g! w
    2.1.1 Hadoop产生背景
    6 [3 p8 P* p( @2.1.2 Apache Hadoop新版本的特性" S1 X5 K/ t3 N! y$ j
    2.1.3 Hadoop版本变迁
    6 W- ~$ X7 w! m2.2 Hadoop MapReduce设计目标6 z+ n' L8 A# v. }
    2.3 MapReduce编程模型概述, p. G, Z; l5 E
    2.3.1 MapReduce编程模型简介4 _/ B& O- {) c9 {4 R* f
    2.3.2 MapReduce编程实例. s0 `! V) c4 f4 F8 r4 L/ _8 m% `
    2.4 Hadoop基本架构
    0 [4 Z. H1 x, X' @9 u7 Y) P2 ~2.4.1 HDFS架构
    * e# b" Z7 Z4 P2 p2.4.2 Hadoop MapReduce架构
    " @- d' Z4 o) K( i& a+ B2.5 Hadoop MapReduce作业的生命周期/ W* B! ?  _% n3 k7 x$ G
    2.6 小结) M4 M  X8 S* F, J; ^) Y* i
    第二部分 MapReduce编程模型篇, S# Q/ E7 ~6 b* A  p/ h7 ?
    第3章 MapReduce编程模型
    6 }+ I6 k& t/ L& j* x) ^7 ^3.1 MapReduce编程模型概述1 R  S$ }, x- A& v1 v4 P; R6 [% G0 ~
    3.1.1 MapReduce编程接口体系结构
    : B% Z+ G+ z) i4 G* ?) ~3.1.2 新旧MapReduce API比较- U: l: o1 S# s4 X
    3.2 MapReduce API基本概念
    5 j8 X! ~) T: U; S. D  J3.2.1 序列化) j0 D2 k# q2 [& X9 X2 W# ~, J
    3.2.2 Reporter参数
    , Z) q9 c. B- ~/ {3.2.3 回调机制0 ?* I/ R0 o4 _+ M  s  c/ S. ^
    3.3 Java API解析( z7 Y/ s% o' L
    3.3.1 作业配置与提交
    ) L2 x8 {& L4 v4 l9 O3 r& z5 R3.3.2 InputFormat接口的设计与实现) C+ g5 P3 {) g( P
    3.3.3 OutputFormat接口的设计与实现2 X* }( t/ ]' P
    3.3.4 Mapper与Reducer解析
    2 x8 H0 Z  ]. ~' H9 I6 P4 l3.3.5 Partitioner接口的设计与实现
    ; i% f, _0 G7 `- w6 A  i, y* ^3.4 非Java API解析- z" s' }4 r8 i$ M
    3.4.1 Hadoop Streaming的实现原理
    ' J. ]" w4 v& i" p* m) v5 P3.4.2 Hadoop Pipes的实现原理
    7 W( p4 |  m+ l$ z6 a- t3 k3.5 Hadoop工作流
    $ L6 C( ]! I9 ~$ ]  X3.5.1 JobControl的实现原理$ ~: q9 ]/ {, B
    3.5.2 ChainMapperChainReducer的实现原理
    ; f& V& P# d& G  `" d3.5.3 Hadoop工作流引擎( F- N5 M: D; j7 o8 l8 z
    3.6 小结
    " Q4 w; a4 g5 f$ c第三部分 MapReduce核心设计篇
    7 w7 J) L" |* U9 }- O第4章 Hadoop RPC框架解析0 n) m, ?" D0 x2 v
    4.1 Hadoop RPC框架概述
    $ k6 B$ [' r6 T4 g9 d4.2 Java基础知识* {# I9 y* F/ P' j. f! [' q8 x8 t% p3 Y
    4.2.1 Java反射机制与动态代理6 h. A. S0 ^, W- [, P# [% \4 z
    4.2.2 Java网络编程
    . M0 \: G- i: Q# ^7 m7 B4.2.3 Java NIO+ K5 Z. B  Z, g6 g( X" }# r9 u: x
    4.3 Hadoop RPC基本框架分析
    ( P# e! l: i5 K5 y1 Z/ j4.3.1 RPC基本概念
    * U6 D! h3 S9 L) K7 v& i% j/ E3 m4.3.2 Hadoop RPC基本框架
    $ Z& v% c% h. z, Q- f, y( Z4.3.3 集成其他开源RPC框架$ }0 I. d" S! H
    4.4 MapReduce通信协议分析
    % w$ k* \7 H* j9 f0 {& @8 Z4.4.1 MapReduce 通信协议概述& o( I6 i& l" P( e5 @8 L
    4.4.2 JobSubmissionProtocol通信协议
    - r7 N( t2 R# D) Q+ E7 ^, _6 X+ {4.4.3 InterTrackerProtocol通信协议3 ~# {4 u$ i: n- A) M
    4.4.4 TaskUmbilicalProtocol通信协议
    & A! L$ `- A  A+ ^/ C4 v4.4.5 其他通信协议
    ! `) E. ^& g- T$ C5 u) ]$ W5 }4.5 小结% F/ V5 a/ h0 K9 F
    第5章 作业提交与初始化过程分析# X! D* h9 U. S* L- a
    5.1 作业提交与初始化概述
    1 _: o1 A6 A& T8 k- X1 Q7 q9 {5.2 作业提交过程详解
    / h# x$ a# Z9 Y8 Z9 \. [5.2.1 执行Shell命令
    ! w5 l) H. K1 x9 U) v* k9 V( p  x5.2.2 作业文件上传
    4 O& L2 ^$ C& |5.2.3 产生InputSplit文件
    ( v4 Y" d. t9 F' D4 g4 Y  D5.2.4 作业提交到JobTracker7 y, T7 }- f) m8 _4 T
    5.3 作业初始化过程详解0 N7 O" W8 w, ?0 P# h
    5.4 Hadoop DistributedCache原理分析) Q1 V$ a- F; @
    5.4.1 使用方法介绍! B; k5 e1 D7 v+ [1 A9 g
    5.4.2 工作原理分析
    % n, r$ w  m7 y6 }" m, ^( Y1 J: [5.5 小结
    2 N) t& s: w, b1 l9 W( o% h第6章 JobTracker内部实现剖析$ L: Q4 E- r! b  R
    6.1 JobTracker概述& h, `7 G0 G9 H; p
    6.2 JobTracker启动过程分析
    ' \' Y2 |- e0 l5 U# i6.2.1 JobTracker启动过程概述( F, N2 c9 h" v, s' g4 Y  R
    6.2.2 重要对象初始化
    / R! [% _" h, H+ z. X; n6.2.3 各种线程功能
    2 }$ T% L4 i' L) g6.2.4 作业恢复
    5 E, z4 ~+ c# W& ?; P( i+ D6.3 心跳接收与应答1 a# X2 u  f4 F* `
    6.3.1 更新状态
    # o) d; Y2 X9 j6 _+ q9 ^% P6.3.2 下达命令
    / M3 W5 K/ N, h. `- W2 X1 e6.4 Job和Task运行时信息维护6 V$ i1 {! w- D
    6.4.1 作业描述模型
    ) Z0 w' F/ c9 S2 |, d7 Y6.4.2 JobInProgress
    5 S+ D3 W! e& S* D6.4.3 TaskInProgress& e8 O+ S9 n# r
    6.4.4 作业和任务状态转换图/ ]+ R/ `" J$ K- D. s7 ]
    6.5 容错机制
    : d% B% n5 T1 u/ K6.5.1 JobTracker容错0 t5 h& o# p2 b! C7 ]  N" L
    6.5.2 TaskTracker容错
    2 f# g( v! E, p: O2 Q! n3 \( W6.5.3 JobTask容错% D& m4 {+ D$ t! p
    6.5.4 Record容错
    : [3 f- s" M9 k0 f6.5.5 磁盘容错
    7 t9 r2 Y* \. s' z6.6 任务推测执行原理1 \7 ^" Z9 m7 j9 b
    6.6.1 计算模型假设6 K* ?3 e4 u0 @% D4 Z( K& S
    6.6.2 1.0.0版本的算法5 K' |& {. Y  S5 T7 n* ~: J7 y
    6.6.3 0.21.0版本的算法
    , J& j) C+ Z) x+ n) q$ f: L) J4 n6.6.4 2.0版本的算法( o  F+ c( ?7 x
    6.7 Hadoop资源管理/ S2 `' ]2 ]( v' l& M; W( J) v
    6.7.1 任务调度框架分析0 r; z. }* {/ G# |1 D# a
    6.7.2 任务选择策略分析
    % n# O6 n* t' b6 N2 f3 @6.7.3 FIFO调度器分析
    9 h9 ?  Q7 Y. z6 T9 L6.7.4 Hadoop资源管理优化
    & v. p* f7 v, j6 q6.8 小结
    8 Y2 |4 Q& T, s) |! g. R第7章 TaskTracker内部实现剖析% k8 c2 g, c0 x, P5 C
    7.1 TaskTracker概述' A0 E" j* h3 U. l, f6 h/ r/ M( n( r+ H
    7.2 TaskTracker启动过程分析
    , q& c* C0 W6 Z/ D8 ^7.2.1 重要变量初始化
    5 y2 ~0 n+ l. v. z7.2.2 重要对象初始化
    % s( U, m$ ^$ q7.2.3 连接JobTracker1 R8 S/ Z+ H  T' M) b8 z5 z; a
    7.3 心跳机制  y2 v/ u: _/ L+ {. |
    7.3.1 单次心跳发送1 E4 U8 j# t# _: b: m
    7.3.2 状态发送
    6 u& F$ Z, i; F/ ^7.3.3 命令执行
    9 i6 e+ o: u6 y' \% x0 y7.4 TaskTracker行为分析* I  D% S5 f: p: m0 t: m
    7.4.1 启动新任务/ E$ K1 N  h/ ?# v5 O3 w1 U
    7.4.2 提交任务  g% I* V* A  ~6 t8 u& r) ^0 F! ]5 A
    7.4.3 杀死任务
    ( W+ V$ z3 g, i& p7.4.4 杀死作业
    $ g( }, V" n  p* |6 i7.4.5 重新初始化% y5 ?' a9 P$ S+ b. w* m
    7.5 作业目录管理
    ; I' C5 M; @/ S) g/ e5 A7.6 启动新任务
    8 t6 i, i  c$ s8 n9 ~7.6.1 任务启动过程分析0 k0 t/ M  i% a# M+ S
    7.6.2 资源隔离机制; |8 h5 T: _8 [' ~' ?6 p0 P
    7.7 小结
    3 Q3 s8 z% w% Z+ B; ^/ n" i  z第8章 Task运行过程分析$ I1 n$ n, h( C9 i
    8.1 Task运行过程概述
    ) ?+ \- }9 E! }0 l8.2 基本数据结构和算法
    , k2 V$ ]$ y" w$ \8.2.1 IFile存储格式% q- k: u, G- ~% r; s' ~
    8.2.2 排序6 V8 p$ Z4 ]0 T: w% K% V6 W7 G7 a
    8.2.3 Reporter' }9 A# C( b, o
    8.3 Map Task内部实现
    " z# P% h8 c2 G  w! O% x# [8.3.1 Map Task整体流程
    & @) y3 f' c% K8.3.2 Collect过程分析- R, p% h7 h& ]7 `3 X' ^: K
    8.3.3 Spill过程分析: k! v- d$ }1 U. P8 J/ V% {# N
    8.3.4 Combine过程分析# ?1 p$ [+ V- g" Q6 C3 _/ H; C
    8.4 Reduce Task内部实现
    : C7 V5 q. M7 W: I: Z/ f! q: e; W6 v8.4.1 Reduce Task整体流程2 i; m" H7 |2 {% d6 [
    8.4.2 Shuffle和Merge阶段分析$ A, V# T0 ~' C" U% F( S  t# m
    8.4.3 Sort和Reduce阶段分析7 C4 Z" y7 o8 o3 t
    8.5 MapReduce Task优化
    ; E6 }3 |; {7 M$ k/ T% s8.5.1 参数调优, e* p" @" _. w7 P0 v4 {# R) \
    8.5.2 系统优化
    3 j; X' O4 O; X, P8.6 小结  g8 h! \6 M' R8 U/ q& h
    第四部分 MapReduce高级篇
    % p; {; H, w2 O/ N2 }第9章 Hadoop性能调优2 p2 O1 ]3 o! `2 o( f
    9.1 概述
      t3 M$ I, O; J; e9.2 从管理员角度进行调优
    # D' q7 E' p  w+ U# e9.2.1 硬件选择4 t' K* r6 @# b- [, ?0 ~% Q
    9.2.2 操作系统参数调优8 q5 g9 P$ _! z% J! B$ S2 I
    9.2.3 JVM参数调优2 c: g( E% N. n; k  k# ?
    9.2.4 Hadoop参数调优
    8 U% }; }6 G" \6 d: K9.3 从用户角度进行调优
    , X7 j# e: M1 H* K9.3.1 应用程序编写规范
    ' l8 I; o- j. L) @; B! `0 w8 v9.3.2 作业级别参数调优) A2 |, x2 i* Q9 T. p
    9.3.3 任务级别参数调优
    / D! Z* f2 G2 A2 o9.4 小结
    ; o% e& |" W- L9 i& }第10章 Hadoop多用户作业调度器$ G( y% y2 G; C' ?' F- E
    10.1 多用户调度器产生背景
    " }  B( W5 S% I6 D10.2 HOD
    8 w6 O0 T5 e  M. o10.2.1 Torque资源管理器
    % w: \! a9 y- n10.2.2 HOD作业调度0 v; x- e2 }2 b! v$ l$ |3 p
    10.3 Hadoop队列管理机制
    6 ?1 s1 Y& s: @' O$ i# ]10.4 Capacity Scheduler实现
    3 x$ F* l0 Q2 o$ l6 r, z. I10.4.1 Capacity Scheduler功能介绍
    # Z& l' u- T2 K% J' G1 s10.4.2 Capacity Scheduler实现* b% r4 T; H4 l3 w  \
    10.4.3 多层队列调度( l7 P9 D2 ^/ v, x( q! a9 M: W, u- `
    10.5 Fair Scheduler实现
    1 k6 L8 N% V) G% I$ v10.5.1 Fair Scheduler功能介绍
    3 f7 e" m$ q) r3 ]4 F10.5.2 Fair Scheduler实现- b1 L* Y9 S, d: `) w: F
    10.5.3 Fair Scheduler与Capacity Scheduler对比/ Q. Q; @) V& k: V
    10.6 其他Hadoop调度器介绍
    & f+ @( b' ?+ v6 @# m$ v9 v10.7 小结
    ; T1 L/ _4 G& g1 C7 y" {# c7 }第11章 Hadoop安全机制
    5 U% j- H# @# A) I, I11.1 Hadoop安全机制概述& k' `( |9 Z1 B: S& s5 T8 h
    11.1.1 Hadoop面临的安全问题# \( \" f& m6 J; i8 u  C5 m
    11.1.2 Hadoop对安全方面的需求$ d) `# D7 x; U$ Q2 f; N
    11.1.3 Hadoop安全设计基本原则
    & K1 y# m$ u" S) L. _9 T11.2 基础知识
    8 w2 s7 j& x* u11.2.1 安全认证机制  l# H' V4 k# I! G
    11.2.2 Kerberos介绍
    7 u/ M, H7 Y7 L4 x+ K7 H11.3 Hadoop安全机制实现
    2 n6 y: I/ U) S( s# V% e5 s11.3.1 RPC
    2 f1 Y2 g) P; u# T0 h7 [11.3.2 HDFS  z0 e& w* o; z
    11.3.3 MapReduce  R  |" K* V  y9 a0 l% w" }
    11.3.4 上层服务/ w$ g7 U9 N  E4 n
    11.4 应用场景总结/ ]# L$ q& e, m: i8 b
    11.4.1 文件存取8 w* ^5 e/ n6 l) m; l
    11.4.2 作业提交与运行( j& w; d+ v* Y7 @/ Y! k
    11.4.3 上层中间件访问Hadoop
    - q! V: }! {3 a0 y11.5 小结
    8 F+ r( b6 l- p第12章 下一代MapReduce框架
    ( U8 v* c! y6 Y0 H& a# Q6 _12.1 第一代MapReduce框架的局限性" J/ K3 G* E9 a" r
    12.2 下一代MapReduce框架概述
    3 X6 r6 a  o- a8 y12.2.1 基本设计思想& \5 M4 G* D; T( j; W1 E& u; K& ^
    12.2.2 资源统一管理平台
    / {  Q( _( q- P6 Q& H' i12.3 Apache YARN* B! A# {/ O! i8 D1 {
    12.3.1 Apache YARN基本框架# _9 L% b" E3 k0 H7 O
    12.3.2 Apache YARN工作流程
    1 p: }. Z/ N8 E+ W12.3.3 Apache YARN设计细节
    8 W% ?  A$ ~* ^8 n: f12.3.4 MapReduce与YARN结合9 Q( U1 R3 C3 i6 K6 F" g/ h/ G
    12.4 Facebook Corona
    " B# U. S; J: R( g# S! O12.4.1 Facebook Corona基本框架. O. P. h' m# G% I& A
    12.4.2 Facebook Corona工作流程/ t/ ]# R8 r0 h9 k- ]# W$ `5 @
    12.4.3 YARN与Corona对比* X% u$ l" \( _6 ?8 C
    12.5 Apache Mesos
    9 e( G: C& V3 Y) s5 J- ?# h12.5.1 Apache Mesos基本框架. f+ C7 ^& i, ], Q6 A1 F
    12.5.2 Apache Mesos资源分配
    - I0 b- h) [6 O8 l+ Y: s0 q! w' y12.5.3 MapReduce与Mesos结合
    * P. q/ r, C" S9 ]8 ]- F0 u# b12.6 小结

    5 z  O5 k$ C$ Q% R( @/ U" h5 [# H4 o6 m' n+ |: ^4 G$ H
    电子书优惠获取地址:《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》
    . l5 E7 [$ ]7 s% V9 ~0 Z3 v" c8 w
    $ O0 i. M% d* f

    9 F$ z6 v5 I' R/ e: P7 g; S
    回复

    使用道具 举报

  • 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 java8 [6 z7 V' _7 A4 Y( O% k) @% ^

    ) ^5 o' Z0 U4 _
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2025-1-22 13:03 , Processed in 0.229590 second(s), 43 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

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