Hadoop大数据平台技术与应用

Hadoop大数据平台技术与应用 教材名称: Hadoop大数据平台技术与应用
ISBN号: 978-7-89535-424-1 作者: 孙风栋
字数: 582千字 规格:
印制时间: 2025-02-01 出版日期: 2025-02-01
定价: 59.8 元 样章下载: Hadoop大数据平台技术与应用.pdf
购买地址:

1.教材的基本结构
本教材围绕大数据业务处理流程展开,包括Hadoop集群安装与配置、大数据采集与移植、大数据存储、大数据分析等。整个教材的逻辑结构如图所示。
教材逻辑结构图
2.教材的内容组织
本教材按照TOPCARES教育教学的理念,以项目为导引,基于构思、设计、实施、运行等背景,对教学内容组织模式进行优化。全教材由10个章节构成。
第1章:大数据技术的产生与发展、基本特征、关键技术以及应用。
第2章:Hadoop起源与发展、核心组件、生态圈组件、架构及发展趋势。
第3章:Hadoop伪分布式与分布式集群从无到有的整个安装与配置过程。
第4章:分布式文件系统HDFS的基本架构、工作机制、管理与开发。
第5章:MapReduce的工作机制、编程模型与应用开发。
第6章:分布式数据库HBase的工作机制、架构、安装与配置、管理与应用开发。
第7章:数据仓库Hive的架构、工作机制、安装配置、HiveQL语句及应用开发。
第8章:数据迁移工具Sqoop的应用,包括Hadoop与MySQL数据库之间数据的导入与导出。
第9章:数据采集工具Flume的工作机制、安装配置、组件及不同场景中的应用。
第10章:利用Hadoop生态圈组件构建一个网站日志分析项目的解决方案,并完成整个大数据业务处理流程。
读者可以根据需要采用Hadoop分布式集群环境或伪分布式环境,两者对用户是透明的,采用统一的访问URI:hdfs://master:9000,读者可以根据学习环境进行选择,所有案例和项目都可以正常运行。
第1章大数据技术概述1
1.1大数据技术产生的背景1
1.1.1信息化科技发展1
1.1.2云计算技术发展2
1.1.3数据来源的变革2
1.2大数据技术的发展历程3
1.2.1大数据技术的发展史3
1.2.2我国大数据技术的发展4
1.3大数据基本特征5
1.4大数据关键技术6
1.5大数据技术应用8
习题10
第2章Hadoop平台概述12
2.1Hadoop简介12
2.2Hadoop核心模块14
2.3Hadoop生态圈组件15
2.4Hadoop架构16
2.5Hadoop现状与发展趋势18
2.6华为Hadoop大数据平台19
习题21
第3章Hadoop安装与配置23
3.1Hadoop安装准备23
3.1.1VMware安装与配置23
3.1.2Ubuntu安装与配置25
3.1.3网络配置32
3.2Hadoop伪分布式安装与配置39
3.2.1创建hadoop用户40
3.2.2修改主机名与域名映射40
3.2.3SSH免密码登录设置40
3.2.4安装Java环境42
3.2.5伪分布式集群安装配置43
3.3Hadoop分布式集群安装与配置47
习题56
第4章分布式文件系统HDFS58
4.1HDFS概述58
4.1.1HDFS架构58
4.1.2HDFS设计目标60
4.1.3HDFS高可用架构61
4.1.4HDFS架构的优劣性62
4.1.5数据库隐私与信息安全63
4.2HDFS工作机制63
4.2.1HDFS数据存储策略63
4.2.2HDFS数据读取策略64
4.2.3HDFS数据错误与恢复64
4.2.4HDFS数据读写过程65
4.3HDFS Shell管理66
4.3.1HDFS文件操作命令67
4.3.2HDFS 系统管理命令74
4.3.3HDFS Shell操作实例77
4.4HDFS Java开发80
4.4.1HDFS Java程序设计基础80
4.4.2HDFS程序设计流程81
4.4.3常用HDFS Java API83
4.4.4HDFS开发示例90
实践环节设计96
习题99
第5章分布式计算MapReduce102
5.1MapReduce概述102
5.1.1MapReduce简介102
5.1.2MapReduce计算模型103
5.1.3MapReduce编程模型104
5.2MapReduce架构105
5.2.1MapReduce V1架构105
5.2.2MapReduce V2架构108
5.3MapReduce 编程组件111
5.3.1MapReduce编程流程111
5.3.2InputFormat112
5.3.3InputSplit113
5.3.4RecordReader114
5.3.5Mapper114
5.3.6Shuffle115
5.3.7Reducer119
5.3.8OutputFormat119
5.3.9序列化与反序列化120
5.4WordCount程序设计实例122
5.4.1准备输入文件123
5.4.2创建Maven工程123
5.4.3配置Maven工程123
5.4.4程序设计124
5.4.5工程打包、部署与运行129
5.4.6定制WordCount程序设计129
5.5MapReduce开发典型案例133
5.5.1数据去重134
5.5.2数据排序136
5.5.3计算平均值140
5.6网站浏览量统计分析143
实践环节设计146
习题149
第6章分布式数据库HBase152
6.1HBase概述152
6.1.1HBase简介152
6.1.2HBase特性153
6.1.3HBase适用场景153
6.2HBase数据模型154
6.2.1HBase基本概念154
6.2.2概念视图155
6.2.3物理视图156
6.3HBase体系结构157
6.4HBase安装与配置161
6.4.1HBase运行模式161
6.4.2HBase安装准备161
6.4.3HBase伪分布式安装与配置163
6.4.4HBase分布式集群安装与配置166
6.5HBase Shell169
6.5.1HBase Shell简介169
6.5.2General命令组170
6.5.3DDL命令组171
6.5.4DML命令组174
6.5.5查询过滤器178
6.6HBase程序设计183
6.6.1HBase Java API简介183
6.6.2Hbase表管理程序设计191
6.6.3HBase数据操作程序设计199
6.6.4HBase Filter API207
6.7HBase与MapReduce融合211
6.7.1HBase与MapReduce融合概述211
6.7.2HBase MapReduceJava API212
6.7.3HBase MapReduce程序设计213
6.8HBase学生成绩分析218
6.8.1任务描述218
6.8.2导入原始数据到HBase218
6.8.3统计学生平均成绩220
实践环节设计222
习题226
第7章数据仓库Hive229
7.1Hive基础229
7.1.1Hive简介229
7.1.2Hive系统架构230
7.1.3Hive工作原理232
7.1.4Hive数据存储模型233
7.1.5Hive数据类型233
7.1.6Hive数据存储格式234
7.2Hive安装与配置235
7.2.1安装MySQL235
7.2.2Hive安装与配置237
7.3Beeline240
7.3.1Beeline简介240
7.3.2Beeline基本操作240
7.4Hive DDL操作243
7.4.1Hive 数据库管理243
7.4.2Hive表管理245
7.4.3视图管理253
7.5Hive DML操作253
7.6Hive数据查询258
7.6.1Hive SELECT基本语法258
7.6.2无条件查询259
7.6.3有条件查询260
7.6.4查询统计262
7.6.5分组查询263
7.6.6子查询264
7.6.7连接查询265
7.6.8排序267
7.6.9合并操作268
7.6.10复合类型数据查询268
7.7Hive内置函数269
7.7.1数学函数269
7.7.2集合函数272
7.7.3类型转换函数272
7.7.4日期函数273
7.7.5条件函数274
7.7.6字符串函数275
7.7.7内置聚合函数278
7.7.8内置表生成函数279
7.7.9窗口函数280
7.7.10其他函数283
7.7.11词频统计实例284
7.8Hive高级应用285
7.8.1用户自定义函数285
7.8.2Hive与HBase整合287
7.9Hive程序设计288
实践环节设计290
习题295
第8章数据迁移工具Sqoop297
8.1Sqoop概述297
8.2Sqoop安装与配置298
8.3Sqoop常用命令300
8.4Sqoop数据导入302
8.4.1Sqoop命令参数303
8.4.2数据从MySQL导入HDFS304
8.4.3数据从MySQL导入Hive307
8.4.4数据从MySQL导入HBase309
8.5Sqoop数据导出309
8.5.1Sqoop export命令参数310
8.5.2从HDFS导出数据到MySQL310
8.5.3从Hive导出数据到MySQL312
8.5.4中文乱码问题313
习题316
第9章数据采集工具Flume319
9.1Flume概述319
9.1.1Flume简介319
9.1.2Flume架构320
9.2Flume安装与配置322
9.3Flume组件325
9.3.1Source组件325
9.3.2Channel组件329
9.3.3Sink组件332
9.3.4Interceptor组件336
9.3.5Selector组件340
9.3.6Sink Processor341
9.4Flume数据采集案例与实施343
9.4.1实时采集本地文件到HDFS343
9.4.2多源与多目的地数据采集345
习题351
第10章基于网站日志分析的大数据实战353
10.1需求分析353
10.1.1网站日志分析的必要性353
10.1.2网站日志数据说明354
10.1.3网站日志分析KPI指标355
10.2方案设计355
10.3数据采集356
10.4数据预处理357
10.5数据分析362
10.6数据分析结果导出及可视化364
习题369
附录Eclipse开发环境安装与配置370
 
(1)紧跟行业前沿发展,体现新技术、新应用
教材采用Hadoop架构相关技术的最新版本、最新产品,包括Hadoop 3.1.2 + HBase 2.2.6 + Hive 3.1.2 + Sqoop 1.4.7 + Flume 1.9.0,紧跟大数据行业的前沿发展。
(2)落实产教融合,引入新案例、新项目
教材中的案例、项目来源于企业的真实生产环节,实现了产教融合。学生在案例分析、项目实践过程中,实现了发现问题、分析问题、解决问题以及创新实践能力的一体化提升。
(3)突出能力培养主线,优化内容组织新模式
教材以案例为引导,以项目为载体。教材以实践为主、理论为辅,案例丰富,实用性强,引导读者步步深入,掌握Hadoop生态圈组件的应用。
(4)适应柔性化教学变革,构建立体化教学资源新特色
教材反映了最新的混合式教育教学改革的思想,以学生为中心,提供丰富的教学资源,包括课程标准、教学日历、课件、微视频、教学案例、课程项目(三级项目、四级项目、五级项目)、题库、试卷库、课堂实践、预习测试、课堂测试、课后练习等,保证了课前预习、课中授课与实践、课后巩固与扩展相融合,线上教学与线下教学相融合。
(5)思政教育元素融于教学
在进行新技术、新产品介绍过程中,将国产数据库产品、技术引入教学环节,让学生领我国大数据技术的发展和应用,以及国有化大数据产品的必要性,增强学生民族自豪感和技术有国界的意识,为民族品牌的发展而努力。
(6)校企联合共建应用型教材
教材是面向大数据行业企业实际、大数据产业发展需要的应用型教材,因此,从教材知识、能力、素质培养的一体化设计,到教材的结构设计、技术选择、案例设计、项目设计及教材撰写,整个过程都与企业紧密合作。大连医谷科技有限公司副总裁周彦良工程师、技术总监余松工程师直接参与了教材的设计与编写,保证了教材中技术的先进性与前沿性、案例与项目的真实性与适用性。