http://dblab.xmu.edu.cn/post/bigdatapractice2/#xiazaizhuanqu
本教程是林子雨编著《大数据技术原理与应用(第3版)》教材的配套实验指导书。《大数据技术原理与应用》侧重于大数据知识框架和理论介绍,而本教程侧重于介绍大数据软件的安装、使用和基础编程方法,并提供了大量实验和案例。由于大数据软件都是开源软件,安装过程一般比较复杂,也很耗费时间。为了尽量减少读者搭建大数据实验环境时的障碍,笔者在本教程中详细写出了各种大数据软件的详细安装过程,可以确保读者顺利完成大数据实验环境搭建。
本书以大数据分析全流程为主线,介绍了数据采集、数据存储与管理、数据处理与分析、数据可视化等环节典型软件的安装、使用和基础编程方法,内容涵盖了操作系统(Linux和Windows)、开发工具(Eclipse)以及大数据相关技术、软件(Kafaka、Hadoop、HDFS、MapReduce、HBase、Hive、Spark、MySQL、MongoDB、Redis、R、D3、ECharts)等。同时,提供了丰富的课程实验和综合案例以及大量免费的在线教学资源,可以较好地满足高等院校大数据教学实际需求。
《大数据基础编程、实验和案例教程(第2版)》前言
《大数据基础编程、实验和案例教程》第1版于2017年7月出版,在过去的两年多时间里,大数据技术又获得了新的发展,开源流计算框架Flink迅速崛起,在市场上和Spark展开了激烈的角逐。与此同时,Hadoop和Spark的版本也在不断更新升级,一些编程接口发生了变化。因此,为了适应大数据技术的新发展,继续保持本书的先进性和实用性,我们及时对第1版内容进行了补充和修订。
这里对第1版教材的修改做一些简要说明。在“第2章 Linux系统的安装和使用”部分,对VirtualBox软件进行了版本升级,并修改了在Linux系统中安装Eclipse的方法。在“第3章 Hadoop的安装和使用”部分,修改了Hadoop版本的介绍,修改了Java环境的安装方法,把Hadoop版本升级到了3.1.3,同时,删除了“使用Docker搭建Hadoop分布式集群”这部分内容,因为该内容在教学中很少被使用。在“第4章 HDFS操作方法和基础编程”部分,把Hadoop版本升级到了3.1.3,并根据最新版本的特点对HDFS相关内容作了修改,同时对HDFS编程实践的内容进行重新撰写。在“第5章 HBase的安装和基础编程”部分,把HBase版本升级到了2.2.2,版本升级以后,HBase的安装配置方法和相关的编程接口也发生了变化,因此,对编程接口和实例代码进行了大量修改。在“第6章 典型NoSQL数据库的安装和使用”部分,把Redis升级到了较新的5.0.5版本,并对由于版本升级而发生变化的内容做了修改。在“第7章 MapReduce基础编程”部分,把Hadoop版本升级到了3.1.3,并对由于版本升级而发生变化的相关内容做了修改。在“第8章 数据仓库Hive的安装和使用”,把Hive版本升级到了3.1.2,并对由于版本升级而发生变化的相关内容做了修改。在“第9章 Spark的安装和基础编程”部分,把Spark版本升级到了2.4.0,并对由于版本升级而发生变化的相关内容做了修改。新增“第10章 Flink的安装和基础编程”,以反映当前新兴的大数据处理技术,并介绍了Flink的安装和基础编程方法。在“第11章 典型可视化工具的使用方法”部分,删除了一些教学环节不太方便开展实践的内容,包括Easel.ly、Tableau和魔镜等,因为这些技术产品存在官网无法访问、需要用户注册才能使用等问题。在“第12章 数据采集工具的安装和使用”,删除了Flume的内容,因为,Flume的内容比较孤立,学习以后没有和其他章节的内容进行有效结合,同时删除了Sqoop的内容,因为Sqoop没有提供对最新版Hadoop和Hive等软件的支持。在“第13章 大数据课程综合实验案例”部分,把各个大数据软件的版本都进行了升级,并删除了和Sqoop相关的操作实践,因为Sqoop不支持新版的Hadoop和Hive,同时,增加了使用Java程序把Hive中的数据导入MySQL。在“第14章 实验”部分,把实验中相关软件升级到了较新的版本,并新增了3个实验,从而帮助读者更好实践Hive、Spark和Flink等大数据技术。
本书第1版是《大数据技术原理与应用(第2版)》的“姊妹书”,前者可以作为后者的课程配套实验手册。由于《大数据技术原理与应用(第2版)》已经在全国高校得到了广泛的使用,大量高校采用该教材开设了大数据课程,因此,这也带动了本书第1版在高校的大量使用。在使用过程中,一些高校老师积极反馈了很多宝贵的意见和建议,为我们团队进行本书第2版的创作提供了很好的方向指引。同时,笔者也在厦门大学开设了大数据课程,并把本书第1版积极应用在实践教学中,让教材在教学实践中经受检验。现在,《大数据技术原理与应用(第2版)》已经改版到了第3版,作为配套“姊妹书”,本书也及时从第1版升级到了第2版,也就是说,在今后的教学过程中,本书第2版是和《大数据技术原理与应用(第3版)》配套使用的。当然,通过过去全国高校老师的反馈信息,我们也了解到,不少高校会直接把本书作为单独的课程教材(而不是配套的实验手册)来使用,因此,本书第2版也是可以作为独立教材来使用的。
本书由林子雨执笔。在撰写过程中,厦门大学计算机科学系硕士研究生程璐、林哲、郑宛玉、陈杰祥、陈绍纬、周伟敬等做了大量辅助性工作,在此,向这些同学的辛勤工作表示衷心的感谢。
大数据技术处于快速发展变革之中,我们厦门大学数据库实验室团队会持续跟踪大数据技术发展趋势,努力保持本书内容的新颖性,并把一些较新的教学内容及时发布到本书官网。由于笔者能力有限,书中难免存在不足之处,望广大读者不吝赐教。
林子雨 厦门大学计算机科学系数据库实验室
2020年3月
第1章-大数据技术概述 第2章-Linux系统的安装和使用 第3章-Hadoop的安装和使用 第4章-HDFS操作方法和基础编程 第5章-HBase的安装和基础编程 第6章-典型NoSQL数据库的安装和使用 第7章-MapReduce基础编程 第8章-数据仓库Hive的安装和使用 第9章-Spark的安装和基础编程 第10章-Flink的安装和基础编程 第11章-典型的可视化工具的使用方法 第12章-数据采集工具的安装和使用 第13章-大数据课程综合实验案例