×
暂无评论
图文详情
  • ISBN:9787115503534
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:其他
  • 页数:287
  • 出版时间:2019-03-01
  • 条形码:9787115503534 ; 978-7-115-50353-4

本书特色

本书采用理论与实践相结合的方式,全面介绍了Hadoop大数据技术。主要内容包括初识Hadoop大数据技术、Hadoop环境配置,分布式文件系统HDFS、资源调度框架YARN、分布式计算框架MapReduce、大数据数据仓库Hive、分布式数据库HBase、查询大型半结构化数据集的语言Pig、分布式日志采集工具Flume、分布式数据库与传统数据库数据相互转换工具Sqoop。

内容简介

本书采用理论与实践相结合的方式,全面介绍了Hadoop大数据技术。主要内容包括初识Hadoop大数据技术、Hadoop环境配置,分布式文件系统HDFS、资源调度框架YARN、分布式计算框架MapReduce、大数据数据仓库Hive、分布式数据库HBase、查询大型半结构化数据集的语言Pig、分布式日志采集工具Flume、分布式数据库与传统数据库数据相互转换工具Sqoop。

目录

第1章 初识Hadoop大数据技术 1

1.1 大数据技术概述 1

1.1.1 大数据产生的背景 1

1.1.2 大数据的定义 2

1.1.3 大数据技术的发展 2

1.2 Google的“三驾马车” 3

1.2.1 GFS的思想 3

1.2.2 MapReduce的思想 4

1.2.3 BigTable的思想 6

1.3 Hadoop概述 8

1.3.1 Hadoop对Google公司三篇论文思想的实现 8

1.3.2 Hadoop的发展历史 9

1.3.3 Hadoop版本的演变 11

1.3.4 Hadoop的发行版本 12

1.3.5 Hadoop的特点 12

1.4 Hadoop生态圈 12

1.5 Hadoop的典型应用场景与应用架构 13

1.5.1 Hadoop的典型应用场景 13

1.5.2 Hadoop的典型应用架构 14

习题 15

第2章 Hadoop环境设置 16

2.1 安装前准备 16

2.1.1 安装虚拟机 17

2.1.2 安装Ubuntu操作系统 20

2.1.3 关闭防火墙 22

2.1.4 SSH安装 22

2.1.5 安装Xshell及Xftp 22

2.1.6 安装JDK 24

2.1.7 下载Hadoop并解压 25

2.1.8 克隆主机 27

2.2 Hadoop的安装 28

2.2.1 安装单机模式 28

2.2.2 安装伪分布式模式 29

2.2.3 安装完全分布式模式 35

习题 41

实验 搭建Hadoop伪分布式模式环境 42

第3章 HDFS 44

3.1 HDFS简介 44

3.2 HDFS的组成与架构 45

3.2.1 NameNode 45

3.2.2 DataNode 46

3.2.3 SecondaryNameNode 46

3.3 HDFS的工作机制 47

3.3.1 机架感知与副本冗余存储策略 47

3.3.2 文件读取 49

3.3.3 文件写入 50

3.3.4 数据容错 52

3.4 HDFS操作 53

3.4.1 通过Web界面进行HDFS操作 53

3.4.2 通过HDFS Shell进行HDFS操作 54

3.4.3 通过HDFS API进行HDFS操作 60

3.5 HDFS的高级功能 68

3.5.1 安全模式 68

3.5.2 回收站 69

3.5.3 快照 70

3.5.4 配额 71

3.5.5 高可用性 71

3.5.6 联邦 72

习题 74

实验1 通过Shell命令访问HDFS 74

实验2 熟悉基于IDEA Maven的Java开发环境 77

实验3 通过API访问HDFS 86

第4章 YARN 90

4.1 YARN产生的背景 90

4.2 初识YARN 92

4.3 YARN的架构 93

4.3.1 YARN架构概述 93

4.3.2 YARN中应用运行的机制 94

4.3.3 YARN中任务进度的监控 94

4.3.4 MapReduce 1与YARN的组成对比 95

4.4 YARN的调度器 95

4.4.1 先进先出调度器 95

4.4.2 容器调度器 96

4.4.3 公平调度器 97

4.4.4 三种调度器的比较 98

习题 98

第5章 MapReduce 99

5.1 MapReduce概述 99

5.1.1 MapReduce是什么 99

5.1.2 MapReduce的特点 99

5.1.3 MapReduce不擅长的场景 100

5.2 MapReduce编程模型 100

5.2.1 MapReduce编程模型概述 100

5.2.2 MapReduce编程实例 101

5.3 MapReduce编程进阶 112

5.3.1 MapReduce的输入格式 112

5.3.2 MapReduce的输出格式 114

5.3.3 分区 115

5.3.4 合并 118

5.4 MapReduce的工作机制 119

5.4.1 MapReduce作业的运行机制 119

5.4.2 进度和状态的更新 120

5.4.3 Shuffle 121

5.5 MapReduce编程案例 122

5.5.1 排序 122

5.5.2 去重 126

5.5.3 多表查询 127

习题 129

实验1 分析和编写WordCount程序 130

实验2 MapReduce序列化、分区实验 131

实验3 使用MapReduce求出各年销售笔数、各年销售总额 134

实验4 使用MapReduce统计用户在搜狗上的搜索数据 136

第6章 HBase、Hive、Pig 139

6.1 HBase 139

6.1.1 行式存储与列式存储 139

6.1.2 HBase简介 140

6.1.3 HBase的数据模型 141

6.1.4 HBase的物理模型 143

6.1.5 HBase的系统架构 144

6.1.6 HBase的安装 147

6.1.7 访问HBase 152

6.2 Hive 157

6.2.1 安装Hive 157

6.2.2 Hive的架构与工作原理 160

6.2.3 Hive的数据类型与存储格式 163

6.2.4 Hive的数据模型 167

6.2.5 查询数据 169

6.2.6 用户定义函数 170

6.3 Pig 171

6.3.1 Pig概述 171

6.3.2 安装Pig 172

6.3.3 Pig Latin编程语言 172

6.3.4 Pig代码实例 177

6.3.5 用户自定义函数 179

习题 181

实验1 HBase实验——安装和配置(可选) 181

实验2 HBase实验——通过HBase Shell访问HBase(可选) 185

实验3 HBase实验——通过Java API访问HBase 187

实验4 HBase实验——通过Java API开发基于HBase的MapReduce程序 189

实验5 Hive实验——Metastore采用Local模式(MySQL数据库)搭建Hive环境(可选) 191

实验6 Hive实验——Hive常用操作 193

实验7 Pig实验——安装和使用Pig(可选) 194

实验8 Pig实验——使用Pig Latin操作员工表和部门表 195

第7章 Flume 198

7.1 Flume产生的背景 198

7.2 Flume简介 198

7.3 Flume的安装 199

7.4 Flume的架构 200

7.5 Flume的应用 201

7.5.1 Flume的组件类型及其配置项 201

7.5.2 Flume的配置和运行方法 206

7.5.3 Flume配置示例 207

7.6 Flume的工作方式 209

习题 210

实验1 Flume的配置与使用1——Avro Source Memory Channel Logger Sink 211

实验2 Flume的配置与使用2——Syslogtcp Source Memory Channel HDFS Sink 212

实验3 Flume的配置与使用3——Exec Source Memory Channel Logger Sink 213

第8章 Sqoop 214

8.1 Sqoop背景简介 214

8.2 Sqoop的基本原理 215

8.3 Sqoop的安装与部署 216

8.3.1 下载与安装 216

8.3.2 配置Sqoop 217

8.4 Sqoop应用 219

8.4.1 列出MySQL数据库的基本信息 219

8.4.2 MySQL和HDFS数据互导 219

8.4.3 MySQL和Hive数据互导 220

习题 221

实验 Sqoop常用功能的使用 222

第9章 ZooKeeper 227

9.1 ZooKeeper简介 227

9.2 ZooKeeper的安装 228

9.2.1 单机模式 228

9.2.2 集群模式 229

9.3 ZooKeeper的基本原理 231

9.3.1 Paxos算法 231

9.3.2 Zab算法 232

9.3.3 ZooKeeper的架构 232

9.3.4 ZooKeeper的数据模型 233

9.4 ZooKeeper的简单操作 235

9.4.1 通过ZooKeeper Shell命令操作ZooKeeper 235

9.4.2 通过ZooInspector工具操作ZooKeeper 238

9.4.3 通过Java API操作ZooKeeper 238

9.5 ZooKeeper的特性 239

9.5.1 会话 239

9.5.2 临时节点 240

9.5.3 顺序节点 240

9.5.4 事务操作 241

9.5.5 版本号 241

9.5.6 监视 242

9.6 ZooKeeper的应用场景 243

9.6.1 Master选举 244

9.6.2 分布式锁 245

习题 246

实验 ZooKeeper的3种访问方式 246

第10章 Ambari 249

10.1 Ambari简介 249

10.1.1 背景 249

10.1.2 Ambari的主要功能 250

10.2 Ambari的安装 250

10.2.1 安装前准备 250

10.2.2 安装Ambari 254

10.3 利用Ambari管理Hadoop集群 257

10.3.1 安装与配置HDP集群 258

10.3.2 节点的扩展 264

10.3.3 启用HA 267

10.4 Ambari的架构和工作原理 271

10.4.1 Ambari的总体架构 271

10.4.2 Ambari Agent 272

10.4.3 Ambari Server 272

习题 273

第11章 Mahout 274

11.1 Mahout简介 274

11.1.1 什么是Mahout 274

11.1.2 Mahout能做什么 275

11.2 Taste简介 276

11.2.1 DataModel 276

11.2.2 Similarity 277

11.2.3 UserNeighborhood 277

11.2.4 Recommender 277

11.2.5 RecommenderEvaluator 277

11.2.6 RecommenderIRStatsEvaluator 278

11.3 使用Taste构建推荐系统 278

11.3.1 创建Maven项目 278

11.3.2 导入Mahout依赖 278

11.3.3 获取电影评分数据 278

11.3.4 编写基于用户的推荐 279

11.3.5 编写基于物品的推荐 280

11.3.6 评价推荐模型 281

11.3.7 获取推荐的查准率和查全率 281

习题 282

实验 基于Mahout的电影推荐系统 283

综合实验 搜狗日志查询分析(MapReduce Hive综合实验) 284

参考文献 287

展开全部

作者简介

杨治明,教授,现任重庆科技学院数理与大数据学院院长,数据科学与大数据技术专业负责人。现任重庆市教委教育信息化专家委员会成员、重庆市人工智能技术创新战略联盟专家委员会成员。获得国家级教学成果奖1项、重庆市高等教育教学成果奖二等奖、三等奖各1项。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航