前言
大数据技术让我们以前所未有的方式对海量数据进行分析,从中获得有巨大价值的产品和服务,最终形成变革之力。如何从零基础学习大数据平台Hadoop的应用开发技术,并运用相关技术解决一些实际的业务需求,正是本书的编写目的。全书共10章,各章主要内容如下。
第1章是对Hadoop的总体概述,包括大数据的基本概念、Hadoop生态圈、Hadoop与大数据的关系,以及Hadoop安装部署的详细步骤。
第2章是对HDFS的介绍,主要包括HDFS的体系结构、Shell操作以及使用Java API访问HDFS系统。
第3章是对MapReduce分布式计算框架的讲解,包括MapReduce的编程模型、编写和运行MapReduce程序,同时还配以多个经典的MapReduce应用案例。
第4章是对Hadoop新的资源调度框架YARN以及Hadoop新特性的讲解,并深度分析了如何实现Hadoop高可用集群及高可用的实现原理。
第5章是对ZooKeeper分布式高可靠协调服务的讲解,主要介绍ZooKeeper的架构设计以及数据模型,解析如何掌握ZooKeeper单机环境的搭建,并能利用ZooKeeper实现分布式系统服务器上下线的动态感知。
第6章是对HBase数据库的基础讲解,介绍HBase的体系架构及数据模型,分析如何实现HBase的伪分布式环境搭建。
第7章是对HBase操作的实践讲解,详细介绍HBase的DDL、DML的Shell操作以及如何用Java API实现对《王者荣耀》游戏玩家信息表的管理。
第8章是对HBase的高级知识扩展,深度解析HBase表空间管理和权限管理、HRegion的切分原理、HBase中的Compaction过程,提升读者对HBase的认知。
第9章是对Oozie调度框架的讲解,介绍Oozie的架构及执行流程,引导读者搭建Oozie环境,并在Oozie上进行作业的调度。
第10章的综合项目实训利用前面各章所学的Hadoop生态圈中的HDFS、YARN、ZooKeeper、HBase等知识,自主开发《王者荣耀》游戏英雄排行榜功能,通过理论与实践的结合来加强读者对知识的掌握和运用。
读者学习大数据技术,就要多动手练习,从而深入理解每个知识点,提高编程熟练度,培养分析问题和解决问题的能力,不断积累开发经验。同时,学习中读者还要通过交流来消除学习疑惑,分享学习经验,取长补短,共同进步。
本书提供了便捷的学习体验,读者可以通过扫描二维码下载各章提供的资源,包括素材、技能实训源码及本章作业参考答案等。
本书由课工场大数据开发教研团队编写,参与编写的还有刘雯、王文兵、倪天伟、郭迎慧、李贤志等院校老师。尽管编者在写作过程中力求准确、完善,但书中不足或疏漏之处仍在所难免,殷切希望广大读者批评指正!