大数据技术及应用——批处理、流处理与批流一体化的实践
定价:¥59.00
作者: 刘晓勇等
出版时间:2026-05
出版社:电子工业出版社
- 电子工业出版社
- 9787121527753
- 1-1
- 16开
- 2026-05
- 532
- 工学
- 计算机类
- 计算机科学与技术
- 本科 研究生及以上
内容简介
本书以“技术体系化、架构前沿化、学习项目化”为特色,系统构建了涵盖批处理、流处理与数据湖技术的大数据知识图谱。全书以“批流一体”为核心架构思想,不仅详解Hadoop、Spark、Flink、Kafka及Iceberg等主流框架的原理与应用,更通过贯穿始终的项目案例,引导读者从零开始构建完整的大数据平台,强化工程实践与系统思维能力。本书内容分为3篇共12章,涵盖了Hadoop生态核心、Spark批处理与Hive数据仓库、Flink流计算、Kafka消息队列以及Iceberg数据湖表格式的管理与优化等内容,并通过一个完整的综合性项目实现从数据采集、多模式处理、湖仓一体化存储到可视化分析的全流程,体现各技术在真实场景中的协同与整合。本书主要面向高等院校计算机类相关专业的本科生,同时也适用于希望系统入门大数据开发、掌握批流一体架构的工程师以及对大数据技术感兴趣的读者。书中配有丰富的实验任务与项目代码,便于开展课内实践与延伸学习。
目录
第1篇 大数据基础
第1章 大数据概论 / 1
1.1 什么是大数据 / 1
1.1.1 大数据的定义 / 1
1.1.2 大数据的发展背景 / 2
1.1.3 大数据的5V特征 / 2
1.1.4 大数据与传统数据的区别 / 3
1.1.5 大数据相关岗位与技能方向 / 3
1.2 大数据典型应用场景 / 4
1.2.1 互联网与电商行业:数据驱动的智能商业 / 4
1.2.2 金融与保险行业:风险控制与精准营销 / 4
1.2.3 医疗与健康行业:精准医疗与诊疗辅助 / 5
1.2.4 智能制造与物联网:从感知到智能决策 / 5
1.2.5 城市管理与交通出行:构建智慧城市 / 6
1.3 大数据系统架构概览 / 7
1.3.1 数据采集层 / 7
1.3.2 数据存储层 / 8
1.3.3 数据计算层 / 8
1.3.4 数据分析与展示层 / 9
1.3.5 系统架构整合示意 / 9
1.4 大数据关键技术组件 / 9
1.4.1 数据存储组件 / 10
1.4.2 数据计算组件 / 10
1.4.3 数据采集与传输组件 / 10
1.4.4 数据查询与分析组件 / 10
1.4.5 数据管理与调度组件 / 11
1.5 大数据发展趋势与挑战 / 11
1.5.1 批流一体化趋势 / 11
1.5.2 数据湖与湖仓一体化 / 12
1.5.3 云原生与容器化大数据平台 / 12
1.5.4 数据治理与隐私保护挑战 / 12
本章小结 / 13
课后习题 / 13
第2章 Hadoop生态系统 / 15
2.1 Hadoop架构概述 / 15
2.1.1 Hadoop的由来与设计目标 / 15
2.1.2 核心组成:HDFS+MapReduce+YARN / 16
2.1.3 Hadoop的典型特点 / 17
2.1.4 Hadoop在现代平台中的地位 / 17
2.2 HDFS分布式文件系统 / 18
2.2.1 文件切分与副本机制 / 19
2.2.2 NameNode与DataNode工作机制 / 20
2.2.3 读写流程详解 / 21
2.2.4 容错与高可用机制 / 22
2.2.5 HDFS常用命令与配置 / 23
2.3 MapReduce计算模型 / 24
2.3.1 MapReduce的计算模型概述 / 24
2.3.2 Map阶段与Reduce阶段工作机制 / 25
2.3.3 数据分区与Shuffle流程 / 26
2.3.4 MapReduce作业的执行流程 / 28
2.3.5 示例任务:词频统计程序解析 / 29
2.4 YARN资源管理框架 / 30
2.4.1 为什么需要YARN / 30
2.4.2 YARN的核心架构组成 / 30
2.4.3 应用管理器生命周期 / 31
2.4.4 作业提交流程与组件协作 / 31
2.4.5 YARN与其他资源管理框架对比 / 32
本章小结 / 33
课后习题 / 33
第3章 基于Spark的批处理 / 34
3.1 Spark简介与架构 / 34
3.1.1 Spark项目背景与发展历史 / 34
3.1.2 Spark的核心组件概览 / 35
3.1.3 Spark执行架构详解 / 35
3.1.4 Spark与YARN、Kubernetes的部署对比 / 37
3.2 Spark Core编程基础 / 38
3.2.1 RDD概念与特性 / 38
3.2.2 RDD的创建方式与依赖关系 / 39
3.2.3 常用转换操作详解 / 40
3.2.4 RDD数据分区与并行度控制 / 42
3.2.5 RDD编程案例:词频统计与日志分析 / 42
3.3 Spark SQL数据处理 / 43
3.3.1 Spark SQL的定位与优势 / 43
3.3.2 DataFrame与Dataset API / 43
3.3.3 Catalyst优化器与Tungsten引擎 / 44
3.3.4 SQL与DataFrame示例对照 / 45
3.3.5 Spark SQL与外部系统集成 / 45
3.4 Spark作业调度与性能优化 / 46
3.4.1 Spark作业DAG构建与Stage划分机制 / 46
3.4.2 Shuffle操作与性能瓶颈 / 46
3.4.3 广播变量与缓存机制 / 47
3.4.4 参数调优与资源配置建议 / 47
3.4.5 Spark UI作业监控与诊断技巧 / 47
3.5 Dataset类型系统与函数式编程支持 / 47
3.5.1 Dataset与JavaBean的映射关系 / 48
3.5.2 Encoder与类型推断机制 / 48
3.5.3 Dataset常用函数式操作 / 48
3.5.4 Dataset的编译期安全性与优化特征 / 49
3.6 Spark作业调优实战案例 / 49
3.6.1 多阶段作业拆分与重构 / 49
3.6.2 参数调优对比实验 / 49
3.6.3 数据倾斜定位与优化案例 / 50
3.6.4 Spark UI与指标监控应用 / 50
本章小结 / 51
课后习题 / 51
第4章 基于Hive的数据分析 / 53
4.1 HBase概述与架构 / 53
4.1.1 Hive简介 / 53
4.1.2 Hive架构组成 / 55
4.1.3 Hive的运行原理 / 56
4.2 Hive数据模型与类型系统 / 58
4.2.1 表的类型 / 58
4.2.2 数据类型 / 60
4.2.3 分区与分桶机制 / 61
4.3 HiveQL编程实践 / 62
4.3.1 DDL操作 / 63
4.3.2 DML操作 / 64
4.3.3 高级SQL操作 / 65
4.4 Hive UDF与扩展功能 / 65
4.4.1 内置函数 / 67
4.4.2 自定义函数 / 68
4.4.3 Hive脚本与CLI / 69
4.5 Hive的执行引擎与性能优化 / 69
4.5.1 MapReduce、Tez与Spark引擎对比 / 70
4.5.2 查询优化机制 / 71
4.5.3 文件格式与压缩机制 / 73
4.6 Hive与数据仓库实践 / 74
4.6.1 数据仓库分层模型 / 74
4.6.2 Hive在数据仓库建设中的角色 / 74
4.6.3 与其他组件集成 / 75
4.7 Hive常见问题与调试技巧 / 76
4.7.1 常见错误与排查思路 / 76
4.7.2 日志分析技巧 / 77
4.7.3 优化SQL的流程方法 / 78
4.8 实践案例:用户行为数据分析 / 79
4.8.1 场景设定 / 79
4.8.2 数据建模 / 79
4.8.3 SQL实现示例 / 80
4.8.4 可视化与实验拓展建议 / 80
本章小结 / 81
课后习题 / 81
第5章 HBase基础与应用 / 83
5.1 HBase概述与架构 / 83
5.1.1 HBase简介 / 84
5.1.2 HBase架构组件 / 85
5.1.3 HBase与Hadoop的集成 / 85
5.2 HBase数据模型
第1章 大数据概论 / 1
1.1 什么是大数据 / 1
1.1.1 大数据的定义 / 1
1.1.2 大数据的发展背景 / 2
1.1.3 大数据的5V特征 / 2
1.1.4 大数据与传统数据的区别 / 3
1.1.5 大数据相关岗位与技能方向 / 3
1.2 大数据典型应用场景 / 4
1.2.1 互联网与电商行业:数据驱动的智能商业 / 4
1.2.2 金融与保险行业:风险控制与精准营销 / 4
1.2.3 医疗与健康行业:精准医疗与诊疗辅助 / 5
1.2.4 智能制造与物联网:从感知到智能决策 / 5
1.2.5 城市管理与交通出行:构建智慧城市 / 6
1.3 大数据系统架构概览 / 7
1.3.1 数据采集层 / 7
1.3.2 数据存储层 / 8
1.3.3 数据计算层 / 8
1.3.4 数据分析与展示层 / 9
1.3.5 系统架构整合示意 / 9
1.4 大数据关键技术组件 / 9
1.4.1 数据存储组件 / 10
1.4.2 数据计算组件 / 10
1.4.3 数据采集与传输组件 / 10
1.4.4 数据查询与分析组件 / 10
1.4.5 数据管理与调度组件 / 11
1.5 大数据发展趋势与挑战 / 11
1.5.1 批流一体化趋势 / 11
1.5.2 数据湖与湖仓一体化 / 12
1.5.3 云原生与容器化大数据平台 / 12
1.5.4 数据治理与隐私保护挑战 / 12
本章小结 / 13
课后习题 / 13
第2章 Hadoop生态系统 / 15
2.1 Hadoop架构概述 / 15
2.1.1 Hadoop的由来与设计目标 / 15
2.1.2 核心组成:HDFS+MapReduce+YARN / 16
2.1.3 Hadoop的典型特点 / 17
2.1.4 Hadoop在现代平台中的地位 / 17
2.2 HDFS分布式文件系统 / 18
2.2.1 文件切分与副本机制 / 19
2.2.2 NameNode与DataNode工作机制 / 20
2.2.3 读写流程详解 / 21
2.2.4 容错与高可用机制 / 22
2.2.5 HDFS常用命令与配置 / 23
2.3 MapReduce计算模型 / 24
2.3.1 MapReduce的计算模型概述 / 24
2.3.2 Map阶段与Reduce阶段工作机制 / 25
2.3.3 数据分区与Shuffle流程 / 26
2.3.4 MapReduce作业的执行流程 / 28
2.3.5 示例任务:词频统计程序解析 / 29
2.4 YARN资源管理框架 / 30
2.4.1 为什么需要YARN / 30
2.4.2 YARN的核心架构组成 / 30
2.4.3 应用管理器生命周期 / 31
2.4.4 作业提交流程与组件协作 / 31
2.4.5 YARN与其他资源管理框架对比 / 32
本章小结 / 33
课后习题 / 33
第3章 基于Spark的批处理 / 34
3.1 Spark简介与架构 / 34
3.1.1 Spark项目背景与发展历史 / 34
3.1.2 Spark的核心组件概览 / 35
3.1.3 Spark执行架构详解 / 35
3.1.4 Spark与YARN、Kubernetes的部署对比 / 37
3.2 Spark Core编程基础 / 38
3.2.1 RDD概念与特性 / 38
3.2.2 RDD的创建方式与依赖关系 / 39
3.2.3 常用转换操作详解 / 40
3.2.4 RDD数据分区与并行度控制 / 42
3.2.5 RDD编程案例:词频统计与日志分析 / 42
3.3 Spark SQL数据处理 / 43
3.3.1 Spark SQL的定位与优势 / 43
3.3.2 DataFrame与Dataset API / 43
3.3.3 Catalyst优化器与Tungsten引擎 / 44
3.3.4 SQL与DataFrame示例对照 / 45
3.3.5 Spark SQL与外部系统集成 / 45
3.4 Spark作业调度与性能优化 / 46
3.4.1 Spark作业DAG构建与Stage划分机制 / 46
3.4.2 Shuffle操作与性能瓶颈 / 46
3.4.3 广播变量与缓存机制 / 47
3.4.4 参数调优与资源配置建议 / 47
3.4.5 Spark UI作业监控与诊断技巧 / 47
3.5 Dataset类型系统与函数式编程支持 / 47
3.5.1 Dataset与JavaBean的映射关系 / 48
3.5.2 Encoder与类型推断机制 / 48
3.5.3 Dataset常用函数式操作 / 48
3.5.4 Dataset的编译期安全性与优化特征 / 49
3.6 Spark作业调优实战案例 / 49
3.6.1 多阶段作业拆分与重构 / 49
3.6.2 参数调优对比实验 / 49
3.6.3 数据倾斜定位与优化案例 / 50
3.6.4 Spark UI与指标监控应用 / 50
本章小结 / 51
课后习题 / 51
第4章 基于Hive的数据分析 / 53
4.1 HBase概述与架构 / 53
4.1.1 Hive简介 / 53
4.1.2 Hive架构组成 / 55
4.1.3 Hive的运行原理 / 56
4.2 Hive数据模型与类型系统 / 58
4.2.1 表的类型 / 58
4.2.2 数据类型 / 60
4.2.3 分区与分桶机制 / 61
4.3 HiveQL编程实践 / 62
4.3.1 DDL操作 / 63
4.3.2 DML操作 / 64
4.3.3 高级SQL操作 / 65
4.4 Hive UDF与扩展功能 / 65
4.4.1 内置函数 / 67
4.4.2 自定义函数 / 68
4.4.3 Hive脚本与CLI / 69
4.5 Hive的执行引擎与性能优化 / 69
4.5.1 MapReduce、Tez与Spark引擎对比 / 70
4.5.2 查询优化机制 / 71
4.5.3 文件格式与压缩机制 / 73
4.6 Hive与数据仓库实践 / 74
4.6.1 数据仓库分层模型 / 74
4.6.2 Hive在数据仓库建设中的角色 / 74
4.6.3 与其他组件集成 / 75
4.7 Hive常见问题与调试技巧 / 76
4.7.1 常见错误与排查思路 / 76
4.7.2 日志分析技巧 / 77
4.7.3 优化SQL的流程方法 / 78
4.8 实践案例:用户行为数据分析 / 79
4.8.1 场景设定 / 79
4.8.2 数据建模 / 79
4.8.3 SQL实现示例 / 80
4.8.4 可视化与实验拓展建议 / 80
本章小结 / 81
课后习题 / 81
第5章 HBase基础与应用 / 83
5.1 HBase概述与架构 / 83
5.1.1 HBase简介 / 84
5.1.2 HBase架构组件 / 85
5.1.3 HBase与Hadoop的集成 / 85
5.2 HBase数据模型










