前言 在信息技术高速发展的今天,大数据的发展尤为显著,并影响着社会生产和人类生活的方方面面。随着信息数据量的急剧增长,大数据作为一门新兴的学科出现在人们的眼前。大数据又称巨量数据,是指涉及的资料量规模巨大到无法利用目前的主流软件工具在合理时间内整理成为有用资讯的数据。 对一个国家而言,能否紧紧抓住大数据的发展机遇,形成大数据体系,参与新一轮的全球竞争,将影响未来的发展方向,甚至若干年内世界范围内的科技力量主导。在大数据竞争的博弈中,大数据专业人才的培养更是新一轮科学技术较量的基础和重点,各大高校和研究机构承担着大数据人才培养的重任,要为国家的发展输入源源不断的动力。为此,大数据课程的开设和大数据知识的学习也就显得尤为重要,受到了各大高校和科研机构的高度重视。 ETL技术作为大数据背景下不可或缺的一环贯穿着数据的始终,是数据技术人员必备的技能,也逐渐成为大数据专业的一门重要的专业基础课程。 本书以帮助读者掌握大数据技术为目标,详细介绍大数据的基本情形和未来发展方向,ETL技术贯穿全书,使读者在学习ETL技术的过程中感受大数据的魅力。 本书分为6章,采用理论知识与项目教学的方式组织内容,每个项目都来自典型案例,具有说服力,各章节由理论介绍入手,结合实际项目练习扩展知识面,每章最后提供自测题。 第1章为绪论,由大数据切入,介绍大数据的基本概况,进而引入ETL,且对这3个过程做了整体说明,接着引入本书的第一个入门案例,利用ETL技术对论文中的年份进行处理。 第2章引入ETL的第一个过程(数据抽取),详细介绍数据抽取的方式,紧接着对各种形式下的数据源抽取进行分类介绍,最后在Windows和Linux环境下搭建MySQL,且对此进行数据抽取操作。 第3章为数据转换,介绍数据转换的基本知识点,并对数据转换工具进行详细说明,最后将Kettle安装及其部署作为本章的一个案例,并利用Kettle工具对某一文件的错误行进行统计并生成日志。 第4章为数据加载,介绍数据加载的基本理论知识,然后搭建数据仓库,最后对几种环境下的数据进行加载分析。 第5章为ETL在大数据下的实现,讲解ETL在Spark、Hive、Sqoop这3种环境下的实现,并搭建Hadoop伪分布式集群,最后利用Sqoop实现ETL过程。 第6章为案例分析,讲解ETL在高校大数据建设、反洗钱系统、商业智能(BI)和电信领域内的应用及其实现。 本书的读者对象为想学习和了解大数据的科研工作者、高校师生以及对大数据、ETL技术有极大兴趣的人士。通过本书的学习,初学者可以达到中等水平,能对大数据和ETL技术有很好的了解和认知,熟练掌握MySQL数据库、虚拟机命令、Hadoop平台、数据仓库技术等。已在大数据领域造诣极深的学者也可以参考本书,对科研、学习也有一定的帮助。 本书的参考学时为32学时,建议采用理论实践一体化的教学模式,各章的参考学时详见如下学时分配表。学时分配表项目及章节课 程 内 容学时第1章从大数据到ETL2案例1处理论文的年份1第2章数据抽取2案例2MySQL环境搭建及数据抽取1第3章数据转换2案例3Kettle的分类安装及案例分析2第4章数据加载4案例4数据仓库的搭建2第5章大数据ETL实现4案例5Hadoop伪分布式集群和Sqoop案例4第6章案例分析4案例6校园大数据建设4本书由冯广主编,龚旭辉编写第1章,周瀚章编写第2章,李嘉编写第3章,冯广编写第4章,曾虎编写第5章,徐启东编写第6章,孔立斌、石鸣鸣负责修改全书,最后由冯广统稿。 由于编者水平和经验有限,书中难免有欠妥和错误之处,恳请读者批评指正。 编者2022年3月