内容推荐 本书以Hadoop及其周边框架为主线,介绍了整个Hadoop生态系统主流的大数据开发技术。全书共16章,第1章讲解了VMware中CentOS 7操作系统的安装;第2章讲解了大数据开发之前对操作系统集群环境的配置;第3~16章讲解了Hadoop生态系统各框架HDFS、MapReduce、YARN、ZooKeeper、HBase、Hive、Sqoop和数据实时处理系统Flume、Kafka、Storm、Spark以及分布式搜索系统Elasticsearch等的基础知识、架构原理、集群环境搭建,同时包括常用的Shell命令、API操作、源码剖析,并通过实际案例加深对各个框架的理解与应用。通过阅读本书,读者即使没有任何大数据基础,也可以对照书中的步骤成功搭建属于自己的大数据集群并独立完成项目开发。 本书可作为Hadoop新手入门的指导书,也可作为大数据开发人员的随身手册以及大数据从业者的参考用书。 目录 第1章 VMware中安装CentOS 7 1.1 下载CentOS 7镜像文件 1.2 新建虚拟机 1.3 安装操作系统 第2章 CentOS 7集群环境配置 2.1 系统环境配置 2.1.1 新建用户 2.1.2 修改用户权限 2.1.3 关闭防火墙 2.1.4 设置固定IP 2.1.5 修改主机名 2.1.6 新建资源目录 2.2 安装JDK 2.3 克隆虚拟机 2.4 配置主机IP映射 第3章 Hadoop 3.1 Hadoop简介 3.1.1 Hadoop生态系统架构 3.1.2 Hadoop 1.x与2.x的架构对比 3.2 YARN基本架构及组件 3.3 YARN工作流程 3.4 配置集群各节点SSH无密钥登录 3.4.1 无密钥登录原理 3.4.2 无密钥登录操作步骤 3.5 搭建Hadoop 2.X分布式集群 第4章 HDFS 4.1 HDFS简介 4.1.1 设计目标 4.1.2 总体架构 4.1.3 主要组件 4.1.4 文件读写 4.2 HDFS命令行操作 4.3 HDFS Web界面操作 4.4 HDFS Java API操作 4.4.1 读取数据 4.4.2 创建目录 4.4.3 创建文件 4.4.4 删除文件 4.4.5 遍历文件和目录 4.4.6 获取文件或目录的元数据 4.4.7 上传本地文件 4.4.8 下载文件到本地 第5章 MapReduce 5.1 MapReduce简介 5.1.1 设计思想 5.1.2 任务流程 5.1.3 工作原理 5.2 MapReduce程序编写步骤 5.3 案例分析:单词计数 5.4 案例分析:数据去重 5.5 案例分析:求平均分 5.6 案例分析:二次排序 5.7 使用MRUnit测试MapReduce程序 第6章 ZooKeeper 6.1 ZooKeeper简介 6.1.1 应用场景 6.1.2 架构原理 6.1.3 数据模型 6.1.4 节点类型 6.1.5 Watcher机制 6.1.6 分布式锁 6.2 ZooKeeper安装配置 6.2.1 单机模式 6.2.2 伪分布模式 6.2.3 集群模式 6.3 ZooKeeper命令行操作 6.4 ZooKeeper JAVA API操作 6.4.1 创建Java工程 6.4.2 创建节点 6.4.3 修改数据 6.4.4 获取数据 6.4.5 删除节点 6.5 案例分析:监听服务器动态上下线 第7章 HDFS与YARN HA 7.1 HDFS HA搭建 7.1.1 架构原理 7.1.2 搭建步骤 7.1.3 结合ZooKeeper进行HDFS自动故障转移 7.2 YARN HA搭建 7.2.1 架构原理 7.2.2 搭建步骤 第8章 HBase 8.1 什么是HBase 8.2 HBase基本结构 8.3 HBase数据模型 8.4 HBase集群架构 8.5 HBase安装配置 8.5.1 单机模式 8.5.2 伪分布模式 8.5.3 集群模式 8.6 HBase SHELL命令操作 8.7 HBase JAVA API操作 8.7.1 创建Java工程 8.7.2 创建表 8.7.3 添加数据 8.7.4 查询数据 8.7.5 删除数据 8.8 HBase过滤器 8.9 案例分析:HBase MapReduce数据转移 8.9.1 HBase不同表间数据转移 8.9.2 HDFS数据转移至HBase 8.10 案例分析:HBase数据备份与恢复 第9章 Hive 9.1 什么是Hive 9.1.1 数据单元 9.1.2 数据类型 9.2 Hive架构体系 9.3 Hive三种运行模式 9.4 Hive安装配置 9.4.1 内嵌模式 9.4.2 本地模式 9.4.3 远程模式 9.5 Hive常见属性配置 9.6 Beeline CLI的使用 9.7 Hive数据库操作 9.8 Hive表操作 9.8.1 内部表 9.8.2 外部表 9.8.3 分区表 9.8.4 分桶表 9.9 Hive查询 9.9.1 SELECT子句查询 9.9.2 JOIN连接查询 9.10 其他Hive命令 9.11 Hive元数据表结构分析 9.12 Hive自定义函数 9.13 Hive JDBC操作 9.14 案例分析:Hive与HBase整合 9.15 案例分析:Hive分析搜狗用户搜索日志 第10章 Sqoop 10.1 什么是SQOOP 10.1.1 Sqoop基本架构 10.1.2 Sqoop开发流程 10.2 使用SQOOP 10.3 数据导入工具 10.4 数据导出工具 10.5 SQOOP安装与配置 10.6 案例分析:将MYSQL表数据导入到HDFS中 10.7 案例分析:将HDFS中的数据导出到MYSQL中 10.8 案例分析:将MySQL表数据导入到HBase中 第11章 Kafka 11.1 什么是Kafka 11.2 Kafka架构 11.3 主题与分区 11.4 分区副本 11.5 消费者组 11.6 数据存储机制 11.7 集群环境搭建 11.8 命令行操作 11.8.1 创建主题 11.8.2 查询主题 11.8.3 创建生产者 11.8.4 创建消费者 11.9 JAVA API操作 11.9.1 创建Java工程 11.9.2 创建生产者 11.9.3 创建消费者 11.9.4 运行程序 11.10 案例分析:Kafka生产者拦截器 第12章 Flume 12.1 什么是Flume 12.2 架构原理 12.2.1 单节点架构 12.2.2 组件介绍 12.2.3 多节点架构 12.3 安装与简单使用 12.4 案例分析:日志监控(一 |