首 页
手机版

hadoop核心技术pdf 翟周伟pdf扫描版

Hadoop核心技术是由百度Hadoop技术专家翟周伟撰写的一本Hadoop技术学习书籍,全书结合了百度大数据实践,直击企业痛点,主要对Hadoop的基本原理和优化配置由浅入深进行了详细分析,最后通过实战案例进一步讲解分析。本书对HDFS、MapReduce以及Hadoop Streaming 和 Pipes的实现机制进行了深度分析;对Hadoop调度作了详细说明,特别是对公平调度器(FairScheduler)的设计理念和配置优化做了详细剖析,无论是对于初学者还是熟悉Hadoop的同学本书都非常适合,特别适合MapReduce的开发人员、Hadoop集群运维人员、分布式计算工程师以及做数据挖掘的工程师和架构师。

内容介绍

《hadoop核心技术》是一本技术深度与企业实践并重的著作,由百度的Hadoop技术工程师撰写,是百度Hadoop技术实践经验的总结。本书从使用、实现原理、运维和开发4个方面对Hadoop的核心技术进行了深入的讲解。

本书分为三篇。

第一篇为基础篇(第1~6章),从认识Hadoop开始,讲解Hadoop的前世今生以及使用领域,然后正式介绍Hadoop的基本使用,帮助读者了解Hadoop的背景知识和简单使用方法,接着通过HDFS分布式文件系统和MapReduce并行计算模型从理论和实现机制的角度对Hadoop核心技术进行讲解,最后对Hadoop的命令系统进行了系统的介绍。对于初级和中级读者而言,第一篇的内容需要重点阅读和学习,这篇是Hadoop核心技术的基础,只有基础知识扎实后才能更好地掌握Hadoop的高级功能和精髓。

第二篇为高级篇(第7~9章),从原理与实现的角度对Hadoop的核心功能进行了深入的研究,涵盖MapReduce深度分析、Hadoop Streaming和Pipes原理解析,以及Hadoop作业调度器系统的深入研究和讲解。本篇内容适合在阅读了基础篇的基础上或者已经对Hadoop的核心原理有了一定理解的基础上进行阅读。

第三篇为实战篇(第10~12章),从实战的角度进行讲解,首先讲述Hadoop集群搭建技术,然后对Streaming和Pipes编程进行了实战级的应用讲解,Streaming编程接口是一个非常简单且高效的MapReduce编程方式,由于不限制编程语言,因此Streaming的使用比Java原生接口应用得还要广泛,由此可见,学习并掌握Streaming编程技术非常有助于软件工程师的Hadoop应用技术的提高。第12章讲解了Hadoop MapReduce应用开发实战,从整体的并行应用开发角度进行讲解,对实际开发过程中的常用功能使用和常见问题解决都进行了介绍。这部分内容适合在实际工作中使用Hadoop开发应用的工程师阅读和学习。

章节目录

前 言
基 础 篇
第1章 认识Hadoop
1.1 缘于搜索的小象
1.1.1 Hadoop的身世
1.1.2 Hadoop简介
1.1.3 Hadoop发展简史
1.2 大数据、Hadoop和云计算
1.2.1 大数据
1.2.2 大数据、Hadoop和云计算的关系
1.3 设计思想与架构
1.3.1 数据存储与切分
1.3.2 MapReduce模型
1.3.3 MPI和MapReduce
1.4 国外Hadoop的应用现状
1.5 国内Hadoop的应用现状
1.6 Hadoop发行版
1.6.1 Apache Hadoop
1.6.2 Cloudera Hadoop
1.6.3 Hortonworks Hadoop发行版
1.6.4 MapR Hadoop发行版
1.6.5 IBM Hadoop发行版
1.6.6 Intel Hadoop发行版
1.6.7 华为Hadoop发行版
1.7 小结
第2章 Hadoop使用之初体验
2.1 搭建测试环境
2.1.1 软件与准备
2.1.2 安装与配置
2.1.3 启动与停止
2.2 算法分析与设计
2.2.1 Map设计
2.2.2 Reduce设计
2.3 实现接口
2.3.1 Java API实现
2.3.2 Streaming接口实现
2.3.3 Pipes接口实现
2.4 编译
2.4.1 基于Java API实现的编译
2.4.2 基于Streaming实现的编译
2.4.3 基于Pipes实现的编译
2.5 提交作业
2.5.1 基于Java API实现作业提交
2.5.2 基于Streaming实现作业提交
2.5.3 基于Pipes实现作业提交
2.6 小结
第3章 Hadoop存储系统
3.1 基本概念
3.1.1 NameNode
3.1.2 DateNode
3.1.3 客户端

3.1.4 块
3.2 HDFS的特性和目标
3.2.1 HDFS的特性
3.2.2 HDFS的目标
3.3 HDFS架构
3.3.1 Master/Slave架构
3.3.2 NameNode和Secondary NameNode通信模型
3.3.3 文件存取机制
3.4 HDFS核心设计
3.4.1 Block大小
3.4.2 数据复制
3.4.3 数据副本存放策略
3.4.4 数据组织
3.4.5 空间回收
3.4.6 通信协议
3.4.7 安全模式
3.4.8 机架感知
3.4.9 健壮性
3.4.10 负载均衡
3.4.11 升级和回滚机制
3.5 HDFS权限管理
3.5.1 用户身份
3.5.2 系统实现
3.5.3 超级用户
3.5.4 配置参数
3.6 HDFS配额管理
3.7 HDFS的缺点
3.8 小结
第4章 HDFS的使用
4.1 HDFS环境准备
4.1.1 HDFS安装配置
4.1.2 HDFS格式化与启动
4.1.3 HDFS运行检查
4.2 HDFS命令的使用
4.2.1 fs shell
4.2.2 archive
4.2.3 distcp
4.2.4 fsck
4.3 HDFS Java API的使用方法
4.3.1 Java API简介
4.3.2 读文件
4.3.3 写文件
4.3.4 删除文件或目录
4.4 C接口libhdfs
4.4.1 libhdfs介绍
4.4.2 编译与部署
4.4.3 libhdfs接口介绍
4.4.4 libhdfs使用举例
4.5 WebHDFS接口
4.5.1 WebHDFS REST API简介
4.5.2 WebHDFS配置
4.5.3 WebHDFS使用
4.5.4 WebHDFS错误响应和查询参数
4.6 小结
第5章 MapReduce计算框架
5.1 Hadoop MapReduce简介
5.2 MapReduce模型
5.2.1 MapReduce编程模型
5.2.2 MapReduce实现原理
5.3 计算流程与机制
5.3.1 作业提交和初始化
5.3.2 Mapper
5.3.3 Reducer
5.3.4 Reporter和OutputCollector
5.4 MapReduce的输入/输出格式
5.4.1 输入格式
5.4.2 输出格式
5.5 核心问题
5.5.1 Map和Reduce数量
5.5.2 作业配置
5.5.3 作业执行和环境
5.5.4 作业容错机制
5.5.5 作业调度
5.6 有用的MapReduce特性
5.6.1 计数器
5.6.2 DistributedCache
5.6.3 Tool
5.6.4 IsolationRunner
5.6.5 Prof?iling
5.6.6 MapReduce调试
5.6.7 数据压缩
5.6.8 优化
5.7 小结
第6章 Hadoop命令系统
6.1 Hadoop命令系统的组成
6.2 用户命令
6.3 管理员命令
6.4 测试命令
6.5 应用命令
6.6 Hadoop的streaming命令
6.6.1 streaming命令
6.6.2 参数使用分析
6.7 Hadoop的pipes命令
6.7.1 pipes命令
6.7.2 参数使用分析
6.8 小结
高 级 篇
第7章 MapReduce深度分析
7.1 MapReduce总结构分析
7.1.1 数据流向分析
7.1.2 处理流程分析
7.2 MapTask实现分析
7.2.1 总逻辑分析
7.2.2 Read阶段
7.2.3 Map阶段
7.2.4 Collector和Partitioner阶段
7.2.5 Spill阶段
7.2.6 Merge阶段
7.3 ReduceTask实现分析
7.3.1 总逻辑分析
7.3.2 Shuffle阶段
7.3.3 Merge阶段
7.3.4 Sort阶段
7.3.5 Reduce阶段
7.4 JobTracker分析
7.4.1 JobTracker服务分析
7.4.2 JobTracker启动分析
7.4.3 JobTracker核心子线程分析
7.5 TaskTracker分析
7.5.1 TaskTracker启动分析
7.5.2 TaskTracker核心子线程分析
7.6 心跳机制实现分析
7.6.1 心跳检测分析
7.6.2 TaskTracker.transmitHeart-Beat()
7.6.3 JobTracker.heartbeat()
7.6.4 JobTracker.processHeartbeat()
7.7 作业创建分析
7.7.1 初始化分析
7.7.2 作业提交分析
7.8 作业执行分析
7.8.1 JobTracker初始化
7.8.2 TaskTracker.startNewTask()
7.8.3 TaskTracker.localizeJob()
7.8.4 TaskRunner.run()
7.8.5 MapTask.run()
7.9 小结
第8章 Hadoop Streaming和Pipes原理与实现
8.1 Streaming原理浅析
8.2 Streaming实现架构
8.3 Streaming核心实现机制
8.3.1 主控框架实现
8.3.2 用户进程管理
8.3.3 框架和用户程序的交互
8.3.4 PipeMapper和PiperReducer
8.4 Pipes原理浅析
8.5 Pipes实现架构
8.6 Pipes核心实现机制
8.6.1 主控类实现
8.6.2 用户进程管理
8.6.3 PipesMapRunner
8.6.4 PipesReducer
8.6.5 C++端HadoopPipes
8.7 小结
第9章 Hadoop作业调度系统
9.1 作业调度概述
9.1.1 相关概念
9.1.2 作业调度流程
9.1.3 集群资源组织与管理
9.1.4 队列控制和权限管理
9.1.5 插件式调度框架
9.2 FIFO调度器
9.2.1 基本调度策略
9.2.2 FIFO实现分析
9.2.3 FIFO初始化与停止
9.2.4 作业监听控制
9.2.5 任务分配算法
9.2.6 配置与使用
9.3 公平调度器
9.3.1 产生背景
9.3.2 主要功能
9.3.3 基本调度策略
9.3.4 FairScheduler实现分析
9.3.5 FairScheduler启停分析
9.3.6 作业监听控制
9.3.7 资源池管理
9.3.8 作业更新策略
9.3.9 作业权重和资源量的计算
9.3.10 任务分配算法
9.3.11 FairScheduler配置参数
9.3.12 使用与管理
9.4 容量调度器
9.4.1 产生背景
9.4.2 主要功能
9.4.3 基本调度策略
9.4.4 CapacityScheduler实现分析
9.4.5 CapacityScheduler启停分析
9.4.6 作业监听控制
9.4.7 作业初始化分析
9.4.8 任务分配算法
9.4.9 内存匹配机制
9.4.10 配置与使用
9.5 调度器对比分析
9.5.1 调度策略对比
9.5.2 队列和优先级
9.5.3 资源分配保证
9.5.4 作业限制
9.5.5 配置管理
9.5.6 扩展性支持
9.5.7 资源抢占和延迟调度
9.5.8 优缺点分析
9.6 其他调度器
9.6.1 HOD调度器
9.6.2 LATE调度器
9.7 小结
实 战 篇
第10章 Hadoop集群搭建
10.1 Hadoop版本的选择
10.2 集群基础硬件需求
10.2.1 内存
10.2.2 CPU
10.2.3 磁盘
10.2.4 网卡
10.2.5 网络拓扑
10.3 集群基础软件需求
10.3.1 操作系统
10.3.2 JVM和SSH
10.4 虚拟化需求
10.5 事前准备
10.5.1 创建安装用户
10.5.2 安装Java
10.5.3 安装SSH并设置
10.5.4 防火墙端口设置
10.6 安装Hadoop
10.6.1 安装HDFS
10.6.2 安装MapReduce
10.7 集群配置
10.7.1 配置管理
10.7.2 环境变量配置
10.7.3 核心参数配置
10.7.4 HDFS参数配置
10.7.5 MapReduce参数配置
10.7.6 masters和slaves配置
10.7.7 客户端配置
10.8 启动和停止
10.8.1 启动/停止HDFS
10.8.2 启动/停止MapReduce
10.8.3 启动验证
10.9 集群基准测试
10.9.1 HDFS基准测试
10.9.2 MapReduce基准测试
10.9.3 综合性能测试
10.10 集群搭建实例
10.10.1 部署策略
10.10.2 软件和硬件环境
10.10.3 Hadoop安装
10.10.4 配置core-site.xml
10.10.5 配置hdfs-site.xml
10.10.6 配置mapred-site.xml
10.10.7 SecondaryNameNode和Slave
10.10.8 配置作业队列
10.10.9 配置第三方调度器
10.10.10 启动与验证

使用说明

1、下载并解压,得出pdf文件

2、如果打不开本文件,请务必下载pdf阅读器

3、安装后,在打开解压得出的pdf文件

4、双击进行阅读

收起介绍展开介绍
  • 下载地址
hadoop核心技术pdf 翟周伟pdf扫描版

有问题? 点此报错

发表评论

0条评论