大数据技术精品系列教材

大数据存储

以任务为导向,介绍大数据存储、分布式数据库、Hive、HBase等大数据存储相关知识。
分享 推荐 3 收藏 66 阅读 7.7K
谭旭 , 李程文 (主编) 张良均 , 刘志勇 , 刘淼 (副主编) 978-7-115-59414-3

关于本书的内容有任何问题,请联系 初美呈

1. 泰迪大数据技术精品系列教材;
2. 项目式教材,每个项目含多个实战案例,使读者具备实战能力;
3. 配套PPT、教案、源代码等资源,方便读者系统学习。

内容摘要

本书使用大数据存储技术常用工具与真实案例相结合的方式,以项目任务式为导向,较为全面地介绍了大数据存储工具的相关知识。全书共7个项目,内容包括了解大数据、结构化数据仓库——Hive、列存储数据库——HBase、文档存储数据库——MongoDB、文档存储数据库——ElasticSearch、数据传输工具——Sqoop,以及广电用户数据存储与分析。其中除项目1和项目7之外都包含了实训与课后习题,通过练习和操作实践,帮助读者巩固所学的内容。另外,每个项目都包含了拓展阅读,引导读者树立正确的世界观、价值观、人生观,并养成敬业乐群、精益求精、追求突破的工匠精神。
本书可以作为高校大数据技术相关专业的教材,也可作为大数据技术爱好者的自学用书。希望读者通过学习本书内容,提高自主学习意识,具备良好的问题分析素养和独立思考能力,能够结合具体的情境和需求选择适当的存储工具并解决问题。

目录

目录

项目1 了解大数据 1
教学目标 1
项目描述 1
项目实施 2
任务1.1 大数据简介 2
1.1.1 大数据的概念 2
1.1.2 大数据的特征 2
1.1.3 大数据的应用领域 6
1.1.4 大数据技术体系 7
任务1.2 大数据存储技术 10
1.2.1 了解数据存储 10
1.2.2 了解分布式数据库 13
项目总结 15
课后习题 16
拓展阅读 16

项目2 结构化数据仓库——Hive 17
教学目标 17
项目描述 17
项目实施 19
任务2.1 Hive的架构原理简介 19
2.1.1 认识Hive 19
2.1.2 了解Hive的架构 20
任务2.2 安装与配置Hive 21
2.2.1 搭建Hadoop集群 21
2.2.2 配置MySQL数据库 22
2.2.3 配置Hive数据仓库 23
任务2.3 创建航空客户信息表 26
2.3.1 掌握Hive基础数据类型 26
2.3.2 创建表 27
2.3.3 删除表与表数据 29
2.3.4 修改表结构 29
2.3.5 任务实现 30
任务2.4 导入航空客户数据到航空客户信息表 31
2.4.1 导入数据 31
2.4.2 导出数据 34
2.4.3 任务实现 36
任务2.5 查询航空客户信息表空值记录数 36
2.5.1 认识SELECT语句结构 36
2.5.2 了解运算符的使用 37
2.5.3 使用WHERE语句进行条件查询 38
2.5.4 任务实现 38
任务2.6 查询航空客户信息表字段数据的最大值和最小值 39
2.6.1 认识HiveQL内置函数 39
2.6.2 任务实现 42
任务2.7 统计会员数最多的会员级别 43
2.7.1 认识HiveQL子查询 43
2.7.2 任务实现 44
任务2.8 编写UDF统计客户入会时长 44
2.8.1 编写Hive中的UDF 44
2.8.2 任务实现 46
任务2.9 构建航空客户价值分析的特征数据 47
2.9.1 过滤无效、异常数据 47
2.9.2 选取有效字段 48
2.9.3 构建模型指标 49
项目总结 50
实训 50
实训1 统计学生成绩的总分、平均分 50
实训2 合并文件数据并进行条件查询 51
课后习题 52
拓展阅读 54
项目3 列存储数据库——HBase 55
教学目标 55
项目描述 55
项目实施 57

任务3.1 HBase简介 57
3.1.1 了解HBase 57
3.1.2 掌握HBase核心功能模块 59
3.1.3 了解HBase的数据模型 61
任务3.2 安装HBase集群 61
3.2.1 安装前的准备工作 62
3.2.2 安装与配置Zookeeper 62
3.2.3 安装与配置HBase 64
任务3.3 设计与新建钞票交易数据表 66
3.3.1 设计表结构的原则 66
3.3.2 创建与删除表 67
3.3.3 任务实现 69
任务3.4 新增与删除钞票交易数据表数据 71
3.4.1 插入数据 71
3.4.2 查询数据 71
3.4.3 删除数据 73
3.4.4 扫描全表 73
3.4.5 任务实现 74
任务3.5 查询指定时间版本的钞票数据 75
3.5.1 按时间版本查询数据 75
3.5.2 任务实现 76
任务3.6 使用Java API创建钞票交易数据表 77
3.6.1 搭建HBase开发环境 77
3.6.2 创建表与删除表的方法 82
3.6.3 任务实现 84
任务3.7 通过Java API插入数据到钞票交易数据表并查询 85
3.7.1 调用表对象的put()方法插入数据 85
3.7.2 调用表对象的get()方法进行查询 86
3.7.3 调用表对象的scan()方法进行全表查询 88
3.7.4 任务实现 90
任务3.8 通过MapReduce导入数据到钞票交易数据表 93
3.8.1 编写MapReduce实现数据交互 93
3.8.2 任务实现 95
项目总结 98
实训 98
实训1 查询学生成绩信息 98
实训2 用户访问网站日志分析 99
课后习题 100
拓展阅读 101

项目4 文档存储数据库——MongoDB 102
教学目标 102
项目描述 102
项目实施 104
任务4.1 MongoDB简介 104
4.1.1 了解MongoDB 104
4.1.2 了解MongoDB数据模型 105
任务4.2 安装分布式MongoDB 106
4.2.1 安装与配置MongoDB 107
4.2.2 访问MongoDB HTTP端口 109
任务4.3 创建存储用户日志数据的数据库 109
4.3.1 创建与删除数据库 109
4.3.2 任务实现 112
任务4.4 存储用户日志数据到MongoDB 112
4.4.1 插入文档数据 112
4.4.2 删除文档数据 113
4.4.3 更新文档数据 114
4.4.4 任务实现 116
任务4.5 查询MongoDB中用户访问HTML页面的记录数 116
4.5.1 查询文档数据 116
4.5.2 索引 117
4.5.3 聚合 118
4.5.4 任务实现 119
任务4.6 使用MongoDB Java API创建电子商务日志数据
存储系统 120
4.6.1 搭建MongoDB的开发环境 120
4.6.2 创建电子商务日志数据存储数据库 121
4.6.3 任务实现 126
项目总结 129
实训 129
实训1 学生信息的存储和查询 129
实训2 电影评分查询 130
课后习题 130
拓展阅读 131

项目5 文档存储数据库——ElasticSearch 132
教学目标 132
项目描述 132
项目实施 133
任务5.1 ElasticSearch简介 133
5.1.1 了解ElasticSearch 134
5.1.2 安装分布式ElasticSearch 137
任务5.2 使用Head扩展插件存储用户和电影信息数据 142
5.2.1 配置Head插件 142
5.2.2 创建与修改索引 145
5.2.3 增加、删除与修改数据 147
5.2.4 查询数据 149
5.2.5 任务实现 152
任务5.3 通过Java存储用户对电影的评分数据 154
5.3.1 搭建ElasticSearch开发环境 154
5.3.2 创建与修改索引 157
5.3.3 增加、删除与修改数据 159
5.3.4 批量操作 161
5.3.5 任务实现 162
任务5.4 通过Java查询插入的数据记录 164
5.4.1 调用Get API查询 164
5.4.2 调用Search API查询 166
5.4.3 输出设置 171
5.4.4 任务实现 172
任务5.5 查询评价电影超过50次的用户 174
5.5.1 度量聚合 174
5.5.2 分组聚合 177
5.5.3 任务实现 179
项目总结 181
实训 182
实训1 查询手机信息 182
实训2 查询学生成绩信息 182
课后习题 183
拓展阅读 184

项目6 数据传输工具——Sqoop 185
教学目标 185
项目描述 185
项目实施 186
任务6.1 Sqoop简介 186
6.1.1 了解Sqoop 187
6.1.2 安装与配置Sqoop 187
6.1.3 了解Sqoop基本传输命令 188
任务6.2 查询MySQL用户日志数据表的记录数 190
6.2.1 掌握Sqoop eval的基本操作 190
6.2.2 任务实现 191
任务6.3 将MySQL中的用户日志数据增量导入Hive 192
6.3.1 掌握Sqoop import的基本操作 192
6.3.2 掌握Sqoop job的基本操作 193
6.3.3 使用Sqoop将MySQL中的数据导入Hive 195
6.3.4 任务实现 196
任务6.4 导出Hive中的筛选结果至MySQL 196
6.4.1 掌握Sqoop export基本操作 197
6.4.2 使用Sqoop从Hive传输数据到MySQL 198
6.4.3 任务实现 198
项目总结 199
实训 199
实训 传输用户登录数据 200
课后习题 200
拓展阅读 201

项目7 广电用户数据存储与分析 202
教学目标 202
项目描述 203
项目实施 203
任务7.1 分析需求与架构 203
7.1.1 业务需求分析 204
7.1.2 选择存储与分析技术 205
7.1.3 设计存储与分析架构 205
任务7.2 将CSV格式数据导入ElasticSearch 206
7.2.1 了解数据 206
7.2.2 将数据导入ElasticSearch 208
任务7.3 转移ElasticSearch数据至Hive 212
7.3.1 在Hive中创建数据管理表 212
7.3.2 查看Hive中的表数据 215
任务7.4 统计各表宣传数据和政企用户记录数 216
7.4.1 统计各表宣传数据记录数 216
7.4.2 统计各表政企用户记录数 216
任务7.5 统计无效收视数据 217
7.5.1 统计用户收视时长分布 217
7.5.2 统计机顶盒待机记录数 217
任务7.6 处理各表无效数据 217
7.6.1 处理无效用户信息 218
7.6.2 处理无效收视数据 218
7.6.3 处理无效账单数据 218
7.6.4 处理无效订单数据 219
任务7.7 计算用户电视消费水平和宽带消费水平 219
7.7.1 计算电视消费水平和宽带消费水平 219
7.7.2 将数据保存至其他数据库 221
项目总结 222
拓展阅读 222

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

谭旭,男,教授,深圳信息职业技术学院素质赋能中心主任。2009年博士毕业于国防科技大学管理科学与工程专业,2012年获聘湘潭大学硕士研究生导师,2015年破格晋升教授职称。获评“鹏城学者”长期特聘教授、广东省高校“千百十工程”省级培养对象、广东省首批高职教育专业领军人才、南粤优秀教师、深圳市高层次领军人才、校级教学名师。现为广东省视频图像大数据公共安全应用科研团队负责人、广东省信息管理技术教学团队负责人、广东省高职教育计算机类专业教指委秘书长、中国仿真学会智能仿真优化与调度专委会委员、深圳市教育工委党代表、深圳市青年科技人才协会副会长。多年来一直致力于智能决策分析、网络舆情分析等领域的研究,从事信息技术基础及大数据专业的理论与实践教学。主持了国家自然科学基金、教育部人文社科项目、广东省自然科学基金、广东省高层次人才项目等教科研课题21项,近年在国内外期刊上发表学术论文80余篇(其中EI检索25篇,SCI检索15篇),主编专著1部、教材2部(含“十三五”职业教育国家规划教材1部),获中国仿真学会科学技术奖一等奖1项,广东省教学成果奖二等奖2项。 李程文,佛山职业技术学院电子信息学院大数据技术专业的专任教师,硕士学历,佛山市计算机学会学生专委会指导委员会委员,发表省级以上的论文4篇,目前已出版的图书作品3本;发表专利2项,软件著作权2项,外观设计1项;主持和参与的纵向科研有7个,其中省级2项,市级2项,横向科研课题2项,到账经费8万元;主持和参与教改课题10项,其中省级1项,市级1项。参加2020年“战疫课堂”课程思政典型案例征集大赛获国家二等奖,多年来指导学生参与各类技能大赛获奖13项,其中省二等奖3项,省三等8奖,市一等奖1项,市三等奖1项。

推荐用户

同系列书

  • Power BI数据分析与可视化(第2版)(微课版)

    陈翠松 张良均 潘强 曾确令 张尚佳

    本书以项目为导向,以任务为驱动,全面地介绍数据分析与可视化的流程,以及 Power BI 数据分析与可视化的应...

    ¥49.80
  • 大数据导论

    林涛 张良均 李微 葛苏慧 胡晓东

    本书以大数据处理技术涉及的主要流程为主线,深入浅出地介绍大数据相关的基础知识。本书条理清晰、重点突出,内容循序...

    ¥49.80
  • Spark大数据分析实务

    郑浩森 张荣 张良均 杨树例 陈国珍

    本书以Spark大数据分析的常用技术与真实项目相结合的方式,深入浅出地介绍Spark大数据分析的重要内容。全书...

    ¥59.80
  • PySpark大数据分析与应用

    戴刚 张良均 桂友武 李晓英 李晓丹

    本书以Python作为开发语言,系统介绍PySpark开发环境搭建流程及基于PySpark进行大数据分析的 相...

    ¥69.80
  • Hive大数据存储与处理

    何煌 张良均 孙一铭 胡健 陈翠松

    本书以广电大数据案例为主线,系统介绍数据仓库Hive存储和初步处理方法的相关知识。本书条理清楚、重点突出,内容...

    ¥59.80

相关图书

  • ECharts数据可视化

    本书是一本采用任务驱动式体例编写的ECharts数据可视化技术教材,以通俗易懂的语言和丰富实用的任务,帮助读者...

    ¥59.80
  • 区块链技术及应用(微课版)

    郝兴伟 梁志勇

    为了适应Web 3.0时代下区块链技术发展的新趋势,同时培养高素质的区块链技术人才,编者精选了区块链的相关内容...

    ¥69.80
  • Python编程基础(项目式微课版)

    王健

    本书根据高等院校应用技术型人才培养的目标编写,适合案例学习和模块化教学相结合的教学方式。本书以真实企业开发案例...

    ¥56.00
  • 人工智能云平台部署与开发(微课版)

    易海博

    本书涵盖云计算和人工智能两大领域的内容,着重讲解人工智能应用在云平台上的部署与开发。全书共7个项目,分别介绍云...

    ¥49.80
  • 云计算导论(微课版)

    荆于勤 石慧霞 吴锡微 龚秀波 姚骏屏

    本书是一本全面介绍云计算基本概念、常用技术与应用的项目化教材。本书分为3篇,分别是初识云计算、体验云计算和业务...

    ¥59.80
单击此处加入人邮社数据科学教师服务群(大数据&人工智能&区块链),共同探讨交流
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部