本书系统介绍大数据技术的原理与应用,主要内容包括基本概念、分布式计算编程基础、Hadoop系统、分布式文件系统HDFS、分布式数据库HBase、分布式计算框架MapReduce、数据仓库Hive、流计算Spark Streaming、数据可视化、大数据的电商精准营销案例、好友推荐案例等章节,涵盖了海量数据的高效存储、非结构化数据存储和随机访问、分布式并行编程、数据仓库、实时计算、数据可视化、电商精准营销、好友推荐等各个方面的内容。本书以简单易懂的语言、生动有趣的实例和图形展示知识点,将概念、原理与应用融会贯通,并对大数据工具软件进行了细致的梳理。
高永平,男,汉族,江西峡江,中共党员;硕士生导师、副教授;多年来一直从事计算机科学与技术专业的教学与科研工作。主要研究方向:数据库技术与应用、软件工程与知识工程。主讲了本课程和研究生的主要课程为:《java程序设计(双语)》、《数据结构与算法》、《Web程序设计》、《面向对象程序设计》、《软件工程》、《高级软件工程》、《数据库原理与应用》等。在国内外期刊公开发表各类科研和教研论文23篇,其中被EI检索论文8篇,核心期刊发表论文4篇。主持或作为主要参与人的科研和教研项目18项,其中国家自然2项,省级科研项目9项,省级教研7项;另外还有横向课题5项。获得省高校科技成果二等奖1项,省教学成果奖二等奖和三等奖各1项;校教学成果奖5项。
第1章 绪论 1
1.1 大数据的发展历程 1
1.2 大数据的概念 4
1.3 大数据的特征 5
1.4 大数据的应用 6
1.5 大数据分析方法 10
1.6 大数据面临的挑战 11
习题 12
第2章 分布式计算编程基础 13
2.1 分布式系统 13
2.2 分布式计算架构 15
2.3 分布式文件系统 16
2.4 CAP 定理 18
习题 21
第3章 大数据处理框架 Hadoop 22
3.1 Hadoop简介 22
3.2 Hadoop 生态系统 24
3.3 Hadoop 的安装与使用 31
习题 40
第4章 Hadoop 分布式文件系统 42
4.1 HDFS 简介 42
4.2 HDFS的设计原则 43
4.3 HDFS 的核心概念 44
4.4 HDFS 的体系结构 45
4.5 HDFS 的存储原理 47
4.6 HDFS 的数据读写流程 49
4.7 HDFS 的编程实现 53
习题 57
第5章 分布式数据库 HBase 59
5.1 HBase 简介 59
5.2 HBase 数据模型 60
5.3 HBase 的系统架构 64
5.4 HBase 表结构设计 67
5.5 HBase 的数据读写流程 69
5.6 HBase 编程实践 72
习题 76
第6章 分布式计算框架 MapReduce 77
6.1 MapReduce 简介 77
6.2 MapReduce 的计算模型 77
6.3 MapReduce 的工作原理 78
6.4 MapReduce 编程实践 81
习题 89
第7章 数据仓库 Hive 91
7.1 Hive 简介 91
7.2 Hive 的架构 93
7.3 Hive 的数据类型及应用 95
7.4 Hive 的数据模型 97
7.5 DDL 的应用 98
7.6 DML 的应用 101
7.7 JDBC 访问 103
习题 104
第8章 Spark Streaming 105
8.1 流计算概述 105
8.2 流计算的概念 106
8.3 Spark 概述 107
8.4 Spark Standalone 模式的架构 108
8.5 Spark Streaming简介 110
8.6 编写 Spark Streaming 程序的基本步骤 111
8.7 创建 StreamingContext 对象 111
8.8 Spark Streaming 数据源 112
8.9 Spark Streaming 程序示例 113
习题 116
第9章 数据可视化 117
9.1 可视化概述 117
9.2 可视化的作用 118
9.3 可视化工具 119
9.4 可视化典型案例 125
习题 126
第10章 基于大数据的电商精准营销 128
10.1 数据预处理概述 128
10.2 数据探索与可视化 132
第11章 好友推荐案例分析 140
11.1 任务需求 140
11.2 准备工作 140
11.3 创建 Maven 项目 143
11.4 FriendRecommend 程序的实现 148
11.5 运行程序与结果验证 157
参考文献 161