大数据计算系统原理、技术与应用
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

大数据计算需要由系统来完成,完成数据科学与大数据技术相关任务的核心工作就是选择、配置大数据计算系统并进行调优,以及基于大数据计算系统进行程序设计,完成这些工作的前提是深入了解和熟练使用大数据计算系统。本书面向这一需求,为读者介绍大数据计算系统的基本知识和使用方法。

由于大数据及其应用的多样性,出现了大量的大数据计算系统,本书选择常用的大数据计算系统加以介绍,包括用于批处理的Hadoop和Spark、用于流处理的Storm和用于图数据处理的Spark GraphX。针对每一种系统,书中都介绍了其配置、程序设计方法以及工作原理。由于保证大数据计算系统的高性能需要对其进行监控、运维和调优,因此本书还以上述系统为例介绍了相关的监控、运维和调优方法。

考虑到读者的不同需求,本书兼顾广度和深度、应用和原理、研发和运维,对于各类大数据计算系统都进行了详细介绍,具有较强的实用性。本书适合作为本科生和研究生“大数据计算系统”“大数据系统开发”以及相关课程的教材,也可以作为“分布式计算”“计算机系统”等课程的补充教材或课外读物。本书还适合作为大数据技术培训的参考书和大数据领域从业人员的技术参考书。

本书采取模块化编写方式,分为4个部分。第一部分包括第1章,主要对大数据计算系统进行概述;第二部分包括第2~6章,介绍各种大数据计算系统的配置与编程方法;第三部分包括第7~11章,重点介绍大数据计算系统的原理;第四部分包括第12~14章,讲授大数据计算系统的监控、运维和调优方法。

高校可根据教学目标选择不同的内容进行讲授。偏重原理的高校可以着重讲授第一部分和第三部分中的概念和原理内容,将第二部分和第四部分作为原理的应用进行介绍;偏重大数据计算系统研发的高校可以着重讲授第一部分和第二部分,将第三部分和第四部分作为深入学习的参考资料;偏重大数据计算系统运维和调优的高校可以着重讲授第一部分和第四部分,将第二部分和第三部分作为运维的背景知识进行介绍。

需要注意的是,大数据计算系统的原理、使用和运维、调优是密不可分的。只有深入了解原理,才能基于大数据计算系统进行高效开发,并对系统进行运维和调优。特别是当前的大数据计算系统日益复杂,高效的系统开发和维护尤其需要深入理解原理;而只有进行有效的运维和调优,才能保证大数据计算系统持续高效地运行。

在使用方法上,本书可以作为一本面向大数据计算系统应用开发的教材或参考书,供高校师生和专业技术人员完整地学习。由于各部分相对独立,主题明确,不同需求的读者可以单独学习相关主题。书中对于各类大数据计算系统都提供了比较详细的介绍和应用案例,读者可以根据自己的情况选择学习。

虽然本书面向初学者,但建议读者有一些程序设计、计算机系统、计算机网络和数据库管理系统方面的先修知识。由于大数据计算系统是一种面向数据密集型计算的分布式系统,因此在学习本书第三部分的时候,建议和“分布式系统”相关教材相互参考。

当前不仅数据在增长,以数据为中心的应用也在不断增长。大数据计算系统作为大数据计算的核心,也在不断发展和演化之中,为了保证本书的生命力,作者选取了经典系统进行介绍,同时兼顾原理和应用。但是,限于作者的水平,本书在内容安排、表述等方面难免存在不当之处,敬请读者在阅读本书的过程中,提出宝贵的意见和建议。读者的意见和建议请发至邮箱wangzh@hit.edu.cn。本书相关的信息也会在微信公众号“大数据与数据科学家”(big_data_scientist)发布。

感谢哈尔滨工业大学的李建中教授、高宏教授和海量数据计算研究中心的诸位同事对本书内容的指导与建议,以及在专业上对作者的帮助。

在本书的撰写过程中,哈尔滨工业大学的陈翔、张于舒晴、刘畅、王煜彤、张梦等同学在资料搜集、整理、文本校对、制图等方面提供了帮助和支持,在此表示感谢。

非常感谢我的爱人黎玲利副教授对我的支持,并在大数据计算领域和我不断探讨。感谢我的母亲和岳母帮忙料理家务,照顾我的宝宝“壮壮”,使我有时间完成本书的写作。

最后,作者关于大数据计算方面的研究和本书的写作得到了国家自然科学基金项目(编号:U62232005)、教育部产学研协作育人项目(编号:201801130005)和哈尔滨工业大学研究生教育教学改革研究项目的资助,在此表示感谢。

王宏志

2023年5月于哈尔滨