本书基于Hadoop大数据平台,讲解大数据平台的搭建与运维、大数据的采集与存储、大数据的处理、数据的分析、数据的可视化等完整的大数据应用案例,全面详细地讲述Hadoop、MapReduee、HDFS、Hive、Spark和Zookeeper等技术的相关知识;还详细介绍了Hadoop大数据集群环境配置与搭建、部署配置Hadoop HA模式等内容。本书具有较强的实用性和可操作性,语言精练,通俗易懂,操作步骤描述详尽,并配有大量操作图例。
章 大数据与Hadoop平台技术 1
1.1 大数据时代 1
1.2 大数据关键技术 2
1.3 大数据涉及的主要软件 3
1.4 Hadoop平台技术的生态 4
第2章 Ubuntu系统的安装与使用 7
2.1 Linux系统简介 7
2.2 Ubuntu系统安装 8
2.2.1 下载虚拟机软件VMware并安装 8
2.2.2 在虚拟机中安装Ubuntu系统 14
2.2.3 切换中英文输入法 27
2.2.4 安装VMware Tools 28
2.2.5 apt更新与更新源更换 30
2.2.6 安装vim编辑器并使用 32
2.3 虚拟机联网问题及其他 34
第3章 Linux基础知识及相关软件的基本使用 39
3.1 Linux基础知识 39
3.1.1 Linux目录结构 39
3.1.2 Shell介绍 40
3.1.3 超级用户――root用户 41
3.1.4 sudo命令和su命令 41
3.1.5 创建与删除普通用户 42
3.1.6 目录标记规则 43
3.1.7 目录权限 43
3.1.8 安装SSH 44
3.2 Linux常用软件与命令 45
3.2.1 修改主机名 45
3.2.2 目录操作 45
3.2.3 查看文件内容和清屏 46
3.2.4 文件操作 46
3.2.5 文件解压 47
3.2.6 进程与端口查看命令 48
3.2.7 系统管理命令 49
3.2.8 数据流重定向和管道的使用 50
3.2.9 其他使用技巧介绍 51
3.3 在Ubuntu中安装Eclipse 51
3.3.1 通过软件中心下载安装Eclipse 51
3.3.2 在桌面创建Eclipse快捷方式 52
第4章 Hadoop的伪分布式安装与使用 54
4.1 深入了解Hadoop 54
4.1.1 Hadoop发行版本介绍 54
4.1.2 Hadoop核心架构 55
4.1.3 Hadoop的主要应用场景 56
4.2 安装Java环境 57
4.2.1 离线安装 57
4.2.2 在线安装 58
4.3 安装Hadoop 59
4.3.1 下载Hadoop安装文件并解压 59
4.3.2 配置Hadoop环境变量 60
4.3.3 伪分布式模式配置 61
4.3.4 Hadoop无法正常启动和使用的解决方法 63
第5章 HDFS 65
5.1 HDFS基本知识 65
5.1.1 DFS简介 65
5.1.2 HDFS 65
5.1.3 HDFS存储数据 66
5.2 Shell命令与HDFS交互操作 67
5.2.1 Hadoop Shell命令方式 67
5.2.2 目录操作 68
5.2.3 文件操作 69
5.2.4 利用Web界面管理HDFS 70
5.3 Java编程与HDFS实现交互 71
5.3.1 在Eclipse中创建HDFS交互Java项目 71
5.3.2 在Java项目中编写Java应用程序代码 75
5.3.3 编译运行程序与打包 77
5.3.4 练习中使用的代码文件 81
第6章 HBase伪分布部署与使用 85
6.1 HBase介绍 85
6.2 安装HBase 86
6.3 伪分布HBase环境搭建 87
6.4 HBase Shell常用操作命令实践 90
6.4.1 HBase表结构举例说明和常用的表操作命令 90
6.4.2 在HBase中创建表和删除表 91
6.4.3 HBase数据库基本操作 92
第7章 MapReduce原理与基础编程 94
7.1 MapReduce介绍与基本原理 94
7.1.1 MapReduce在现实生活中的运用 94
7.1.2 通过案例拆解MapReduce的工作过程 95
7.1.3 MapReduce工作流程概括 98
7.2 MapReduce编程思路 98
7.3 MapReduce编程实例1:WordCount 99
7.4 MapReduce编程实例2:计算学生的平均成绩 109
第8章 数据仓库Hive伪分布式部署与使用 113
8.1 Hive的特点 113
8.2 Hive伪分布式部署 114
8.2.1 安装配置Hive 114
8.2.2 安装配置MySQL,连接Hive元数据库 115
8.3 MySQL数据库操作 118
8.3.1 常用命令介绍 118
8.3.2 无法登录MySQL Shell的解决方法 120
第9章 数据分析与Hive数据库操作 121
9.1 Hive操作命令介绍 121
9.2 HQL中的Case命令用法介绍 122
9.3 电商网站日志数据分析与达成目标 124
9.4 数据分析实现 126
9.4.1 将网站日志文件集加载到Hive中 126
9.4.2 统计分析网站日志数据 127
9.4.3 统计词频 131
0章 Spark的安装与基础编程 133
10.1 Spark的安装(Python版) 133
10.1.1 下载Spark安装软件 134
10.1.2 安装与配置Spark 134
10.1.3 在PySpark中运行代码 135
10.1.4 Spark独立应用程序编程示例 136
10.2 Spark的一些基本概念 137
10.3 RDD编程操作 137
10.3.1 RDD操作的两种类型 137
10.3.2 创建RDD 139
10.3.3 创建键值对RDD 142
10.4 从RDD到DataFrame 145
10.4.1 Spark SQL和DataFrame 145
10.4.2 创建样例数据文件 146
10.4.3 读取json和csv文件生成DataFrame 147
10.4.4 普通文本文件生成DataFrame 148
10.5 Spark综合编程与Python可视化 151
10.5.1 Spark综合编程 151
10.5.2 Python可视化呈现 154
1章 Hadoop集群环境搭建 160
11.1 克隆Linux虚拟机 160
11.2 桥接模式与NAT模式 163
11.2.1 桥接模式 163
11.2.2 NAT模式 164
11.3 VMware Workstation桥接网络配置 164
11.3.1 集群网络配置实现的目标 164
11.3.2 设置网络桥接模式 165
11.3.3 验证 169
11.4 大数据集群环境配置与搭建 170
11.4.1 修改主机名,并将主机名与IP地址建立映射 170
11.4.2 集群SSH免密登录 171
11.4.3 时间同步 173
2章 Zookeeper与集群Hadoop安装应用 174
12.1 Zookeeper介绍 174
12.1.1 Zookeeper的作用 174
12.1.2 Zookeeper选举机制 175
12.2 安装Zookeeper 175
12.2.1 为安装Zookeeper的目录赋权 175
12.2.2 下载、解压Zookeeper安装包 175
12.2.3 修改Zookeeper配置文件zoo.cfg 176
12.2.4 创建zkdata和zkdatalog文件夹 177
12.2.5 创建文件myid 177
12.2.6 配置环境变量 177
12.2.7 远程复制分发 178
12.2.8 启动Zookeeper集群 179
12.2.9 Zookeeper启动错误及解决方法 179
12.3 在集群上安装Hadoop 180
12.4 在集群上安装HBase 185
3章 构建集群数据仓库 189
13.1 在slave2节点上安装MySQL Server 189
13.2 在slave1节点上安装Hive服务器 191
13.3 将master节点作为Hive客户端 194
13.4 启动Hive 195
4章 Hadoop从完全分布式到HA的安装与使用 197
14.1 Hadoop HA 197
14.1.1 HDFS HA背景 197
14.1.2 HDFS HA架构 197
14.2 安装虚拟机系统 199
14.2.1 在VMware中创建虚拟机 199
14.2.2 安装CentOS 7 206
14.2.3 设置网络静态IP地址 208
14.2.4 克隆3台虚拟机 211
14.3 使用XShell 6登录CentOS虚拟机 212
14.4 修改各节点主机名称并配置SSH免密 215
14.4.1 修改各节点的虚拟机主机名 215
14.4.2 主机名与IP地址映射 215
14.4.3 SSH免密设置 216
14.5 安装JDK 218
14.6 安装并配置Zookeeper 219
14.6.1 安装Zookeeper 220
14.6.2 启动和停止Zookeeper 222
14.7 安装并配置为完全分布式Hadoop集群 223
14.7.1 上传、解压文件并配置环境变量 223
14.7.2 将Hadoop配置为完全分布式集群 224
14.8 部署配置Hadoop HA模式 227
14.8.1 编辑Hadoop HA配置文件 227
14.8.2 分发文件 230
14.8.3 次启动HA 231
14.8.4 常规启动HA 234
14.8.5 Hadoop HA部署完成之后的常规启停顺序 236
14.8.6 在HA集群上测试WordCount程序 236