|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《深入理解Hadoop(原书第2版) 》0 v: @3 s2 S9 S6 L
java电子书推荐理由:内容包括:第1章~第4章讲解大数据系统的基本概念、Hadoop系统的关键概念,以及进行Hadoop平台管理的关键概念要素。第5章~第7章是本书的重点,深入分析了MapReduce框架,不仅包括MapReduce框架的API,还介绍MapReduce框架的更复杂概念及其设计理念。第8章~第14章介绍Hadoop生态系统,包括支持MapReduce程序的单元测试和集成测试框架、Hadoop系统的监控和日志系统、Hive框架、Pig和Crunch框架、HCatalog框架、Hadoop日志流处理、HBase等。第15章~第17章介绍了数据科学基本概念及应用、云计算实例、分布式下载服务实例等,基于对Hadoop系统的实践,深入浅出地对Hadoop进行了详细的讲解,包含大量的实例和技巧,可帮助有一定基础的开发者快速掌握分布式系统。1 H# n2 z$ `3 R0 C
9 F; [1 g1 X* t- [. R3 F. s! E* V, f. v9 C6 x% {7 P3 z) ]
作者:(美)瓦德卡,(美)西德林埃,(美)文纳 著,于博,冯傲风 译7 _) ?: m9 h5 b( B7 p% Z7 Z2 ]
出版社:机械工业出版社6 k) S& d K8 _. P
出版时间:2015年11月
, _& |: S9 b1 D6 M6 s( V
, _& `* ~; q7 W1 K+ ^
" O$ ^) o0 P3 n7 P
k8 H9 E2 a @+ j- ]! a; l* ]java电子书目录:
9 o2 X; {$ B |, K. R2 s3 }- e
5 | F% D# D3 L i/ ?5 N第1章为什么会有大数据; J9 v# l) G$ w# E5 ]: G
1.1什么是大数据
4 w7 i x$ |( Q& P$ h& s1.2大数据技术背后的核心思想
( F# k' b. u6 q* D0 J9 p1.2.1把数据分发到多个节点# P) `, F- `- Z' ]0 q7 }, R+ o9 w- r
1.2.2把计算逻辑移动到数据附近9 a* b4 c2 ]7 J& L9 q. S; X
1.2.3计算节点进行本地数据处理
; H7 Z% b& C1 {1 k# ^- {+ c1.2.4优选顺序读,次之随机读
: M: W7 E+ q' }( E1.2.5一个例子! z2 P6 @# h! X4 M
1.3大数据的编程模型
) f8 |+ P* X' s1 j* `9 q' Z1.3.1大规模并行处理数据库系统" F( }+ S3 V/ Y P9 G p
1.3.2内存数据库系统
6 G5 i; d9 [/ l$ L. U0 E; Y3 i1.3.3MapReduce系统
: q: _, ^# Q4 \; e+ u1.3.4整体同步并行系统
8 c$ E. T5 L/ h, `3 O6 j* v1.4大数据和事务性系统# A0 ]4 @2 N% j0 w, d
1.5我们能处理多大的数据量, d2 |, z" p. Y E
1.5.1一个计算密集型的例子
0 e% F( i0 B/ N2 Q6 S, Z W& s1.5.2Amdhal定律
4 H9 k- V8 |) j. h3 j5 L% z- B( v1.6大数据商业用例
: [* ^/ Z2 d/ U5 _3 U) k2 z1.7本章小结
' R8 g8 Q5 |* ~! w! q" H, d第2章Hadoop中的概念, ?& Y: Q K G) m: }4 _
2.1Hadoop简介
( U% b8 @0 E8 K4 s' B2.2MapReduce编程模型简介
+ b* h b4 s$ I& }* ]2.3Hadoop系统的组成2 O& j- @" H% Q: b0 L5 I
2.3.1Hadoop 分布式文件系统
; i1 H; R1 Z* p2.3.2辅助名称节点4 p. B) X9 l% ^# h
2.3.3任务跟踪器
0 N5 t* h8 }6 o9 r( p2.3.4作业跟踪器
# W" R8 `0 W' }* {1 ~7 D2.4Hadoop 2.4 c, f7 m) g# ]8 a: M1 w, R
2.4.1容器; G7 N" `1 v& ]: h& O0 N
2.4.2节点管理器% m) ]. y0 T& Q, F/ t# ~; W
2.4.3资源管理器8 q- L8 r: ], I' @8 S3 N
2.4.4应用程序管理器) u% A9 u% K9 k' F
2.4.5分步详解YARN请求( N+ n% X8 U+ j9 D$ O
2.5HDFS 的高可用性# s: J# K" ?. S w; M& {1 |
2.6本章小结) H: T9 S. a* s' c- {
第3章初识Hadoop框架4 l4 |2 f+ @/ M& E* P
3.1安装类型% `' g J, q& S; o6 N
3.1.1单机模式% O0 r5 r ]8 J) v- k& i
3.1.2伪分布式集群模式
6 V4 `8 O0 r# M$ Q u; l3.1.3多节点集群安装模式
5 J! M2 k$ D9 U1 g+ a3.1.4基于Amazon EMR预安装模式
* j* R0 ]# n3 K9 e! J& d% }3.2使用Cloudera虚拟机搭建开发环境
0 j( }1 D) v1 \" @4 W* u0 l8 g$ a3.3一个MapReduce程序的组成
5 B* k- W. B4 j6 f& K3.4第一个Hadoop程序' m8 ?; S+ I1 K9 _. J
3.4.1以本地模式运行程序的必要条件5 x1 O& R: }' A7 ~
3.4.2使用旧API编写的单词计数程序
. \+ \& [, F3 R+ `* h; N( p# V8 w3.4.3构建程序6 C( |5 h* V& W4 H' [* R% u
3.4.4在集群模式下运行单词计数程序1 s% b$ s* s5 |! ?9 l$ a8 r
3.4.5使用新API编写的单词计数程序
4 R- z% w5 }" {8 i3.4.6构建程序
) v4 G5 d% @/ i0 E; A3.4.7在集群模式下运行单词计数程序
+ D( z4 Q* h4 |1 }3 }, v) [9 S. ]2 Y3.5Hadoop作业中的第三方函数库4 [2 H8 j. l( n1 C1 Y8 z% Z
3.6本章小结
. y3 V: B6 ]4 U. ?3 w第4章Hadoop系统管理2 ^. W4 n) r% X# g! o
4.1Hadoop的配置文件# l0 ]5 k7 m/ h, y7 K M& R% y
4.2配置Hadoop守护进程1 H: |2 n- l2 h. t
4.3Hadoop配置文件的优先级% G3 W1 X- _9 L3 j; _8 {1 a, H
4.4深入探究Hadoop配置文件( w: r& O$ M- E+ z. Z0 q
4.4.1coresite.xml6 ~4 [3 |3 C9 `' J
4.4.2hdfs*.xml
1 n0 W* d# w: O0 S( n- @" P4.4.3mapredsite.xml
, e2 J! z0 E6 l: `( \: g! R- A: {7 {( W4.4.4yarnsite.xml2 o" r+ o4 c4 Y+ b& y
4.4.5YARN中的内存分配, o4 t) N7 h" V
4.5调度器
8 K# [& g" k. o+ m! t$ x1 [$ N4.5.1计算能力调度器
/ w. L; \; s" ^ K4.5.2公平调度器
! R c$ s! V* y5 S: N# Y( `4.5.3公平调度器配置: B( J: s! n% I1 _- f" r
4.5.4 yarnsite.xml 配置 d# B& }* ~. X/ ]) a* G+ j
4.5.5策略文件的格式和配置2 H7 F7 @6 n) c) n% \3 o
4.5.6按照drf策略来确定优势资源的分配# k o4 G$ t% U5 c8 U8 K1 j* a
4.6从属文件
: K6 _* h9 Y0 ]& G4.7机架感知
4 J% ~; S a2 I' \# f2 ?6 N4.8 集群管理工具
7 P( d5 w( k7 n0 E. S1 a4.8.1检查HDFS
, |4 ~3 Q8 ^/ U4.8.2 HDFS管理命令行+ w& n) R% L4 \, q/ Z& I7 V, K
4.8.3 均衡HDFS上的数据分布
5 t. A% U- e/ N L( S9 h7 W4.8.4从HDFS中复制海量数据
% i3 l8 K2 b0 `+ a0 D# d! {4.9本章小结* I o5 G+ f5 @
第5章MapReduce开发基础
5 k6 Q- G, n4 z) Z5.1 Hadoop和数据处理/ Y4 M& L H. I( M+ v
5.2 航空公司数据集介绍
# @" |9 e/ Y- g; L8 m7 b7 i; p5.2.1 准备开发环境7 w+ J6 N* Z; O7 C5 [1 t
5.2.2 准备Hadoop系统- M' L/ r( G. P0 S8 B. G( l7 H
5.3 MapReduce编程模式
; ~0 z8 d2 @8 W" b' V& ~/ M5.3.1 只有Map阶段的作业(SELECT和WHERE查询)
& \$ ^2 d7 S/ T+ V& ^5.3.2 问题定义―SELECT子句
( Y2 X% E& Z0 d; n4 ]5.3.3 问题定义―WHERE子句$ S$ A9 C: x+ S' q0 @5 \
5.3.4 Map和Reduce作业(聚合查询)
0 T1 p8 o i3 k; V2 E5.3.5 问题定义―GROUP BY和SUM子句. @) M0 B) i2 d5 n
5.3.6 应用Combiner提高Aggregation性能( |. Z0 O% r- }: N3 o& k
5.3.7 问题定义―优化后的Aggregators
. S$ G1 \8 ?/ I6 y- X5.3.8 Partitioner的作用
: l! f7 Y4 J/ B: l) H$ }5.3.9 问题定义―按月分离航空数据
' h9 E) Q7 }- R4 A+ V% ]5.4 综合分析$ [ a: \: [ Y# q+ I5 j) Y
5.5 本章小结$ ?8 S- \7 {& w( e0 s+ T: F
第6章MapReduce开发进阶8 d. l/ q4 }& u! K7 t+ c
6.1 MapReduce编程模式
5 u: X0 e5 {! \+ Z: _0 S6.2 Hadoop I/O 介绍4 O9 z2 i& x0 |1 `# k+ M% q2 j
6.3 问题定义―排序
9 [: W: \$ j+ V# m5 w) V6.3.1 主要挑战:全排序; W4 P Q# M9 W5 n; ~$ k
6.3.2 在Cluster中运行Sorting作业% ]7 u0 D2 n' W& m% m+ h. |1 {
6.3.3 仅根据Writable键排序4 V% R4 g/ o1 h5 |& W
6.3.4 根据排序回顾Hadoop的关键特性
! a0 K( F- `3 I0 _: G# q6.4 问题定义―分析连续的记录9 I3 f; R6 U: l
6.4.1 支持二次排序的重要组件. ~; n4 B4 }. u! I9 N$ \! ^5 O* a
6.4.2 在没有Grouping Comparator的情况下实现Secondary Sort# I7 k4 d* M" V. h% w% d
6.4.3 在Cluster中运行SecondarySort作业
" u+ r5 B4 S# }0 c4 |2 ~" V4 ?$ o6.4.4 利用Secondary Sort回顾Hadoop的关键特性
2 V |. @, z9 O5 c$ J6.5 问题定义―使用MapReducer进行连接# p9 `. v& g# T# H' _. j- }
6.5.1 处理多输入:MultipleInputs 类
1 N& W* M' b! q j, A/ s. }6.5.2 具备多个输入的Mapper类
) K" J, j. C! p! u c6.5.3 自定义 Partitioner: CarrierCodeBasedPartioner
9 P: o. m3 {. f: @+ |' Z: ]6.5.4 在Reducer中实现连接
2 ?" G8 r M9 {' ]6.5.5 在集群中运行MapReduce连接作业
( {% L) j( Z/ E/ J- c1 U6.5.6 探讨与MapReduce相关的Hadoop主要特性; O1 ^9 a. v* R4 H7 [' D
6.6 问题定义―使用MapOnly 作业进行连接
6 j% ?/ {5 ~% S6.6.1 基于DistributeCache的解决方案& W8 f1 [+ p; ^8 \, A
6.6.2 在集群中运行MapOnly的连接作业
6 y3 j2 {9 {" T, D% A% u7 m6.6.3 总结探讨MapOnly连接时的Hadoop关键特性2 a7 l! \- U) ~# j5 S# {: v1 ~
6.7 在MR作业中保存结果到多输出文件
3 I/ O. }1 \3 D' K6.8 使用计数器收集统计数据
- f4 V3 c$ T) e" b+ T7 A3 c5 m6.9 本章小结
+ L5 H) L2 f, x5 \2 C7 l第7章 Hadoop输入/输出2 h3 @5 f, j* Y
7.1 压缩方式3 P4 Q9 e; d k$ I; s% ^
7.1.1 压缩内容的选择2 ^6 P4 k! R2 z9 p
7.1.2 各种压缩方式
9 Q1 m/ @$ V6 f# d! r5 Z4 @8 Y, E7.1.3 配置压缩方式; D8 _0 m6 y+ e( z
7.2 Hadoop的I/O处理过程内部* w; F) b: w; R' N. K y, D
7.2.1 Inputformat1 {% q) g! X' d9 F0 u" J1 w
7.2.2 OutputFormat: E7 @$ A7 G; {
7.2.3 自定义OutputFormat:将文本转换成XML- w8 Y" O# x/ r
7.2.4 自定义 InputFormat:使用自定义的XML文件1 V3 p, U `. }
7.3 Hadoop文件: ^, E! n- U: [2 k7 j1 u
7.3.1 SequenceFile3 o( \7 P9 T* W' q$ |
7.3.2 MapFiles' \8 y6 ~8 R* n$ D/ m4 X# Q$ g
7.3.3 Avro Files/ A0 U" x2 w- ]! e
7.4 本章小结
& q( I7 u: K' n- | J8 E第8章 测试Hadoop程序5 p- |, C" H7 c9 z
8.1 回顾一下单词统计的程序
2 r* [3 {+ ?: M$ t7 q( K3 ~/ K* t8.2 MRUnit概述2 b' Z- ]) Q: `! {& u
8.2.1 安装MRUnit3 ^6 Z# c" o% i
8.2.2 MRUnit 核心类
& w0 f) k _, m0 W8 N/ g+ O, S8.2.3 编写一个MRUnit测试用例7 B* O! Q2 e6 R! Y. i* Q+ c
8.2.4 测试计数器
1 z* }1 j! W5 u! j* F/ @8.2.5 MRUnit的特性8 x# h; g; C8 d
8.2.6 MRUnit的局限性8 R+ o' `# F$ |+ g3 A
8.3 用LocalJobRunner测试# \! |. b4 ~5 E) T5 `
8.3.1 setUp( )方法
' Y+ d( ?' Z% i ]2 s3 j0 b* l) g2 z8 i8.3.2 LocalJobRunner的局限性$ [. i! w j+ c" Y; Q
8.4 用MiniMRCluster测试' c% K" x; |0 r! I* |2 S
8.4.1 配置开发环境9 n& h$ S3 \1 l7 K
8.4.2 MiniMRCluster例子
6 S7 @ C3 ^$ [1 i) W0 O5 l! i8.4.3 MiniMRCluster的局限性: g6 i4 X" n6 c8 `, M
8.5 对访问网络资源的MR作业进行测试
; x& V- _3 Z6 H3 v) O- Q8.6 本章小结
K7 a5 U0 B5 x1 {1 Y. j: V第9章Hadoop的监控4 v9 \- y% U1 \4 i, F' v! U6 o! O
9.1 在Hadoop MapReduce Jobs中写日志消息7 j9 `5 \- u( G2 X0 X
9.2 在Hadoop MapReduce Jobs中查看日志消息1 m' Q: r3 Q1 O! v! c4 h
9.3 在Hadoop 2.x中使用日志管理
/ o& d; A9 q* O! ~5 E( ~: G( _% b9.3.1 Hadoop 2.x中的日志存储6 N1 j; s( G% D0 z% X* x
9.3.2 日志管理提升+ p2 r$ X3 ~+ m4 X0 c5 g! ^* F
9.3.3 使用基于Web的界面查看日志' T) f w- s9 C4 d0 Y
9.3.4 命令行界面
D9 Q) c# p" _4 F9.3.5 日志的保存 T1 j4 V# L# s% d8 K; X+ G. H
9.4 Hadoop集群性能监控4 p' [" T" N: [ o3 v0 s- q
9.5 使用YARN REST API
; _; { M" Q' a3 F3 Y9.6 使用供应商工具管理Hadoop集群
+ S& U" v& @+ p/ o& c Q9.7 本章小结
6 x/ V2 G+ Z; Y: o$ T第10章使用Hadoop构建数据仓库
0 i/ e! {# P( |9 ~3 n10.1 Apache Hive
6 s/ \: R7 G% x) r10.1.1 安装Hive
# }3 p+ G/ }; W) t% t. ^0 }0 A10.1.2 Hive的架构
' {; |2 M- X! L6 h10.1.3 元数据存储# [, s' O0 q9 @) b& a" E) E
10.1.4 HiveQL编译基础. l! V* N' |& {4 \$ j
10.1.5 Hive使+ [% U) c( Z! d$ a
……6 C q4 p! g" L! \! J5 v% A% G4 F6 N
第11章 使用Pig进行数据处理
( X3 ?3 G+ H& }' }. R& [2 ^( r- c! `第12章 HCatalog和企业级Hadoop
( {/ J& v2 M( Z, T$ `' ?( X第13章 使用Hadoop分析日志
3 L" U4 b8 i* p第14章 使用HBase构建实时系统8 {2 M+ e1 d+ s( s% C
第15章 Hadoop与数据科学7 h5 @$ d$ O' C; e
第16章 Hadoop与云计算
" a6 e- H4 {5 l. G* y- d第17章 构建YARN应用程序
' |" x. _0 g% a/ P
, {; M4 _8 A) }' s @
R0 `5 Q3 D+ t" u' _! F百度网盘下载地址链接(百度云)下载地址:java自学网(javazx.com)深入理解Hadoop(原书第2版)PDF高清电子书百度云.rar【密码回帖可见】! N' l1 w! d1 \" `
0 A) V8 K& W4 ?+ h
" Z8 h, Q5 k" a& R, U" H |
|