注册 登录 进入教材巡展
#
  • #

出版时间:2025-11

最新印次日期:2025-11

出版社:中国铁道出版社

以下为《Hadoop+Spark大数据技术与应用》的配套数字资源,这些资源在您购买图书后将免费附送给您:
试读
  • 中国铁道出版社
  • 9787113327439
  • 1版
  • 572119
  • 16开
  • 2025-11
  • 工学
  • 计算机类
  • 计算机类
  • 本科
作者简介
丁琛,硕士,工程师讲师,南京理工大学紫金学院数据科学与大数据技术专业负责人。有十多年企业大数据项目研发和管理经验,曾在国内知名企业长期担任大数据研发高级项目经理和架构师等职。拥有多项专利,发表论文多篇。主持教育部产学结合协同育人项目1项、作为主要成员参与江苏省哲学社会科学研究项目1项。
查看全部
内容简介
Hadoop和Spark是当前比较流行的大数据框架。本书以应用为主线,系统地介绍了Hadoop和Spark的基础知识,全书包含Hadoop的安装、HDFS技术、YARN技术、MapReduce技术、Hive技术、HBase技术、ZooKeeper技术、Spark的安装与运行、Spark编程、SparkSQL、SparkMLlib和案例实践等内容,Hadoop使用Java语言进行编程,Spark使用Python语言进行编程,较好地考虑到了当前高校学生程序语言的基础。
全书理论和实践相结合,同时介绍了运维方面的基础知识,充分考虑了应用型本科人才培养的定位。
本书适合作为高等院校计算机科学与技术、软件工程、数据科学与大数据技术等专业Hadoop和Spark技术的入门级教材,也可以供相关技术人员参考。
目录
目录
第1章 Hadoop+Spark大数据技术
    基础知识1
1.1 什么是大数据2
1.1.1 大数据的概念2
1.1.2 大数据的特点2
1.1.3 Hadoop、Spark与大数据3
1.1.4 大数据技术的应用4
1.2 Hadoop概述5
1.2.1 Hadoop简介5
1.2.2 Hadoop的发展历史5
1.2.3 Hadoop核心组件6
1.2.4 Hadoop生态圈介绍7
1.3 Spark概述8
1.3.1 Spark简介8
1.3.2 Spark的发展历史8
1.3.3 Spark体系架构9
1.3.4 Spark生态圈介绍10
1.3.5 Spark与Hadoop的关系11
小结12
思考与练习12
第2章 Hadoop的安装13
2.1 安装Hadoop前的准备14
2.1.1 VMware虚拟机的安装14
2.1.2 安装Linux操作系统14
2.1.3 配置网络20
2.1.4 节点之间的免密码通信23
2.1.5 远程连接虚拟机23
2.1.6 安装Java环境26
2.2 Hadoop的安装和测试28
2.2.1 Hadoop安装模式简介28
2.2.2 Hadoop的安装28
2.2.3 Hadoop配置简介29
2.2.4 Hadoop的启动29
2.2.5 集群验证29
2.3 案例:Hadoop的安装30
2.3.1 Hadoop的伪分布安装30
2.3.2 Hadoop的完全分布安装34
小结40
思考与练习40
第3章 分布式文件系统——
    HDFS技术41
3.1 HDFS的特点42
3.2 HDFS的架构43
3.2.1 HDFS服务简介43
3.2.2 HDFS数据块46
3.2.3 HDFS的元数据46
3.2.4 从HDFS1.0到HDFS2.048
3.3 HDFS的文件操作48
3.3.1 HDFS新建文件流程48
3.3.2 HDFS读写文件流程49
3.4 案例:HDFS的操作51
3.4.1 HDFS的Shell操作51
3.4.2 HDFS的Web监控界面59
3.4.3 HDFS的JavaAPI操作64
小结67
思考与练习68
第4章 分布式资源调度系统——
    YARN技术69
4.1 YARN概述70
4.1.1 MapReduce概述70
4.1.2 YARN产生的背景72
4.2 YARN的基本框架73
4.2.1 YARN的总体框架及工作
   流程73
4.2.2 YARN的资源表示模型
   Container74
4.3 YARN的资源调度器75
4.3.1 FIFOScheduler75
4.3.2 CapacityScheduler76
4.3.3 FairScheduler76
4.4 案例:使用YARN框架运行
   任务——计算圆周率77
4.4.1 使用YARN框架执行计算
   圆周率的任务77
4.4.2 使用YARN的Web页面监控
   圆周率任务78
小结83
思考与练习83
第5章 分布式计算框架——
    MapReduce技术85
5.1 MapReduce编程思想86
5.1.1 MapReduce核心思想86
5.1.2 MapReduce的编程模型87
5.2 MapReduce框架的执行流程89
5.2.1 分片并格式化原始数据89
5.2.2 MapReduce的分阶段——
   Map过程92
5.2.3 MapReduce的合阶段——
   Reduce过程93
5.3 MapReduce作业的运行95
5.3.1 MapReduce作业的提交和
   初始化95
5.3.2 MapReduce作业的分配和
   任务执行96
5.3.3 MapReduce作业的完成96
5.4 案例:MapReduce编程实例
   WordCount97
5.4.1 使用IntelliJIDEA搭建
   MapReduce编程环境97
5.4.2 使用MapReduce编写
   WordCount代码97
5.4.3 在IntelliJIDEA中打包并
   提交MapReduce程序99
5.4.4 监控MapReduce程序101
小结102
思考与练习102
第6章 分布式数据仓库——
    Hive技术104
6.1 Hive概述105
6.1.1 Hive的设计目的105
6.1.2 Hive的架构组成106
6.1.3 Hive的数据模型和文件
   格式107
6.2 Hive的安装与配置109
6.2.1 Hive的安装109
6.2.2 Hive的配置112
6.3 HiveSQL——HQL113
6.3.1 HQL简介113
6.3.2 Hive的数据类型115
6.3.3 Hive的函数116
6.4 案例:Hive的操作122
6.4.1 使用Shell操作Hive123
6.4.2 使用Java操作Hive124
小结127
思考与练习127
第7章 分布式数据库——
    HBase技术129
7.1 HBase简介130
7.1.1 HBase的架构130
7.1.2 HBase的逻辑视图131
7.1.3 HBase的物理视图133
7.1.4 HBase的表结构设计133
7.2 HBase的安装与配置134
7.2.1 HBase的运行模式134
7.2.2 HBase伪分布安装134
7.2.3 HBase的配置136
7.3 HBase读写数据的原理137
7.3.1 HBase的写数据原理137
7.3.2 HBase的读数据原理139
7.3.3 HBase的Compaction和
   Split140
7.4 HBase的操作141
7.4.1 HBase的Shell命令141
7.4.2 HBase的Java操作142
7.5 案例:成绩数据存储和查询146
7.5.1 HBase的表结构设计146
7.5.2 HBaseShell操作成绩数据
   存储和查询147
7.5.3 JavaAPI操作成绩数据存储和
   查询148
小结151
思考与练习151
第8章 分布式协同服务——
    ZooKeeper技术152
8.1 ZooKeeper简介153
8.1.1 ZooKeeper概述153
8.1.2 ZooKeeper集群简介154
8.2 ZooKeeper的安装与配置156
8.2.1 ZooKeeper的安装156
8.2.2 ZooKeeper的配置158
8.3 ZooKeeper的原理158
8.3.1 ZooKeeper数据模型158
8.3.2 ZooKeeper服务的
   操作161
8.3.3 ZooKeeper访问控制
   列表ACL163
8.3.4 Zookeeper的执行逻辑164
8.3.5 ZooKeeper实例状态164
8.4 案例:使用Java操作
   ZooKeeper165
小结169
思考与练习169
第9章 Spark的安装与运行171
9.1 Spark简介172
9.1.1 Spark对MapReduce的
   优化与改进172
9.1.2 Spark基础概念174
9.1.3 Spark基本组成与架构174
9.1.4 Spark编程模型176
9.1.5 Spark集群架构177
9.2 Spark的安装与配置178
9.2.1 Spark的安装178
9.2.2 Spark的配置181
9.3 PySpark的基本操作183
9.3.1 PySpark的命令及参数183
9.3.2 启动PySpark183
9.3.3 使用Spark-submit
   运行程序184
9.4 案例:使用PySpark计算圆周率
  及使用SparkWeb页面监控
  任务185
9.4.1 使用PySpark计算
   圆周率185
9.4.2 使用SparkWeb页面
   监控任务185
小结186
思考与练习187
第10章 使用PySpark进行
     编程188
10.1 PySpark开发环境的搭建189
10.1.1 使用PyCharm搭建
    Spark环境189
10.1.2 使用Anaconda搭建
    Spark环境192
10.2 SparkRDD194
10.2.1 RDD简介194
10.2.2 RDD的创建197
10.2.3 RDD的操作198
10.2.4 RDD的持久化201
10.2.5 RDDPartition分区202
10.2.6 键值对RDD204
10.3 RDD与其他数据的交互204
10.3.1 使用RDD对文件数据
    进行读写204
10.3.2 使用RDD读取HDFS
    数据207
10.3.3 使用RDD读取与写入
    HBase数据207
10.4 案例:PySpark编写代码——
   WordCount211
小结215
思考与练习215
第11章 大数据分析工具——
     SparkSQL217
11.1 SparkSQL218
11.1.1 SparkSQL简介218
11.1.2 SparkSQL架构219
11.1.3 基本SQL运行原理220
11.1.4 SparkSQL运行流程221
11.2 SparkSQLDataFrame225
11.2.1 DataFrame概述225
11.2.2 DataFrame的常用操作226
11.2.3 DataFrame的保存231
11.2.4 从RDD转换到
    DataFrame232
11.3 使用SparkSQL读写
  数据库234
11.4 案例:使用SparkSQL分析
  世界杯数据238
小结248
思考与练习248
第12章 大数据分析和挖掘工具——
     SparkMLlib249
12.1 SparkMLlib的运行和
   介绍250
12.1.1 SparkMLlib的运行250
12.1.2 SparkMLlib的介绍251
12.2 使用SparkMLlib进行数据
  分析和数据挖掘254
12.2.1 SparkMLlib基本数据
    类型254
12.2.2 SparkMLlib支持的算法
    简介261
12.3 案例:使用SparkMLlib预测
  波士顿房价270
小结279
思考与练习279
第13章 Hadoop和Spark大数据
    技术应用案例实践280
13.1 使用Hadoop对聊天数据进行
   分析280
13.1.1 需求分析280
13.1.2 准备工作281
13.1.3 加载数据286
13.1.4 ETL数据清洗转换287
13.1.5 指标统计288
13.1.6 可视化展示290
13.2 使用PySpark实现信用卡交易
  数据异常检测292
13.2.1 需求分析292
13.2.2 代码逻辑293
小结295
参考文献296