• Hadoop实战(第2版)


    Hadoop实战(第2版)

    为什么写这本书

    第2版与第1版的区别

    本书面向的读者

    在线资源及勘误

    1 Hadoop简介

    1.1 什么是Hadoop

    1.1.1 Hadoop概述
    1.1.2 Hadoop的历史
    1.1.3 Hadoop的功能与作用
    1.1.4 Hadoop的优势
    1.1.5 Hadoop应用现状和发展趋势

    1.2 Hadoop项目及其结构

    1.3 Hadoop体系结构

    1.4 Hadoop与分布式开发

    1.5 Hadoop计算模型—MapReduce

    1.6 Hadoop数据管理

    1.6.1 HDFS的数据管理
    1.6.2 HBase的数据管理
    1.6.3 Hive的数据管理

    1.7 Hadoop集群安全策略

    1.8 本章小结

    2 Hadoop的安装与配置

    2.1 在Linux上安装与配置Hadoop

    2.1.1 安装JDK 1.6
    2.1.2 配置SSH免密码登录
    2.1.3 安装并运行Hadoop

    2.2 在Mac OSX上安装与配置Hadoop

    2.2.1 安装Homebrew
    2.2.2 使用Homebrew安装Hadoop
    2.2.3 配置SSH和使用Hadoop

    2.3 在Windows上安装与配置Hadoop

    2.3.1 安装JDK 1.6或更高版本
    2.3.2 安装Cygwin
    2.3.3 配置环境变量
    2.3.4 安装sshd服务
    2.3.5 启动sshd服务
    2.3.6 配置SSH免密码登录
    2.3.7 安装并运行Hadoop

    2.4 安装和配置Hadoop集群

    2.4.1 网络拓扑
    2.4.2 定义集群拓扑
    2.4.3 建立和安装Cluster

    2.5 日志分析及几个小技巧

    2.6 本章小结

    3 MapReduce计算模型

    3.1 为什么要用MapReduce

    3.2 MapReduce计算模型

    3.2.1 MapReduce Job
    3.2.2 Hadoop中的Hello World程序
    3.2.3 MapReduce的数据流和控制流

    3.3 MapReduce任务的优化

    3.4 Hadoop流

    3.4.1 Hadoop流的工作原理
    3.4.2 Hadoop流的命令
    3.4.3 两个例子

    3.5 Hadoop Pipes

    3.6 本章小结

    4 开发MapReduce应用程序

    4.1 系统参数的配置

    4.2 配置开发环境

    4.3 编写MapReduce程序

    4.3.1 Map处理
    4.3.2 Reduce处理

    4.4 本地测试

    4.5 运行MapReduce程序

    4.5.1 打包
    4.5.2 在本地模式下运行
    4.5.3 在集群上运行

    4.6 网络用户界面

    4.6.1 JobTracker页面
    4.6.2 工作页面
    4.6.3 返回结果
    4.6.4 任务页面
    4.6.5 任务细节页面

    4.7 性能调优

    4.7.1 输入采用大文件
    4.7.2 压缩文件
    4.7.3 过滤数据
    4.7.4 修改作业属性

    4.8 MapReduce工作流

    4.8.1 复杂的Map和Reduce函数
    4.8.2 MapReduce Job中全局共享数据
    4.8.3 链接MapReduce Job

    4.9 本章小结

    5 MapReduce应用案例

    5.1 单词计数

    5.1.1 实例描述
    5.1.2 设计思路
    5.1.3 程序代码
    5.1.4 代码解读
    5.1.5 程序执行
    5.1.6 代码结果
    5.1.7 代码数据流

    5.2 数据去重

    5.2.1 实例描述
    5.2.2 设计思路
    5.2.3 程序代码

    5.3 排序

    5.3.1 实例描述
    5.3.2 设计思路
    5.3.3 程序代码

    5.4 单表关联

    5.4.1 实例描述
    5.4.2 设计思路
    5.4.3 程序代码

    5.5 多表关联

    5.5.1 实例描述
    5.5.2 设计思路
    5.5.3 程序代码

    5.6 本章小结

    6 MapReduce工作机制

    6.1 MapReduce作业的执行流程

    6.1.1 MapReduce任务执行总流程
    6.1.2 提交作业
    6.1.3 初始化作业
    6.1.4 分配任务
    6.1.5 执行任务
    6.1.6 更新任务执行进度和状态
    6.1.7 完成作业

    6.2 错误处理机制

    6.2.1 硬件故障
    6.2.2 任务失败

    6.3 作业调度机制

    6.4 Shuffle和排序

    6.4.1 Map端
    6.4.2 Reduce端
    6.4.3 shuffle过程的优化

    6.5 任务执行

    6.5.1 推测式执行
    6.5.2 任务JVM重用
    6.5.3 跳过坏记录
    6.5.4 任务执行环境

    6.6 本章小结

    7 Hadoop I/O操作

    7.1 I/O操作中的数据检查

    7.2 数据的压缩

    7.2.1 Hadoop对压缩工具的选择
    7.2.2 压缩分割和输入分割
    7.2.3 在MapReduce程序中使用压缩

    7.3 数据的I/O中序列化操作

    7.3.1 Writable类
    7.3.2 实现自己的Hadoop数据类型

    7.4 针对Mapreduce的文件类

    7.4.1 SequenceFile类
    7.4.2 MapFile类
    7.4.3 ArrayFile、SetFile和BloomMapFile

    7.5 本章小结

    8 下一代MapReduce:YARN

    8.1 MapReduce V2设计需求

    8.2 MapReduce V2主要思想和架构

    8.3 MapReduce V2设计细节

    8.4 MapReduce V2优势

    8.5 本章小结

    9 HDFS详解

    9.1 Hadoop的文件系统

    9.2 HDFS简介

    9.3 HDFS体系结构

    9.3.1 HDFS的相关概念
    9.3.2 HDFS的体系结构

    9.4 HDFS的基本操作

    9.4.1 HDFS的命令行操作
    9.4.2 HDFS的Web界面

    9.5 HDFS常用Java API详解

    9.5.1 使用Hadoop URL读取数据
    9.5.2 使用FileSystem API读取数据
    9.5.3 创建目录
    9.5.4 写数据
    9.5.5 删除数据
    9.5.6 文件系统查询

    9.6 HDFS中的读写数据流

    9.6.1 文件的读取
    9.6.2 文件的写入
    9.6.3 一致性模型

    9.7 HDFS命令详解

    9.7.1 通过distcp进行并行复制
    9.7.2 HDFS的平衡
    9.7.3 使用Hadoop归档文件
    9.7.4 其他命令

    9.8 WebHDFS

    9.8.1 WebHDFS的配置
    9.8.2 WebHDFS命令

    9.9 本章小结

    10 Hadoop的管理

    10.1 HDFS文件结构

    10.2 Hadoop的状态监视和管理工具

    10.2.1 审计日志
    10.2.2 监控日志
    10.2.3 Metrics
    10.2.4 Java管理扩展
    10.2.5 Ganglia
    10.2.6 Hadoop管理命令

    10.3 Hadoop集群的维护

    10.3.1 安全模式
    10.3.2 Hadoop的备份
    10.3.3 Hadoop的节点管理
    10.3.4 系统升级

    10.4 本章小结

    11 Hive详解

    11.1 Hive简介

    11.1.1 Hive的数据存储
    11.1.2 Hive的元数据存储

    11.2 Hive的基本操作

    11.2.1 在集群上安装Hive
    11.2.2 配置MySQL存储Hive元数据
    11.2.3 配置Hive

    11.3 Hive QL详解

    11.3.1 数据定义(DDL)操作
    11.3.2 数据操作(DML)
    11.3.3 SQL操作
    11.3.4 Hive QL使用实例

    11.4 Hive网络(Web UI)接口

    11.4.1 Hive网络接口配置
    11.4.2 Hive网络接口操作实例

    11.5 Hive的JDBC接口

    11.5.1 Eclipse环境配置
    11.5.2 程序实例

    11.6 Hive的优化

    11.7 本章小结

    12 HBase详解

    12.1 HBase简介

    12.2 HBase的基本操作

    12.2.1 HBase的安装
    12.2.2 运行HBase
    12.2.3 HBase Shell
    12.2.4 HBase配置

    12.3 HBase体系结构

    12.3.1 HRegion
    12.3.2 HRegion服务器
    12.3.3 HBase Master服务器
    12.3.4 ROOT表和META表
    12.3.5 ZooKeeper

    12.4 HBase数据模型

    12.4.1 数据模型
    12.4.2 概念视图
    12.4.3 物理视图

    12.5 HBase与RDBMS

    12.6 HBase与HDFS

    12.7 HBase客户端

    12.8 Java API

    12.9 HBase编程

    12.9.1 使用Eclipse开发HBase应用程序
    12.9.2 HBase编程
    12.9.3 HBase与MapReduce

    12.10 模式设计

    12.10.1 模式设计应遵循的原则
    12.10.2 学生表
    12.10.3 事件表

    12.11 本章小结

    13 Mahout详解

    13.1 Mahout简介

    13.2 Mahout的安装和配置

    13.3 Mahout API简介

    13.4 Mahout中的频繁模式挖掘

    13.4.1 什么是频繁模式挖掘
    13.4.2 Mahout中的频繁模式挖掘

    13.5 Mahout中的聚类和分类

    13.5.1 什么是聚类和分类
    13.5.2 Mahout中的数据表示
    13.5.3 将文本转化成向量
    13.5.4 Mahout中的聚类、分类算法
    13.5.5 算法应用实例

    13.6 Mahout应用:建立一个推荐引擎

    13.6.1 推荐引擎简介
    13.6.2 使用Taste构建一个简单的推荐引擎
    13.6.3 简单分布式系统下基于产品的推荐系统简介

    13.7 本章小结

    14 Pig详解

    14.1 Pig简介

    14.2 Pig的安装和配置

    14.2.1 Pig的安装条件
    14.2.2 Pig的下载、安装和配置
    14.2.3 Pig运行模式

    14.3 Pig Latin语言

    14.3.1 Pig Latin语言简介
    14.3.2 Pig Latin的使用
    14.3.3 Pig Latin的数据类型
    14.3.4 Pig Latin关键字

    14.4 用户定义函数

    14.4.1 编写用户定义函数
    14.4.2 使用用户定义函数

    14.5 Zebra简介

    14.5.1 Zebra的安装
    14.5.2 Zebra的使用简介

    14.6 Pig实例

    14.6.1 Local模式
    14.6.2 MapReduce模式

    14.7 Pig进阶

    14.7.1 数据实例
    14.7.2 Pig数据分析

    14.8 本章小结

    15 ZooKeeper详解

    15.1 ZooKeeper简介

    15.1.1 ZooKeeper的设计目标
    15.1.2 数据模型和层次命名空间
    15.1.3 ZooKeeper中的节点和临时节点
    15.1.4 ZooKeeper的应用

    15.2 ZooKeeper的安装和配置

    15.2.1 安装ZooKeeper
    15.2.2 配置ZooKeeper
    15.2.3 运行ZooKeeper

    15.3 ZooKeeper的简单操作

    15.3.1 使用ZooKeeper命令的简单操作步骤
    15.3.2 ZooKeeper API的简单使用

    15.4 ZooKeeper的特性

    15.4.1 ZooKeeper的数据模型
    15.4.2 ZooKeeper会话及状态
    15.4.3 ZooKeeper watches
    15.4.4 ZooKeeper ACL
    15.4.5 ZooKeeper的一致性保证

    15.5 使用ZooKeeper进行Leader选举

    15.6 ZooKeeper锁服务

    15.6.1 ZooKeeper中的锁机制
    15.6.2 ZooKeeper提供的一个写锁的实现

    15.7 使用ZooKeeper创建应用程序

    15.7.1 使用Eclipse开发ZooKeeper应用程序
    15.7.2 应用程序实例

    15.8 BooKeeper

    15.9 本章小结

    16 Avro详解

    16.1 Avro介绍

    16.1.1 模式声明

    16.1.2 数据序列化
    16.1.3 数据排列顺序
    16.1.4 对象容器文件
    16.1.5 协议声明
    16.1.6 协议传输格式
    16.1.7 模式解析

    16.2 Avro的C/C++实现

    16.3 Avro的Java实现

    16.4 GenAvro(Avro IDL)语言

    16.5 Avro SASL概述

    16.6 本章小结

    17 Chukwa详解

    17.1 Chukwa简介

    17.2 Chukwa架构

    17.2.1 客户端及其数据模型
    17.2.2 收集器
    17.2.3 归档器和分离解析器
    17.2.4 HICC

    17.3 Chukwa的可靠性

    17.4 Chukwa集群搭建

    17.4.1 基本配置要求
    17.4.2 Chukwa的安装
    17.4.3 Chukwa的运行

    17.5 Chukwa数据流的处理

    17.6 Chukwa与其他监控系统比较

    17.7 本章小结

    本章参考资料

    18 Hadoop的常用插件与开发

    18.1 Hadoop Studio的介绍和使用

    18.1.1 Hadoop Studio的介绍
    18.1.2 Hadoop Studio的安装配置
    18.1.3 Hadoop Studio的使用举例

    18.2 Hadoop Eclipse的介绍和使用

    18.2.1 Hadoop Eclipse的介绍
    18.2.2 Hadoop Eclipse的安装配置
    18.2.3 Hadoop Eclipse的使用举例

    18.3 Hadoop Streaming的介绍和使用

    18.3.1 Hadoop Streaming的介绍
    18.3.2 Hadoop Streaming的使用举例
    18.3.3 使用Hadoop Streaming常见的问题

    18.4 Hadoop Libhdfs的介绍和使用

    18.4.1 Hadoop Libhdfs的介绍
    18.4.2 Hadoop Libhdfs的安装配置
    18.4.3 Hadoop Libhdfs API简介
    18.4.4 Hadoop Libhdfs的使用举例

    18.5 本章小结

    19 企业应用实例

    19.1 Hadoop在Yahoo!的应用

    19.2 Hadoop在eBay的应用

    19.3 Hadoop在百度的应用

    19.4 即刻搜索中的Hadoop

    19.4.1 即刻搜索简介
    19.4.2 即刻Hadoop应用架构
    19.4.3 即刻Hadoop应用分析

    19.5 Facebook中的Hadoop和HBase

    19.5.1 Facebook中的任务特点
    19.5.2 MySQL VS Hadoop+HBase
    19.5.3 Hadoop和HBase的实现

    19.6 本章小结

    本章参考资料

    附录A 云计算在线检测平台

    A.1 平台介绍

    A.2 结构和功能

    A.2.1 前台用户接口的结构和功能
    A.2.2 后台程序运行的结构和功能
    A.2.3 平台程序过滤功能

    A.3 检测流程

    A.4 使用介绍

    A.4.1 功能使用
    A.4.2 返回结果介绍
    A.4.3 使用注意事项

    A.5 小结

    附录B Hadoop安装、运行与使用说明

    B.1 Hadoop安装

    B.1.1 JDK安装
    B.1.2 SSH安装
    B.1.3 Hadoop安装

    B.2 Hadoop启动

    B.3 Hadoop使用

    B.3.1 命令行管理Hadoop集群
    B.3.2 运行MapReduce框架程序

    附录C 使用DistributedCache的MapReduce程序

    C.1 程序场景

    C.2 详细代码

    附录D 使用ChainMapper和ChainReducer的MapReduce程序

    D.1 程序场景

    D.2 详细代码

    思维导图

    Hadoop实战(第2版)

    防止博客图床图片失效,防止图片源站外链:

    http://www.processon.com/chart_image/5e5b3193e4b0d4dc8776cae6.png)

    思维导图在线编辑链接:

    https://www.processon.com/view/5e5b3193e4b0d4dc8776cae3

  • 相关阅读:
    分享15个专业且免费的HTML5模板
    项目环境的搭建
    DNS预解析 dns-prefetch
    页面布局
    计划与准备
    Hogan的安装和使用
    代理工具--fiddle
    vue.js加入购物车小球动画
    vue.js笔记1.0
    url,href,src区别
  • 原文地址:https://www.cnblogs.com/jingle1267/p/12842237.html
Copyright © 2020-2023  润新知